优秀的工程师都有这些特质,看看你拥有几项?

387 阅读4分钟
原文链接: click.aliyun.com

哈佛大学计算机博士保罗·格雷厄姆曾经说过“优秀的程序员不仅仅是写代码的书呆子,同时也是一个创造者,与画家、建筑师、作家一样,优秀的程序员可以用计算机创造美和艺术”。

在小专栏的 Android 和 iOS 面试指南读者群里,大家都表示年薪能过五十万或者能进 BAT、小米、头条等大互联网公司的都算是优秀的工程师。

所以在讨论优秀工程师的特质的时候,我想先说明本文探讨的优秀工程师指的是进能出任创业公司CTO、退能进入 BAT 写代码的这类优秀工程师。

这些年接触了不少优秀的工程师,有来自清华北大哈佛斯坦福名校的,也有来自大专普通本科毕业的,有还未毕业就吊炸天也有工作五六年后开始在技术圈展露头角的,正如《黑客与画家》说的那样“判断一名优秀程序员的水平应该看他的技术能力,而不是看他的学历、年龄或地位等其他标准”。

每个优秀工程师都有独特的两把板斧,但是他们却有非常多相似的优秀品质,今天特此总结,希望大家一起讨论,一起走向卓越之路。

1、热爱自己的职业:

程序员群体恐怕是最爱自黑的一个群体了,但是这不代表我们不热爱自己的职业,虽然每天和代码打交道,但是我们乐此不疲。

曾经有一位杰出的工程师说过:“每天除了吃饭睡觉几乎都在思考代码。”其实我们很多工程构想都是在不停歇的思考中诞生的。每天早起床后刷牙的时候、上班的路上、吃饭的时候甚至和别人谈话的空闲瞬间都有可能诞生灵感。因此,一位优秀的工程师,总是满怀对职业的热爱,同时也将代码融入了生活。

2、自律且高执行力

曾经有一句话叫做“自律使我自由”,其实今天我也想说“自律使我优秀”。

在 Android 技术群里,不止一次听到“月亮和六个便是”分享他之前的学习经历,月亮说“在工作前两年的时候由于加班严重导致没有学习时间,所以就每天早上 6 点起床,学习到 8 点多开始出门上班,这样状态持续一年多时间,最后职业生涯也越来越好,成功进入最棒的互联网公司”。

其实在 iOS 群的张星宇也跟我说过类似的经历,所以你看优秀的人还非常努力,而水平一般的人倒是每天睡到八点半。

3、具有团队协作精神
优秀的工程师都清楚团队合作的重要性,组织、维护、发展团队并不是他们的负担,反而能帮助他们事半功倍的达到目标。很多公认的优秀工程师都会与身边的同事、项目的上下游、领导与下属有很好的人际关系,这样做起事来少了三分阻力,多了三分支持,自然会轻松很多。

阿里一个前端大佬跟我说过很多次,如果一个应试者不懂团队合作哪怕技术再强他都不会招进团队。

4、解决bug的能力
程序 bug 是一定会有的,如果这世界上存在写代码没有 bug 的人,那恐怕只有上帝了。

不少朋友跟我说编程三分钟,找 bug 五小时,当然这只是个笑话,但是其实也从侧面反映出解决 bug 的能力是多么重要,如何培养这个能力,我有一些心得:

1、如果你是一个面向 Google 编程或者面向 StackOverFlow 编程那估计你解决bug的能力已经超过了一半的程序员了。

2、如果你发现问题、解决问题后,还会问问自己为什么会出现这样的问题,马虎?概念不清晰?最后做一个复盘,整理成一个技术文在社区分享,那估计你解决 bug 的能力已经超过了 90% 的程序员了。

5、良好的学习能力
IT技术发展迅速,理论的发展也非常迅速,我们每天都接受到潮水般的新观念和新技术,所以拥有良好的学习能力能够让我们用最短的时间掌握最前沿的技术,千万不要在某 GitHub 项目下面“吐槽”:“别更新了,学不动了”,这样既显漏出你对技术的不尊重也让人看出你学习能力的底下。

......

今天就总结了五个优秀工程师的特质,大家还有什么补充的么?欢迎留言交流讨论。

原文发布时间为:2018-07-31
本文作者:寂小桦
本文来自云栖社区合作伙伴“小专栏平台”,了解相关信息可以关注“小专栏平台”。