程序员究竟能干多少年?
本文来源:酷壳网-陈皓 , 链接:https://coolshell.cn/articles/10688.html
程序员这个职业究竟可以干多少年 , 在中国这片神奇的土地上 , 很多人都说只能干到30岁 , 然后就需要转型 , 就像《程序员技术练级攻略》(链接:https://coolshell.cn/articles/4990.html)这篇文章很多人回复到这种玩法会玩死人的一样 。 我在很多面试中 , 问到应聘者未来的规划都能听到好些应聘都说程序员是个青春饭 。 因为 , 大多数程序员都认为 , 编程这个事只能干到30岁 , 最多35岁吧 。 每每我听到这样的言论 , 都让我感到相当的无语 , 大家都希望能像《21天速成C++》(链接:https://coolshell.cn/articles/2250.html)那样速成 , 好多时候超级有想和他们争论的冲动 , 但后来想想算了 , 因为你无法帮助那些只想呆在井底思维封闭而且想走捷径速成的人 。
今天 , 我们又来谈这个老话题 , 因为我看到一篇论文 , 但是也一定会有很多人都会找出各种理由来论证这篇论文的是错的 , 无所谓了 , 我把这篇文章送给那些和我一样准备为技术和编程执着和坚持的人 。
论文
首先 , 我们先来看一篇论文《IsProgrammingKnowledgeRelatedtoAge?》(PDF链接:https://people.engr.ncsu.edu/ermurph3/papers/msr13.pdf) , 这篇论文是两个北卡罗莱纳州立大学计算机科学系的两个人PatrickMorrison和EmersonMurphy-Hill对StackOverflow.com上的用户做了相关的数据挖掘得出来的一些数据 。 (我们知道StackOverflow.com上的数据是公开的 , 任何人都可以用来分析和统计 , 所以这篇论文的真实性是有的)
数据采样和清洗条件如下:(数据全量是1694981用户 , 平均年龄30.3岁)
15-70岁之间的用户(这年龄段的用户被称做“Workingage”) , 当然 , 有很多用户没有输入年龄 , 这些用户都被过滤了 。
【程序员究竟能干多少年?】用户在2012年内都回答过问题 。 因为StackOverflow在2012年对问题和答案的质量要求得比以前高了一倍 , 所以更能反映程序员的真实水平 。
Reputation声望在2-100K之间 。 (注:StackOverflow的用户Reputation是得到社会认可的 , 在面试和招聘中是硬通货币 。 比大学的学分更有价值)
上述的条件一共过滤出84,248名程序员 , 平均年龄:29.02岁 , 平均Reputaion在1073.9分 。

文章图片
年龄分布图
下面我们来看一下他们的年龄分布图:我们可以看到程序员年纪的正态分布(高点在25岁左右 , 但是中点在29岁左右)

文章图片
能力和年龄分布图
然后 , 计算每个人每个月的Reputation , 这样可以找到这个用户的真正的活跃时间 , 这样便于计算这个程序员的真实能力 。 (总声望/活跃时间) , 可以得到他平均每个月得来的Reputation 。
我们来看看程序员的能力和年龄段的分布图:(你可能会大吃一惊)

文章图片
上图中我们可以看到 , 程序员的能力在从25岁左右开始上升 , 一直到50岁后才会开始下降 。 所以说 , 程序员吃的不是青春饭 。 只有码农 , 靠蛮力 , 用体力而不是用脑力的程序员才是吃青春饭的人 。
年纪大的人是否跟不上新技术
论文的作者分析了Tag , 用了最近5年内比较流行的技术Tag , 然后用了一套比较严谨的算法来查看那些所谓的“老程序员”是否在新技术上跟上不了 , 所谓跟不上 , 也就是这些老的程序员在回答这些新技术上并不活跃 。 所谓老 , 就是37岁以上的程序员(就是我现在的年纪) 。
得到了下表:可以看到 , 老程序员和年轻的程序员对于一些新技术的学习来说也是差不多的 , 甚至有些项还超过了年轻的程序员 。

文章图片
结论
论文的结论是:1)程序员技术能力上升是可以到50岁或60岁的 。 2)老程序员在获取新技术上的能力并不比年轻的程序员差 。
我的一些感受
最后 , 我说一说我的一些感受:
这些年来的对于外企和国内感受——国外牛B的IT公司的工程能力并不见得比国内的要强多少 , 但是国外那些NB的IT公司的架构和设计能力远远超过国内的公司 , 最可怕的是 , 那些有超强架构和设计能力的“老程序员们”还战斗在一线 , 这些战斗在一线的老鸟的能力绝对超过100个普能的新手 。
对年轻程序员的感受——国内新一代的程序员们太浮燥了 。 老实说 , 对于大多数人来说 , 如果你没有编程到30岁 , 你还不能成为一个“合格”的程序员 。 所以 , 并不是编程编到30岁就玩完了 , 而是编程编到30岁才刚刚入门 。 这些不合格的程序 , 整天BS这个不好 , 那个不好的 , 而且喜欢速成 , 好大喜功 。
我是一个奔四的人了 , 编程就像登山一样 , 越往上爬人越少 , 所以 , 在我这个年纪还有想法 , 对编程还有热情的人不多了 , 基本上都是转Manager了 。 其实 , 什么职位 , Title都是虚的 , 公司没了什么都没了 , 只有技术才是硬通货 。 而且 , 越是这个年纪还在玩编程玩技术的人 , 其实其经验和能力都是比较强的 , 都是中坚力量 , 如果还有其它这个年纪和我一样的人 , 求交往 。

文章图片
推荐阅读
- 大脑|你的大脑和心理究竟是什么关系?
- 冠心病|冠心病心肌缺血不宜干什么活?能干什么活?心脏医生说的清清楚楚
- 宇宙|暗流体遍布宇宙,有时吸引,有时排斥,究竟是怎么一回事?
- 面部识别技术|无处不在的面部识别技术,究竟“恐怖”在哪里?
- 轨道|在火星和木星轨道之间,可能还有一个大行星,它究竟在哪里呢?
- 一日三餐|较真|“一日三餐”是坑人的饮食方式吗?每天究竟该吃几顿?
- 炸油条|油条酥软都是因为加了“洗衣粉”,这是真的?油条究竟能不能吃?
- 心脏病|人类“头号杀手”究竟是何方神圣?要想长寿,坚持“3多4不要”
- 刀剑|对于刀剑来说,剑身的血槽究竟起到什么作用?
- 美国|究竟需要种多少树,才能抗击气候变化?
