2016-10-02 做这样的工程师

我特别喜欢《知道创宇研发技能表》中的一句话:“我们需要对得起名片上的那个头衔:工程师、研究员”。究竟怎样算是对得起工程师这个头衔,这篇文章解释的很到位。

本文作者是优才学院CEO,也是我学习《Web全栈工程师课程》的主讲老师。

12条标准界定优秀的开发工程师

作者:伍星,查看原文

工作这些年来,直接带过了数百名工程师,不小一部分的工程师到今天成长成为知名公司的技术总监、架构师和创业公司的CTO,从这些同事和朋友的身上,看到了一名名优秀的技术工程师所需要具备的特质。正好有一次在美团的 JD 中,发现了如下内容,深表认同,于是经过改造总结出了以下 12 点优秀工程师的标准。

美团的某个JD

这 12 点标准尽管在其他地方也分享过,不过通过文章详细展开来分析还是第一次。

1、热爱、迷恋技术,不搞复杂的人际关系,相信技术改变世界

优秀工程师是将工作和兴趣结合起来的,所以会迷恋对技术了解和学习,为了解决一个实验中的问题,可以从早上7点钟开工,干到晚上12点不挪动座位,甚至有一个笑话说,即使妹子站在身后色诱,真正执着的程序员也是不为所动的。

工程师都是比较单线程和一根筋的,在公司里面也很少搞公司政治,所以只要尊重程序员的技术之后,就跟程序员很容易相处,所以研发团队也没有复杂的人际关系,而当工程中复杂的问题出现时,程序员会想着用技术,而不是用人来解决问题。

2、对代码质量、设计质量、工程质量有追求,追求扎实基础学习

优秀工程师,在入行前后,要么自我学习,要么经受良师指导,有明确的规划,从而是有追求的一批人。这种追求,包括但不限于把在实现了功能之后:

在代码的层面,观感上更加漂亮,可读性更加好,逻辑结构更加清晰,效率更加优化。

在设计的层面,模块划分与功能版块职责解耦,利用框架来进行代码结构的规范,在代码文件部署的层面进行 MVC 的分离。

在工程质量的层面,对代码基本单元进行有效的单元测试和版块、整体项目的集成测试。

在提升自身业务开发能力的同时,将能力全面扩展,一方面学习更多的编程语言,比如PHP可以到JS、Python、C等,另一方面学习底层和基础,Linux底层和网络开发,提升数据结构和算法功底。这些过程的加强,比当初入行本身的学习需要花费更长的时间,也更为艰难,但是这是进一步能力提升的必经之路。

3、痛恨不靠谱的产品经理,希望对产品有更多发言权

优秀的工程师,不仅仅是原原本本实现功能的被动执行者,从需求到实现阶段,都要发挥自己的主观能动性。包括对产品的发言权,而优秀工程师,与产品经理的关系,往往也是良好的。具体体现在以下三个方面:

不仅仅是一个被动的执行者,对于功能和需求前期会提出自己的建议和见解,尽管这种建议和见解不一定被采纳,那也要积极地参与,这是一种参与思考的过程。

对于已经明确要实现的功能,要不折不扣地执行,有遇到没有实现或者是不能实现的情况,一定要提出和说明,而不是糊弄。

任何时候与产品经进的关系 ,都是博弈和平衡的关系,所以不是产品的所有需求都可以实现或者必要全部实现,如果不能实现,就有理有据地说服,如果无必要实现,或者有更为好而不影响或者取得平衡的解决方案,也要跟产品说明清楚。

4、迷恋解决问题,最好是迷恋用技术解决问题

优秀的工程师,是一个勤奋与“懒惰”的矛盾综合体。一方面,他勤奋地学习和练习所学到的技能或者勤奋地工作,开发产品,为了解决一个技术问题,可以不吃不喝到半夜,也可以凌晨 5 点起,折腾一天。但是一方面,他又会经常“懒惰”地想,尽可能地省事,尽可能地采用技术来解决所有的问题,达到一劳永逸的效果。比如你让一个优秀的工程师,每天花 5 分钟手工做一个统计分析,他会想方设法地将这件事情,让机器自动执行,哪怕用程序去实现这个手工 5 分钟统计分析要花掉半天的编程时间,也在所不惜。因为第一次实现花掉了半天,而在未来的很长一段时间,即使手工跑,也只需要几秒,而用自动化运行的话,除了监控正常运行之外,真的就是一劳永逸了。

5、干一行,爱一行,希望在工作领域大展拳脚

任何工程师,都不能行业本身而存在,尽管做的是同样的程序工作,可能是视频行业、社交行业或者是医疗、金融、教育等行业,其实在业务上都有相当的不同。优秀的工程师,除了自身技术能力提升之外,也会积极地提升对业务的了解和业务能力,因为优秀的工程师,发展成为架构师是他重要的追求,而架构师,不成为业务专家是不可能成为优秀的架构师的。尤其在今天互联网+和+互联网的时代,大部分工程师,都不是在纯互联网行业就业,而是进行各种各样的产业互联网公司,这就更需要工程师的业务能力。所以干一行,爱一行,专一行,就一个优秀工程师的基本素养的要求。

6、在工作中具备创业精神

如果换工作,工资占据着非常重要的位置,同时在工作中,也只需完成工作中的任务,而不去多想一分,这样的工程师是一种打工心态的工程师,是不可能成为优秀工程师的。而后者,首先选择工作的第一要务是是不是适合自己的职业规划和未来发展,一旦选定和投入工作,会从公司的角度,产品的角度和业务上下游的角度来实施工作,无论是身处的公司是数千上万人的大公司,甚至是上市公司,还是刚刚初创的小公司,都需要有这样的精神的工程师,这就是创业精神 ,而用我们小学所受教育的观点,也就是主人翁精神。也只有这种的精神 ,我们才能期望他在获得了工作之后,能够深入到业务中去。

7、使用 Google 而不是中文搜索来求解技术问题

由于优秀的工程师,往往不断地学习或者解决较为棘手的问题(能者多劳嘛),而在学习到一定程度,尤其是一些比较新的项目和技术,可能需要大量地使用英文资料,所以在这个时候,无论是求知学习,还是解决问题,英文的重要性都体现了出来。百度上可能得不到理想的结果,而在Google上,解决的方案可能精准或者多一些。(补充说明:最近一段时间发现,百度也索引了大量Stackoverflow上的内容,所以搜索一般问题的解决方案,也好了一些。另外,在Google上,搜索到好的解决方案,要依赖于对关键词的选取,如果是错误消息的话,可以直接把消息输入进去)。

8、迎难而上,积极查找和使用英文资料,读英文技术书

接着上一点,要想成为优秀的工程师,能者多劳,对英文资料的掌握和使用能力也非常重要。所以对英文基础就有了一定的要求。如果英文基础不好,再难也要克服过去,否则,英文可能成为进一步提升发展的瓶颈。

办法就是

先学学常用的计算机英语

着看英文技术文章

进一步看技术书

最高级的应该就是看英文论文

然后在自己工作中加以理解和应用!

9、在工作8小时之外努力钻研技术或持续学习

由于工程师在早期的时候,要学习的内容太多,而技术更新又太快,需要解决的问题也多。所以想只在工作 8 小时之内就学习好技术,这是不可能的。我面试过追求朝 9 晚 6 的技术,也了解过有一些人,到了家就不开电脑,我可以断定这样的人,不可能成为优秀的工程师。真正的优秀工程师,会依据自己的职业规划或者针对工作中的问题,在工作 8 小时之外也努力钻研和持续学习,如果做不到这一点,我觉得这样的人根本不具备培养价值。

我曾经带过一名优秀的实习生,他是我当年带来的数十名优秀的实习生的最突出的一位,当时以实习生的身份就承担了核心产品的主程之职,我印象最深的是他每天晚上都是最晚一个走,包括大年三十晚上。这名同学果真是优秀的,后面进入了阿里,也在硅谷工作过,现在是Android开源界都比较知名的工程师。

10、具备产品思维,用户体验不仅是产品经理的事

产品经理设计好产品,但是毕竟,产品经理是在脑海中模拟,然后在原型中实现。真正的用户体验,还没有到用户操作的层级。所以难免会有一些考虑不足之处。一般的工程师,是按着产品的设计实现了就完了。并不在乎整个过程的好用与协调,更不说在细节上的注意了。

而优秀的工程师就会考虑到关注到这一点,在我的分享中,常举一个例子。当初做文章的评论功能。最开始第一版就是表单提交 ,然后页面刷新,跑到了页首。这种感觉是非常差的,而优秀的工程师,会将其用 Ajax 实现,这样提交完成了之后,内容自动闪现并且也不会刷走。即使不用 Ajax 技术实现,优秀的工程师,也会考虑锚点定位技术,在评论提交后,把评论的内容,闪现在用户眼前。所以这些细节就需要关注,在实现时,需要主动提出来与产品经理商量哪种实现更好,不要认为自己不用关心,当然也最好不要自作主张

11、工程质量不能依赖测试人员,对自己代码负责

在程序界,有一句话是叫:“代码被狗吃了”,这一方面是说,程序员可能不慎将版本代码删除,另一方面是说,程序员不敢于面对自己的错误,老说,这在我那是好的呀,这我明明写的代码,怎么没有了?无论怎么样,这都有推卸责任的成份在里面。另外一个现象就是,程序员写完代码,连基本的测试也不做,就提交 ,甚至发布上线,结果导致线上出现低级的严重的故障。而优秀的工程师则是相对的,代码上线前先自己测试,上线前先一再确认,上线后更是需要确认运行的日志和结果数据。无论是前端影响到用户的项目,还是后台跑数据的项目都是如此。

12、工作不仅是完成领导交的任务,更要完成团队与自身提升

虽然工作是为了挣工资,是为了完成团队和项目中的任务,但是如果仅仅限于此,也不会是一个非常优秀的工程师。优秀的工程师,绝不会整天做着简单重复和没有创造性的工作,会想方设法让简单的工作,也变得更有意义 一些,在简单的工作中,每天都有进步,这个进步,跟上面所说的追求一样,对自提升有价值,甚至关于总结,对整个团队也有价值

以上,就是依据美团 JD 所总结的 12 点优秀工程师的标准,我个人很认可,很喜欢,也分享给广大工程师、主管以及创业者和 CTO 们。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,569评论 25 707
  • //我所经历的大数据平台发展史(三):互联网时代 • 上篇http://www.infoq.com/cn/arti...
    葡萄喃喃呓语阅读 51,033评论 10 200
  • 我是一个性格暴戾的男人,可是走在大街上看到那些漂亮女孩,我就成了一个浪漫温柔的人,随时会给她们一个吻一个拥抱。
    5先生阅读 152评论 0 0
  • 最近在看弗洛伊德的《梦的解析》,书里很多观点我都是非常同意的。比如这句“每个做梦者的每一个梦都充满特别的意义,并且...
    恬大小姐阅读 191评论 0 1
  • 亲爱的小瑞瑞: 展信佳! 现在是晚上十点多了,不知道你对我帮你安排的时间有没有什么看法?你是不...
    Melodyhui阅读 265评论 0 0