有没有适用于咱们软件工程师的等级评价体系呢?
世界上有一套针对专业人士的评价体系,它的发明人是苏联著名物理学家 列夫·达维多维奇·朗道。朗道(1908-1968),号称是“世界上最后一个全能的物理学家”,他不仅获得过诺贝尔物理学奖,而且还提出一种按照水平和贡献划分物理学家的方法,被称为物理学家的等级,也就是前面提到的专业人士的评价体系。
其实,咱们 程序员/软件工程师 也是属于专业人士范畴的,那有没有适用于咱们的等级评价体系呢?
有,吴军博士在得到《硅谷来信》中就提出了他眼中的五级工程师的要求,虽然不是什么标准化的东西,但是我觉得非常有参考价值,我读完之后简直是醍醐灌顶,不仅可以对照自己所处的位置,更重要的是能指引我们对自己职业发展方向的思考。
其实我在之前写过一篇文章「如何从程序员到架构师」,在里面我也提到了对程序员的分级,那是根据我自己的认知,以及我这些年工作经验的角度出发,我眼中看到的业内互联网公司技术团队里对程序员/软件工程师这一职业的等级划分。即:初级工程师、中级工程师、高级工程师、资深工程师/架构师、技术专家/首席技术官。并且我也浅显的聊了聊对这每一个级别工程师所应具备素质要求的看法。
但是对比 吴军 的这个五级软件工程师等级,我那个还是太浅显,视野太窄了。所以这篇文章我就想把吴军的这个划分跟大家聊一聊。
1. 吴军的五级工程师划分?
吴军老师在《硅谷来信》中也参考 物理学家朗道 对工程师划分为为了五个等级:
第一级最高,第五级最低,级和级之间的差别不应该是一点点,而是数量级的差别。
-
第五级:
能独立解决问题,完成工程工作
-
第四级:
能指导和带领其他人,一同完成更有影响力的工作
-
第三级:
能独立设计和实现产品,并在市场上获得成功
-
第二级:
能设计和实现别人不能做出的产品(他的作用很难替代)
-
第一级:
开创一个产业
2. 对于软件工程师而言,每一级意味着什么?
将吴军老师的五级工程师,对应到软件具体工作中,可以这么理解:
-
第五级 工程师:
一名合格的五级软件工程师,首先应该是一个技术熟手,在工作中经历过了一定的历练,所以可以在不需要别人的指导下,就能独立完成安排的工作任务。
比如上级/需求方给他安排了一个功能需求,他能够充分的理解这个需求背景和目的、以及能给出实现方案,并知道找公司的哪些人提供相应的资源和支持,然后能主动的推动资源来协助自己完成这个需求,最后实现成功上线。
-
第四级 工程师:
四级工程师,在互联网企业里更具体而言,需要有一定的领导能力,能领导和负责一个项目。能设定目标并找出实现的道路,能正确的识别问题、并找出最合适的解决方案(不仅限于技术方案),带领团队把大问题化解为小问题,最终完成项目。
-
第三级 工程师:
三级工程师,就需要能够独立带领团队为公司做出一个能赚钱的产品了。很明显,这一层级,就需要有商业思维、市场判断能力、营销能力了。
我觉得国内的大多数软件工程师由于编码的固定思维,容易觉得自己技术牛就可以了,其它的事情关注度不高,所以真正能走到这一步的工程师很少了。
-
第二级 工程师:
这一级就更牛了,要能带领团队做出先前没有的产品,或者别人想做但暂时还未成功的产品。能到这一级别也就真正的业内大牛了。比如阿里云的创始人王坚这类,有多难就不说了,另外还得看行业机会。
-
第一级 工程师:
一级是指开创一个产业的人,这个吴军老师没有多谈,估计是觉得离我们实在是太远了,哈哈。
吴军老师的这五个工程师等级划分,可以看出来与我们在公司的职位/职级完全不相关,也并非与纯技术考量相关,它完全是从整体能力、产出贡献的角度去描述。看完他这个,再想想我们平时对程序员、对架构师等的要求和评估依据明显弱爆了。
我觉得完全可以依据这五级工程师标准,来看看自己在哪个等级,然后接下来的努力方向在哪儿,相信大家职业生涯也就不迷茫 。对了,吴军老师对自己的评定是在2.5级。
以上,就是对软件工程师的等级评价体系的一些思考。
码字不易啊,喜欢的话不妨转发朋友,或点击文章右下角的“在看”吧。
本文原创发布于微信公众号「 不止思考 」,欢迎关注,一起提高 认知、成长、大数据、架构、Web技术 等。