原文链接:http://www.a-lightyear.com/programmer-mid-life-crisis/
来自友链一光年。
以下原文:
今天刷知乎,偶然看到了这个问题,顺便把该问题下的几个高赞回答都看了一遍。
问题本身的内容不难理解。虽然有人不认同中年危机的这个说法,但提到高龄程序员就职窘况,这个问题还是引起了广泛的共鸣。
人到中年一条狗,过了35岁的程序员可能连狗都不如。
这个年纪的程序员,已过而立之年,上有老下有小,虽然有房有车可是都背着贷款,轻易不会辞职。论精力,论学习能力,论闯劲,都不如年轻人。
和年轻人比,你的优势又在哪里呢?
产出和年资不成正比
说起越老越吃香的职业,人们常提起医生或者律师。原因在于,这些行业的从业者随着工作经验的积累,能力也会同步的提升,随之而来的自然是劳动报酬的增长。
这一套理论用在其它行业,为什么就行不通了呢?难道其它行业就不需要经验的积累吗?
因为工作效率有一个明显的天花板,到达了这个天花板效率的提升就与工作经验的积累没有必然关系了。
例如一个流水线工人,熟练掌握工作内容的时间少则三五月多则一年。超过了这个时间,他的工作产出只与他的劳动时间成正比,而与工作年限几乎无关。到了一定的年龄,资本家自然想用更年轻的劳动力去取代你。
具体到互联网这个行业,35岁的年龄就是普通程序员的天花板。
我们都是组装工人
罗永浩曾经说过一句大实话,国内的互联网厂商大多是开源技术的整合商。意思是国内没有技术钻研的氛围,所谓的原创,大部分都是整合了开源技术,在应用层面上进行的创新。
原因很简单。在资本市场野蛮生长的阶段,应用层面的微创新相比起基础技术的创新更容易见到汇报,看得见投资回报的项目则受到投资人更多的青睐。活下去,是任何公司的首要目标。
这些跟35岁天花板有什么关系呢?到了35岁,如果你不能给公司带来更多的价值,从成本上考量,你的性价比已经不如年轻人了。
特别是一直从事于特定业务体系的程序,年过35以后,危机感会格外的强烈。长时间的写业务代码,虽然对该行业的业务可以做到很熟悉,美其名曰资深,但反过来讲,也可以看作是作茧自缚画地为牢得职业选择。
一个的程序员既懂业务又懂代码,看上去应该很吃香才对。但实际上,论业务他始终只是甲方(或用户)需求的实现方,说代码他的水平已经在入行三五年后停滞不前。如果不是某些特定系统的遗留代码需要专人维护,在国内互联网公司的大干快上快速试错的大环境下,你写的代码能否存活三年都是一个疑问。
一个35岁的程序员可以声称他富有经验。但尴尬的是,他的经验往往只是一个重复了十来年的工作内容和知识积累。如果他仅仅只有编程经验的话,那么这份经验的价值远不如年轻人肯加班吃苦带来的产出更值钱。
到头来,比起流水线上的工人,程序员中的大部分人不过是把车间搬到VSCode或者Eclipse上,成为熟练工的时间更长一些罢了。
大多数人本身就是平庸的
如果你也关注知乎这个问题,那么说明至少你对自己的未来还有危机感。可是程序员中的大部分人,甚至都感觉不到这个问题的存在。
也许你并不认同这个现实,但事实是现在程序员这个词的所指对象,早已经不是985计算机软件相关专业本科及以上的毕业生了。据最近的调查,有近65%的程序员都是自学成才。
各类网络课程,技能学校或者书籍教程都声称,能让一个无基础的人几个月能速成IT业的人才。这样的流水线培养出的人才,能做的事情非常有限,却最符合很多公司的利益。因为这些公司的工作内容对技术要求不高,对工作时间和产量要求更迫切。经过一两年的培养,他们就可以成为合格的业务程序员。
业务型程序员可能是整个行业最普遍的类型。他们有三类原因无法精进自己的技术
- 没有意愿
- 没有精力(精力都压在业务上)
- 没有能力
没有精力其实也是没有能力的一种体现。因为能力不足,所有的精力仅仅能应付业务实现的工作上,无额外精力去精进自己的技术。这样的程序员,必然是无法迈过35岁门槛的。要么转行,要么工作条件或报酬越来越苛刻。
必须承认,人与人之前是有差异的。智商丶生理丶身份或者财富,这些都是人类不平等的起源。如果你比别人更有能力,那么你就有更大的概率避免危机。