吴军博士仿照朗道的理论,将工程师划分为了五个等级:
第五级:能独立解决问题,完成工程工作;第四级:能指导和带领其他人一同完成更有影响力的工作;第三级:能独立设计和实现产品,并且在市场上获得成功;第二级:能设计和实现别人不能做出的产品,也就是说他的作用很难取代;第一级:开创一个产业。
下面大家就按照这个标准来看看各个级别的程序员之间有什么差别:
一个合格的工程师至少是五级工程师,对于计算机专业的学生,毕业后经过一段时间的锻炼,能够熟练应用代码知识解决问题,独立完成所分配的工作,而不需要他人指导,就算是一个合格的五级程序员了。
第四级的工程师需要有领导能力和在工程上把大问题化解为小问题的能力。他们能够寻找出实现比较大的目标的道路,在现有的条件下考虑好和坏的解决方案。在软件开发环节,第四级程序员需要考虑用户需求的特点、平台的选择、不同方案的效率和人员投入等多种因素,并根据公司能提供的现实条件选择最合适的方案。
第三级的工程师就应该能够独立带领人做出一个为公司挣得利润的产品了。第三级的工程师,本身也必须是一个非常好的产品经理。第三级程序员除了要具备上述两个等级的能力外,还必须具备对市场的判断和营销能力。除了要考虑一个产品最佳的实现方案,还必须能够判断这个产品是否被市场需要,是否能为公司带来利润。
第二级是能够做出先前没有的东西的人,世界因为他们多少有点不同。比如,Google云计算的发明人迪恩(JeffDean),他和他的搭档盖莫沃特一起开创了云计算时代。迪恩等人发明了GFS文件系统(GoogleFileSystem),让一个大文件能够分布地存储到成百上千台服务器中,解决了大量数据存储效率低的问题。大家熟知的AlphaGo背后的Google深度学习算法也是迪恩发明的。
第一级是开创一个产业的人。众所周知,计算机的出现大大促进了科学技术和社会生活的进步。冯·诺依曼对人类的最大贡献就是对计算机科学、计算机技术和数值分析的开拓性工作。计算机的逻辑图式,现代计算机中存储、速度、基本指令的选取以及线路之间相互作用的设计都受到了冯诺依曼思想的影响;他还积极参与了推广应用计算机的工作,对如何编制程序及搞数值计算都作出了杰出的贡献。
按照这个等级划分原则,吴军博士将自己定位为2.5级,那么2.5级是什么样的一个概念呢?吴军曾任职于Google公司,和同事一同开创了搜索反作弊研究领域,成立了中、日、韩文产品部门,设计了Google中、日、韩文搜索算法,领导了Google自然语言分析器、自动问答等研究型项目。除此之外,他也是著名的学者,风险投资人,著有《数学之美》、《浪潮之巅》、《文明之光》等畅销著作,并多次获得包括文津奖、中国好书奖、中华优秀出版物在内的国家级图书大奖。
各位程序员也可以分析一下自己目前正处在哪一个等级,离下一个等级还有多远。有了清晰的努力方向,距离目标的实现也就不远了。