程序员这个职业究竟可以干多少年?

博文小编

2024-04-10

文/陈皓(@左耳朵耗子)

程序员这个职业究竟可以干多少年?

在中国,很多人认为程序员干到30岁就需要转型。

当面试中被问到未来的规划时,很多应聘者都说程序员吃的是“青春饭”,职业生涯的极限是35岁。

这样的言论实在让人不敢苟同,不过无须和他们争论,因为封闭的思维是很难打破的。

在论文“Is Programming Knowledge Related to Age?”中,北卡罗莱纳州立大学计算机科学系的Patrick Morrison和Emerson Murphy-Hill对Stack Overflow的用户数据按照如下条件进行了挖掘。

注意,这些数据是公开的,任何人都可以用来分析和统计,所以这篇论文的真实性是有保障的。

  • 采样数据的全量是1 694 981名用户,平均年龄为30.3岁。

  • 采样的条件之一是用户年龄在15~70岁,这个年龄段被称作Working age,没有输入年龄的用户则都被过滤掉了。

  • 将采样范围限定于在2012年回答过问题的用户中。因为Stack Overflow在2012年大幅提高了对问题和答案的质量要求,所以当年新增的内容更能反映程序员的真实水平。

要求用户的Reputation(声望值)在2到100K之间。Stack Overflow用户的Reputation是得到社会认可的,在面试和招聘中是比大学的学分更有价值的“硬通货”。

最终过滤出84 248名程序员,他们的平均年龄为29.02岁,平均Reputation为1 073.9分。

程序员的年龄分布如图1所示,符合正态分布,分布的高点在25岁左右,但是中位数在29岁左右。


图1 程序员的年龄分布

程序员能力和年龄的关系如图2所示。

可以看到,程序员的能力在25岁左右开始上升,一直到50岁后才开始下降。

所以,程序员的能力并不随着年龄增长而衰退,不需要靠年轻力壮来支撑。


图2 程序员能力与年龄的关系

在这篇论文中,作者引入了近5年比较流行的技术标签,采用一套严谨的算法来确定“老程序员”是否能够跟上新技术的步伐,判断的依据是,他们对新技术相关问题的回答是否还活跃。

这里所谓的“老程序员”指的是37岁及以上的程序员。

分析数据后得出的结果是,“老程序员”和年轻程序员在学习新技术方面的表现是相近的,甚至有些“老程序员”的表现胜于年轻程序员。

这些年,国外优秀IT公司的工程能力并不见得比国内的强多少,但是这些IT公司的架构和设计能力要超过国内公司的。

差别最大的是,具备超强架构和设计能力的国外“老程序员”还战斗在一线,他们的贡献力绝对超过100个普通新手。

国内有些新一代程序员太急功近利。

老实说,对于大多数人来说,如果没有编程到30岁,还不能成为一个“合格”的程序员。

30岁是编程的起点,而不是终点。

也只有不合格的程序员才会整天抱怨,并且“迷恋速成”“好大喜功”。

编程就像登山一样,越往上爬,人越少,因此,在我这个年纪还对编程热情犹存的程序员不多了,大部分人基本上都转做管理者了。

其实,职位是虚的,公司没了什么都没了,只有技术才是实在的。

此外,到我这个年纪还在从事编程工作和研究技术的人,经验较为丰富,能力比较强,通常是公司的中坚力量。

本文节选自《左耳听风:传奇程序员练级攻略》一书,作者陈皓(@左耳朵耗子)!
(本书收益归陈皓家人享有)

读者评论

相关博文

  • 社区使用反馈专区

    陈晓猛 2016-10-04

    尊敬的博文视点用户您好: 欢迎您访问本站,您在本站点访问过程中遇到任何问题,均可以在本页留言,我们会根据您的意见和建议,对网站进行不断的优化和改进,给您带来更好的访问体验! 同时,您被采纳的意见和建议,管理员也会赠送您相应的积分...

    陈晓猛 2016-10-04
    5700 747 3 7
  • 迎战“双12”!《Unity3D实战核心技术详解》独家预售开启!

    陈晓猛 2016-12-05

    时隔一周,让大家时刻挂念的《Unity3D实战核心技术详解》终于开放预售啦! 这本书不仅满足了很多年轻人的学习欲望,并且与实际开发相结合,能够解决工作中真实遇到的问题。预售期间优惠多多,实在不容错过! Unity 3D实战核心技术详解 ...

    陈晓猛 2016-12-05
    3427 36 0 1
  • czk 2017-07-29
    6277 28 0 1