软件工程师的职业发展

15年学校毕业,从事嵌入式软件开发工作。很多人都说,做软件做不长久的,到了三十多岁就要转行了。
我一直在想,程序员难道不是一个长久的职业?
我也知道国外很对计算机工程师在中年之后仍然工作在第一线,而且硕果累累。但是,在国内大多认为是个软件开发吃的就是青春饭,到了中年还在写代码,好像不是多么光彩的事情。
所以,我也一直在考虑七年之后自己的职业,想着下辈子里,我不再作为软件工程师,而作为一个设计师。

我再规划下一个七年,因为默认了软件工程师不能长久发展的前提,想要转行。我的心里还有一点不甘心,软件工程师就真的是青春饭吗?难道我必须要放弃工程师的工作吗?

工程师的进阶之路

事实上,不是这样的。工程师不是青春饭,一直以来,我对工程师这一职业的看法是偏颇的。
工程师是有等级的。吴军老师在《硅谷来信》中,提到他根据物理学家朗道对物理学家的分类,提出了工程师的五级分类。

  • 第五级的工程师,是不需要指导,可以独立完成任务。达不到这个要求,就不是合格的工程师。举个例子,现在需要开发一个石材切割的cad控制系统,首先你能项目部的人员问清楚需要的功能。搞清楚功能之后,你可以设计软件的组成部分,并确定每个部分的关键点是否已经攻克。如果有困难,你知道在哪寻求帮助。最终,完成软件的开发。有上进心的工程师,在工作一段时间后,都可以达到五级工程师的水平。
  • 接下来是四级工程师。四级工程师,能力圈变得更大。在这一级,要求工程师可以将目标分解成任务,再将任务分给其他人。换句话说,四级工程师需要带领一个团队,指导团队成员的工作,完成影响力比较大的工作。在这一级,工程师需要具备管理能力。
  • 第三级工程师,当工程师带领团队做出在市场上可盈利的产品,那么这个工程师就达到了三级工程师的水平。除了是一个团队领导者之外,还需要具备产品思维。这一级的工程师不仅仅是工程师之外,还是优秀的产品经理,理解用户和市场。这一级,是普通工程师通过努力可以达到的境界。
  • 二级工程师,是要做出其他人做出来的产品。比如,你做出的产品,在全世界范围内,没有比你做的更好的了。现在全中国都没几个二级工程师。
  • 一级工程师,就是开创了出一个产业,这样的人全世界都没有几个。

工程师每提升一级,能力圈不断往外扩,影响力和收入也不断提高。达到第三级工程师的水平,就算是事业有成了。

如何提升等级?

  • 学好离散数学,修炼内功。如果想要成为三级工程师,离散数学是绕不过的坎。吴军老师的建议是数理逻辑、图论比较重要,集合论、组合论相对次要,代数结构不用学。
  • 将学到的知识用到实际的工程中去,多揣摩如何把事情做的漂亮。
  • 到有足够多的高水平的工程师的环境中去工作。你不能指望只有你一个三级工程师,而周围都是五级工程师。当你是五级的水平,那些多四级工程师的团队愿意接收你。

结论

软件工程师不是短命的职业,每提升一个等级,影响力和收入都上升一个台阶。
不管以后我的头衔是什么,我首先是一名工程师。

你可能感兴趣的:(软件工程师的职业发展)