作为一名软件工程师和一个有着12年经验的项目组领导人,我有很多机会和那些非常有才华的程序员做交流。通过沟通,我发现了一个很有意思的现象,那就是下面这些话几乎从来没有从这些令人膜拜的程序员嘴中说出来过。
“我习惯于使用______,但我不知道它是如何工作”
杰出的程序员源于自己的好奇心和不断的探索,这样才掌握了一项项非凡的技能。他们会仔仔细细研究事物运作的原理,即使这些信息可能永远也不会派上用场。目前我们还不知道这种深入挖掘是一种选择意识还是强迫行为,但是这似乎已经成为了所谓人才的特质。
“______可以运作,但是我不知道该如何解释”
之所以形容他们杰出不但是因为他们知道如何解决问题,也包括他们大多非常乐意给别人讲解如何起效的原因和过程。有时候,即使旁人对此毫无兴趣,他们依然会如此喋喋不休。甚至于越是才华出众能力卓绝,就越是时间讲得久。
“我需要______(工具/条件)来完成这项任务”
世上没有绝对理想化的条件环境。优秀的程序员则会在现有的基础上以最少的资源和其他可替代的工具来找到解决问题完成任务的方法。
“关于______需要学的我已经都学会了”
是
否肯不断学习和完善自我可能就是优秀和杰出两者之间最明显的区别了。不是说到了某个高等水平,就高枕无忧睡大觉了:这些杰出的工程师正是由于深深了解这一
行的发展之快所以会永不止步地学习。甚至他们要是觉得日常工作无法满足获取新知识的欲望,就会毫不犹豫地将自己的业余时间贡献给学习。
“这问题无解”
遇到这种情况,杰出的程序员会继续从其他角度来想法子,而不是就此放弃。
“我讨厌编程”
有时候,即使再杰出的程序员都会对他的工作表示厌恶,但是最后他们对代码浓得化不开的爱会支持他们继续干下去。
“我是______方面的专家”(这一条可谓真真假假难分辨)
即使是最强的工程师也不会大言不惭地王婆卖瓜自卖自夸,因为他们知道人外有人天外有天,总会有人比自己懂得更多。
“业务什么的我不懂”
越有能力的工程师就越是想知道自己的代码在雇主眼中的价值和对组织的贡献。
“我并不关注行业的发展趋势”
话说,知己知彼方能百战不殆,只有了解行业的发展导向,我们才有可能成为杰出的程序员。但凡和这些能力卓群的人聊天,说不了几句话马上就会聊起新技术的发展前景来。
检查一下,如果你也在使用上面任何一条借口,那么好好思考一下原因。特别是在面试的时候,上面任何一句话都是大忌。
英文原文:Things Great Engineers (almost) Never Say