刚踏入职场的程序员(2年以内初级程序员)如何快速踏实地提升自己的能力 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 技术分享 >

刚踏入职场的程序员(2年以内初级程序员)如何快速踏实地提升自己的能力

发表时间:2020-10-19

发布人:葵宇科技

浏览次数:43

1、不能光有决心,一定得多用时间学习

我见过不少程序员一点点从初级升到资深开发,少得用1年半,多的用3年,成功完成升级的都有一个共同点:进步得靠学习,学习得靠时间堆砌。

我个人不算聪明,所以我对曾国藩的一句话体会很深:结硬寨,打呆仗。用在学习上,就是不投机取巧,学习时为自己,踏实地掌握基本功,然后一步一个脚印。这一定得靠时间积累。

来算比能用在学习方面的时间账:

1. 每天早上起来后,大概半个小时。

2. 每天上班时,不大可能总干活,与其上网划水,还不如搜索些技术资料,平均一天就算半个小时吧。

3. 晚上回家,哪怕再累,总可以抽出半个小时。

这样一天大概能用1个半小时,一周5天,至少能有7个小时,周末至少能有2个半小时,至少一周10个小时吧。

这不算多,以我亲身经历,每周10个小时学习,人而且还不累,如果再挤出点空闲时间,甚至一周能学15个小时。

如上算是鸡汤文吧,但这也是本文的前提。一般来说,工作3年一般能升级到高级开发,如果无法保证一周10小时学习量,那么升级的进程就会延后,甚至无法完成升级。

2、先在java 方面打好基础

这部分需要学习的内容:
  • Java基本数据类型、基本语法、关键字、表达式和分支循环
  • 面向对象,封装、多态和继承- 接口的使用方法和场景
  • Java常用的各类型集合的优缺点及使用场景
  • JavaI/O- Java的多线程- Java的反射机制和泛型
  • 一些常用的设计模式(如:单例、工厂等)

在初级阶段可以适当了解,但无法过多深入学习的内容:

1.面向对象思想,刚开始学时可以了解下语法,比如继承,重载的语法,尽量体会其中的含义,但真正做到理解得到高级开发的级别。
2.设计模式思想,这个也可以适当了解。
3.虚拟机方面的内容。

3、学习一些新的技术

Kotlin

Google 几年前就开始走 “Kotlin First” 的路线,目前很多官方的文档和 Demo 都是使用 Kotlin 语言作为默认,Kotlin 的重要性不言而喻。

Flutter

Flutter 的发展大家可以看一下 Gityuan 的这一篇Flutter 跨平台演进及架构开篇,目前字节跳动的多个 App 已经接入 Flutter 进行混合开发。个人对 2020 年 Flutter 不再持观望态度,读者可以根据自己的技术规划决定是否开始学习

Android Studio

Android Studio IDE Overview
Android Studio 作为 Android 默认的开发者工具,目前的版本更新已经解决了诸多之前的性能问题,虽然目前对硬件资源的要求仍然比较高,但是一旦你接受了这个设定,真香预警!

AS 主要需要熟悉下面几点:

1.AS 快捷键
2.AS 插件
3.AS Profile (内存、CPU、IO、NetWork)

4、不断地提升自己的优化能力

这部分是拉开你和其它初级开发的差距。

资深程序员和初级程序员写出来的代码会有不同,主要体现在如下三个方面。

  1. 资深程序员写出来的代码结构性比较强,这主要是资深程序员能在写代码的过程中,主动地引入面向对象思想和设计模式。不过面向对象思想和设计模式得靠项目积累,所以对初级程序员而言, 光学理论效果未必大,一定得在工作中多观察下继承,重载和接口复用等做法,因为面向对象和设计模式的表现形式主要包括这些。
  2. 得考虑性能优化,比如想下,如何让解决屏幕适配问题,如何让虚拟机内存性能更好,然后找这方面的资料。

在这个基础上,大家都可以技多不压身了,比如学些NDK,kotlin新技术选择的事情需要看下这书是偏重理论还是案例说明,最好是买些案例多点的书。

5、通过提升自己的软实力,让自己更专业

一般来说,初级程序员更像学生,而不像职场人士,所以对高级程序员的要求往往是能独当一面,而对初级程序员的要求是,能在项目经理的带领下完成本职工作。

所以,初级程序员一定得提升如下的软技能。

1. 要会积极主动沟通。 能否具备好的沟通技能,这个是能力问题,肯不肯和别人沟通,愿不愿意积极主动地展示自己的想法,这个是态度问题。我见过不少初级程序员在干好本身的活以后,就缩在一边,遇到测试和领导找过来时,也是敷衍,或者是不耐烦,这些人往往在公司中表现都不怎么好。
2. 得提升自己解决问题的能力,积累解决问题的经验。 虽然目前很多问题都能靠百度,但比较专业的异常解决手段,以及基于框架的性能调优等,一般都得靠积累,所以初级程序员在遇到问题时,哪怕靠自己能力无法解决,但至少得想,得通过搜索等手段去解决,最后别人解决时,也得学下解决方法,这样就能不断提升自己的能力。
3. 协调,甚至是扯皮的能力。 比如一个活,自己做不完,这个很正常,但有些初级程序员就宁可自己扛。这样哪怕是靠自己加班最终完成了,但对整个团队来说,有延迟进度的风险。遇到这类情况,就可以早说,早让项目经理协调。有些事甚至不该你或者你的组管,遇到这类情况,就可以推掉这类事,毕竟一个人的时间是有限的。
4. 要学会和别人沟通协调,一起完成一个任务

比如测试方面有个问题,而这个问题需要你和别人一起解决,这时,就要求你和测试沟通,了解问题细节以及重现方式,最终和别人一起解决这个问题。在这个流程中,技术问题倒是次要的,关键还在协调和沟通方面,初级开发可能会比较被动,坐等别人过来告诉自己该怎么做,但更应该主动和多方面沟通,积极推动事情往前发展。

这方面可能就没法靠看书,只能多靠观察别人怎么做了。

尾声

改变人生,没有什么捷径可言,这条路需要自己亲自去走一走,只有深入思考,不断反思总结,保持学习的热情,一步一步构建自己完整的知识体系,才是最终的制胜之道,也是程序员应该承担的使命。

以上进阶Android高级工程师系统学习资料可以免费分享给大家,需要完整版的朋友,点这里可以看到全部内容。

如果需要PDF版本可以在群文件夹里,自行领取!

  • 或者在群文件夹中里,自行下载直达领取链接:【https://links.jianshu.com/go?to=https%3A%2F%2Fjq.qq.com%2F%3F_wv%3D1027%26k%3DBRZhpPkt】

进阶学习视频

附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题 (含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

相关案例查看更多