软件程序员成长的五个阶段!

很多职场的人时常会对自己的职业发展感到困惑和迷茫,从事软件开发的程序员也不例外。今天我们就来聊一聊一个软件程序员要经历的几个技术发展阶段,同学们也来考量一下自己当前处于哪个阶段,下一步要向哪个阶段进发。

在我看来,程序员从进入软件行业刚接触编程开始,大概可分为五个阶段。

1、新手工程师

每一位程序员在正式踏上软件开发道路之前,都需要经过这个没有编程和项目经验的“第一阶段”。

刚开始,很多人可能对于程序和软件的理解仅限于书本上的信息以及日常使用软件的操作上。最多是学习了一些诸如C、C++、java等开发语言,写一写小的软件工具。

这个阶段,他们要从最基本的学起,了解开发语言,熟悉IDE开发环境,开始学习如何编程,学习公司的编程规范,可能会安排编写一些与项目相关的小的demo程序。然后学习项目的代码,熟悉软件的业务,修改一些小的bug。可能也会安排看一些技术书籍,去系统的学习一下岗位所需要的技术和技能。一般对于刚毕业的应届生,大概需要半年左右的时间,才能逐渐熟悉项目的代码和业务,公司也会给予足够的适应和学习的时间。

平时要多写多练,万事开头难,要坚持下去!等熬过最开始的那些时刻,后面就会逐渐好起来的。

2、软件工程师

进入这个阶段,作为拥有1年左右编程经验的工程师,可以正式的称呼自己为“编码菜鸟”了。

这时的他们对编程概念已经有了初步的理解和认知,知道了变量、函数、开发框架等的含义。同时也可以熟练编写代码来参照已有的代码进行功能实现了,但这个时候由于对技术理解的不透彻,对业务了解的不够深入,编写代码时考虑问题和场景的不全面,代码的质量和稳定性还是不太好的。

这个阶段还是要多参与项目,多写代码,多研究代码,积累技术和业务经验,为晋级下个阶段打好坚实的基础。

3、研发工程师

进入这个阶段,大概能有3年左右的开发经验,熟练掌握相关的开发技术,熟练使用多种排查问题的软件工具,对软件的业务和内涵有了进一步的认知和理解。

随着技术和经验的提升,开始逐渐能独挡一面,独立负责维护产品的重要业务和模块,调研新的技术和项目中需要用到的开源代码和技术,成为团队中的攻坚小能手,变成菜鸟所仰望的小牛了。

与此同时,这一阶段也是所有阶段里面最危险、最容易迷失的,原因在于容易沉迷于舒适区和盲目自信而停滞不前,最终因精力和斗志的下降而被新冒出来的能手替代;其迷失在于仅善于解决项目中曾负责或以前接触过的相关模块的问题,对于系统整体架构缺乏理解和认知,不具备构建一个全新系统的能力。

这个阶段的工程师,不要沉迷于代码的表面,不要只局限于自己负责的模块,也不要局限于API或源码库的收集,要从更广的角度去看待问题,最好的修炼方式是不断地思考与锤炼自身对最佳实践方式的理解感悟,为进入下一阶段做好心理和技术上的准备。

4、软件架构师

进入这个阶段,大概能有6-8年左右的编程经验了,开始进入开发者的顶级阶段。进入该阶段的,基本可以称为真正意义上的专家了。对于某一领域的系统研究已经吃的很透,成为软件架构的设计师了。

软件架构师实际上是软件项目的总体设计师,是软件组织新产品的开发与集成、新技术体系的构建者。制定项目的总体架构,指导整个开发团队完成这个计划。主导系统全局分析设计与实施,负责软件架构和关键技术预研与决策。在遇到关键难题时,应能迅速抓住问题要害,并做出合理的、关键决定的能力,具备战略性和前瞻性思维能力,善于把握全局,能够在更高抽象级别上进行思考。

进入此阶段的工程师,已经脱离了对招式的执念,步入了对于设计与编程之道的艺术修行的道路。

5、软件咨询师

软件咨询师绝对是一个特殊的存在,如果说架构师是追求于设计之道与艺术之道的苦行僧,那咨询师就是这条道路上的布道家。

他们一般有着广阔的见识与丰富的实战经验,也许他并未开发过多么经典的架构,但经过短暂的观察即可指出对于当前架构的优化意见;也许他并不能写出多么高深复杂的源码,但通常可以用最简单的办法解决技术上的难题;也许它并不了解你所遇问题的业务背景与专业技术,但可以通过跨领域知识启迪你解决问题。

上述五个阶段,是软件工程师晋升的技术通道,一步一个脚印走过来,付出了很多艰辛和不易,也收获了技术上的无限荣耀!

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年4月3日
下一篇 2020年4月3日

相关推荐