吴军博士眼中的五级软件工程师

有没有适用于咱们软件工程师的等级评价体系呢?

世界上有一套针对专业人士的评价体系,它的发明人是苏联著名物理学家 列夫·达维多维奇·朗道。朗道(1908-1968),号称是“世界上最后一个全能的物理学家”,他不仅获得过诺贝尔物理学奖,而且还提出一种按照水平和贡献划分物理学家的方法,被称为物理学家的等级,也就是前面提到的专业人士的评价体系。

其实,咱们 程序员/软件工程师 也是属于专业人士范畴的,那有没有适用于咱们的等级评价体系呢?

有,吴军博士在得到《硅谷来信》中就提出了他眼中的五级工程师的要求,虽然不是什么标准化的东西,但是我觉得非常有参考价值,我读完之后简直是醍醐灌顶,不仅可以对照自己所处的位置,更重要的是能指引我们对自己职业发展方向的思考。

其实我在之前写过一篇文章「如何从程序员到架构师」,在里面我也提到了对程序员的分级,那是根据我自己的认知,以及我这些年工作经验的角度出发,我眼中看到的业内互联网公司技术团队里对程序员/软件工程师这一职业的等级划分。即:初级工程师、中级工程师、高级工程师、资深工程师/架构师、技术专家/首席技术官。并且我也浅显的聊了聊对这每一个级别工程师所应具备素质要求的看法。

但是对比 吴军 的这个五级软件工程师等级,我那个还是太浅显,视野太窄了。所以这篇文章我就想把吴军的这个划分跟大家聊一聊。

1. 吴军的五级工程师划分?

吴军老师在《硅谷来信》中也参考 物理学家朗道 对工程师划分为为了五个等级:

第一级最高,第五级最低,级和级之间的差别不应该是一点点,而是数量级的差别。

  • 第五级:

    能独立解决问题,完成工程工作

  • 第四级:

    能指导和带领其他人,一同完成更有影响力的工作

  • 第三级:

    能独立设计和实现产品,并在市场上获得成功

  • 第二级:

    能设计和实现别人不能做出的产品(他的作用很难替代)

  • 第一级:

    开创一个产业

2. 对于软件工程师而言,每一级意味着什么?

将吴军老师的五级工程师,对应到软件具体工作中,可以这么理解:

  1. 第五级 工程师:

    一名合格的五级软件工程师,首先应该是一个技术熟手,在工作中经历过了一定的历练,所以可以在不需要别人的指导下,就能独立完成安排的工作任务。

    比如上级/需求方给他安排了一个功能需求,他能够充分的理解这个需求背景和目的、以及能给出实现方案,并知道找公司的哪些人提供相应的资源和支持,然后能主动的推动资源来协助自己完成这个需求,最后实现成功上线。

  2. 第四级 工程师:

    四级工程师,在互联网企业里更具体而言,需要有一定的领导能力,能领导和负责一个项目。能设定目标并找出实现的道路,能正确的识别问题、并找出最合适的解决方案(不仅限于技术方案),带领团队把大问题化解为小问题,最终完成项目。

  3. 第三级 工程师:

    三级工程师,就需要能够独立带领团队为公司做出一个能赚钱的产品了。很明显,这一层级,就需要有商业思维、市场判断能力、营销能力了。

    我觉得国内的大多数软件工程师由于编码的固定思维,容易觉得自己技术牛就可以了,其它的事情关注度不高,所以真正能走到这一步的工程师很少了。

  4. 第二级 工程师:

    这一级就更牛了,要能带领团队做出先前没有的产品,或者别人想做但暂时还未成功的产品。能到这一级别也就真正的业内大牛了。比如阿里云的创始人王坚这类,有多难就不说了,另外还得看行业机会。

  5. 第一级 工程师:

    一级是指开创一个产业的人,这个吴军老师没有多谈,估计是觉得离我们实在是太远了,哈哈。

吴军老师的这五个工程师等级划分,可以看出来与我们在公司的职位/职级完全不相关,也并非与纯技术考量相关,它完全是从整体能力、产出贡献的角度去描述。看完他这个,再想想我们平时对程序员、对架构师等的要求和评估依据明显弱爆了。

我觉得完全可以依据这五级工程师标准,来看看自己在哪个等级,然后接下来的努力方向在哪儿,相信大家职业生涯也就不迷茫 。对了,吴军老师对自己的评定是在2.5级。

以上,就是对软件工程师的等级评价体系的一些思考。

码字不易啊,喜欢的话不妨转发朋友,或点击文章右下角的“在看”吧。??

本文原创发布于微信公众号「 不止思考 」,欢迎关注,一起提高 认知、成长、大数据、架构、Web技术 等。

原文地址:https://www.cnblogs.com/jsjwk/p/10954650.html

时间: 2024-10-05 04:55:53

吴军博士眼中的五级软件工程师的相关文章

翻译:给自己作为新软件工程师的一封信

翻译:给自己作为新软件工程师的一封信 科技爱好者周刊:第 101 期 - 阮一峰的网络日志 原文:A letter to myself as a fresh software engineer 亲爱的自己: 你刚刚毕业,并且已经准备号开始你在IT领域的职业生涯.我不能剧透,但我向你保证这将是一段有趣的旅程.我给你写这封信是因为我想给你一些帮你变得更加专业的建议.接下来的几年,你不会学到任何东西,这正是我希望某人在我职业开始的时候高速我的. 这是一场马拉松,不是短跑. 成为一个好的软件工程师是个很

现代软件工程 第三章:【软件工程师的成长】练习与讨论

1.选哪一种医生? 分析一下四个医生, a)属于新手类型,能力有限,经验不足,主要能完成功能就可以.bug会比较多,代码也不规范. b)属于创造类型,既然能想到新技术和新方法,说明必然有一定的经验.但是创新虽好,也可能失败,成功可能性跟自己的能力有关. c)属于熟练类型,对于代码的实现相当熟悉,能够快速的实现功能需求. d)属于糊弄类型,相当之不靠谱,明眼人都知道,但有时瞎猫碰见了死耗子或者民间高手也有可能出现. 你要选哪类医生? 我会选c类型的医生,虽然创新不能保证,但可以保证最基本的功能需求

吴军博士:物联网和人工智能将再造一个英特尔和微软 | 万物互联

创新大会 本文作者:程弢 2016-11-13 13:57 导语:吴军认为,在人工智能或者物联网领域,谁能把操作系统问题解决了,谁就是下一个Google和微软:谁把处理器问题解决好了,谁就是下一个英特尔和高通. 编者按:今日上午,由B12主办的第二届万物互联创新大会在杭州召开,丰元创投创始合伙人  .硅谷风险投资人.<浪潮之巅>作者吴军博士做了一场关于人工智能非常务实.接地气的演讲. 今年是人工智能概念诞生60周年,在这一年人工智能行业也发生了几件大事:今年1月,1956年提出人工智能概念的科

软件工程师必备的24个软技能

软技能通常是被低估的.几乎所有的软件工程师都知道要关注技术的提高,但是忽视的软技能很可能会影响你的职业生涯.下面疯狂软件Android培训技术专家将介绍24个对程序员非常重要的软技能,以方便程序员们在无形中提高自己的人生格局.更多IT技术知识,请登录疯狂软件教育中心. 1:学会如何学习 学无止境. 2:制定阅读规划 程序员的生活常常没有规划.谁也不知道自己是否能够真正地执行自己的阅读规划.但是按照时间表总比自己漫无目的地修读和看书要好. 3:改善健康 睡眠和工作对于保持最佳的脑功能状态非常重要.

软件工程师的必修和选修(转)

谷歌员工眼中的6个关键点 在我向你提供课程列表前,先读第一二点 全职工作人员——基于你的行业经验和学术背景去选择性的看待这个回答 准大学生——请直接跳到第七点 标记说明: # 可选的 **必须的 #第一点:让我们回到这个问题本身,也即是如何准备才能让自己成为“优秀”的软件工程师? 是的!这个问题的剩余部分都是可选的.加入谷歌不是登月计划.任何优秀的软件工程师都有好机会成为谷歌工作文化的一部分.问题是你如何定义“优秀”. **第二点:调整态度 在你给谷歌招聘人员留下深刻印象之前,让我们来看看谷歌的

写程序之外,杰出软件工程师所需的六项能力

我前些日子写过一篇[博士满座的系统优化团队],略讲了一下我之前在硅谷工作的团队.我十一年前从硅谷回到台湾教书,原本想把这些工程研发能力的重要性传达给学生,却发现号称电脑王国的台湾,在软件工程的领域的研发文化竟是意想不到的浅碟.明明是国外重视的工程技术,国内却乏人问津.学界标榜要世界一流,只好抄捷径,从理论着手:业界要快速赚钱,没时间研发,要的是现成的解决方案,所以在软件界,产学的落差很大. 要知道,产学落差影响最大的是学生和工程师.讲难听点,教授可以一辈子在学术的象牙塔里优游自在,不用太在意学生

《构建之法》学习(3)——软件工程师的成长

<构建之法>学习(3)--软件工程师的成长 1.1个人能力的衡量与发展 积累软件开发相关的知识,提升技术技能 积累问题领域的知识和经验 对通用的软件设计思想和软件工程思想的理解 提升职业技能 实际成果      衡量软件开发的工作量和质量 项目/任务有多大? 花了多少时间? 质量如何? 是否按时交付? 1.2软件工程师的职业发展 职业发展--考级之路 职业成长--Steve McConnell版本 职业成长--大公司版本 职业成长--自我评估 1.3技能的反面 通过玩魔方的例子说明了技能提升的

如何成为合格的软件工程师

一个成功的软件开发团队里,首先要确保团队里的成员是合格的软件工程师.那么该如何成为一名合格的软件工程师呢?这是我们要考虑和学习的.为此,我们需要先了解一些基本概念和技术. 既然是一个开发团队,那么绝大部分的软件都是由多人合作完成的,大家的工作相互有依赖关系.所以需要单元测试来保证整个开发过程各个模块的正确性,单元测试可以保证自己负责的模块功能定义尽量正确,模块内部的改变不会影响其他模块,而且模块的质量能够得到稳定的.量化的保证.书上介绍了一种用VSTS写单元测试的代码: [TestMethod(

《构建之法》---软件工程师的成长&amp;两人合作

本周学习了<构建之法>第三.四章的内容. PSP对软件开发的工作质量的衡量简单指标为:项目/任务有多大.花多少时间.质量如何.是否按时交付共4个因素.而要成为一名合格的软件工程师,要对上述4个因素尽量在用户需求上做到尽善尽美. 软件工程师的职业发展有: 职业发展---考级之路 计算机等级考试 (http://sk.neea.edu.cn/jsjdj/index.jsp) 全国计算机技术与软件专业技术资格考试 (http://www.rkb.gov.cn/  ) 职业成长---Steve McC