Xiaowen.Z Deployed

"We all learn by making mistakes, and make mistakes again to learn more."

五年与总共五年。

xiaowenz / 2017-05-10


当年自己刚出道的时候,特别希望的就是自己的简历上能写上类似“五年工作经验”之类的信息。那个时候程序员似乎并不像现在这么多,两年以内基本意味着傻逼,而五年基本上就算是成型了,处于招聘鄙视链的前部。

如今,站在自己的第10年,回头去看10年之间自己的变化,对比以及这些年面试过,招聘过,工作过的新人们,更大的印象是即使是多年工作经验的家伙,出现低能的概率也并没有足够线性的下降趋势。见过非常多这样的人,有足够多的经历来支撑面试,却没有足够广的视野和思维去支撑真正的做事。

在程序员的领域,最不缺的就是从0开始的故事。代码从无到有几乎是最容易的,因为质疑和限制最少,隐形的坑也几乎没有,这考验的是开发的功底,却并不一定能及时的验证之。程序员领域有一个段子是这么说的:

Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.

这充分的说明了在软件漫长的生命周期里,你优秀的品质也许只会被数年之后你根本不认识的家伙所赞赏,而你挖的糟糕的坑,也只会在很多年以后才让偶尔掉进去的某个小家伙赌咒发誓打算杀你全家——软件是快消品,但代码却拥有足够漫长慵懒的寿命。

幸运或者不幸,我的行业不是快消品泛滥的互联网行业,不同于面向市场或者潜在用户的产品,我的行业里的软件产品,从出生的那一时刻就已经注定了完整的产品需求,苛刻的准确度和少则数年多则二三十年的生命周期。这几乎意味着,每一个代码里藏的坑,都一定会有见天日的一天,每一个程序员偷的懒,都一定会有咬回来的那一刻。严格的说,这一定不是一个求快的行业,我欣赏的程序员是严谨的,更重要的是能站在一个更长的周期去评估开发里的每一个决定带来的潜在影响,能够完整的去思考的人。

这样的经验是罕见的,也几乎只能从漫长的职业生涯里慢慢养成,没有速成的可能。这也是为什么,倘若两个应聘者同样拥有五年的工作经验,一个在同一家公司带了五年,一个则在三个不同的公司干过,我则会倾向于前者更多一些——因为前者更有可能带着许多深度的甚至他自己都不自知的经验,许多需要经年累月积累下来的东西,这些东西在金融这样一个敏感而又稳重的行业,更重要一些。

这些年见过许多不同的人,有感而发,唠叨一番而已。

我也许不会一辈子做程序员,但一定会写一辈子代码。

以上。