周末在家摆弄了一下微信小程序的tensorflow js,想把模型的本地存储弄起来,结果发现微信小程序裁掉了很多js对象,没完全弄好。今天又出差,要完善这个功能还需等一等。今天聊点轻松的话题。
关于程序员年龄门槛的帖子也算是月经帖,时不时引起广泛讨论。我转行做程序员时二十多岁,那时就流传着程序员是吃青春饭的,三十岁是门槛。当时放眼一看,还真是的,做程序员都是一帮年轻人,都是二十来岁。等我快到三十岁的时候,程序员的门槛悄悄调整到35岁,当时也觉得很有道理,放眼一看,哪里有35岁的程序员。再后来,因为40 的程序员少之又少,又有40岁的门槛说。
为什么会有这种看法?原因在于人们常常弄错了因果关系。举个简单的例子,很多人认为打篮球有助于长高,理由很充分,不信你看,篮球运动员都是高个子。乍一听很有道理,但仔细想想,可能并不是这么回事。高个子在篮球运动中有天然优势,经过多轮筛选,留下的都是高个子运动员。不排除个别矮个子运动员能力极强,但这是特例,不应该纳入讨论范围。所以说,真正的原因是高个子在篮球运动领域有竞争优势,自然打篮球的运动员高个子居多,打篮球和长个子并没有什么必然联系。当然也有人信誓旦旦的说,某某从小喜欢打篮球,因此个子越来越高。其实这也是幸存者偏差,个子高的人,打篮球有优势,自然兴趣也越来越高,而个子小的人,打篮球可能不如个子高的人,就逐渐丧失了兴趣。再说班级、学校选择篮球队员,在同等条件下,肯定会优先选择高个子同学。
还是回到本文的主题,为什么大家身边的40 程序员如此之少,能否就此推断出40岁以上就不适合干程序员呢?
首先我们看看40 的人群,通常是指40岁到50岁之间,也就是俗称70后的这帮人,其上大学的年份基本上处在1987 ~ 1997年之间。这些年全国大专院校录取人数如下:
1987年:录取人数,62万人
1988年:录取人数,67万人
1989年:录取人数,60万人
1990年:录取人数,60万人
1991年:录取人数,62万人
1992年:录取人数,75万人
1993年:录取人数,92万人
1994年:录取人数,90万人
1995年:录取人数,93万人
1996年:录取人数,97万人
1997年:录取人数,100万人
合计:858
数据来源:新浪网
每年录取人数基本上在缓慢增长,但真正大规模扩招是从1999年开始的。所以这10年上大学的总人数并不多,可以做一个数据对比:2018年一年,全国大专院校共招生790.99万人。而这其中又有多少是计算机相关专业的呢?这个没有查到数据。
光看数据,可能没什么感觉。我就说说我的感受吧。我本科上的是电力系,当时是学校的第一超级大系,有多少人呢?一个年级10个班,总共300号人。要知道我上的学校的学生规模在全国排在前几位,计算机系一个年级估计就100号人,即使算上电信、自动化、固电等等与IT搭边的院系,一届的学生也就五六百号人。由此推算到全国,每年IT相关专业的毕业生能有多少呢?要知道当时计算机还是新鲜事物,老师和设备都极稀罕,很多院校都还没有那个条件开设这个专业。那时华为到学校来招聘,计算机专业的都是整班的要,哪需要面试笔试什么的,只要学生点头就可以了。
当然,因为IT人才缺口之大,很多像我这样半路出家的毕业生也进入了IT行业,这样的数据无从统计,但总归40 的IT从业者总人数不多,散落在各个公司和高校、研究所,自然就比较少见。
接着再来看看这些人又都去哪儿了?70后还算是幸运的一代,赶上了二十世纪末的互联网浪潮,接着又是移动互联网浪潮。有句话是怎么说的?猪在风口上,也可以飞起来。近二十年,中国的IT行业迅猛发展,大量的新人进入这个行业,这样不管是主动还是被动,在这行做一两年就要带新人了。带的人多了,自然就慢慢走上管理岗位。何况在中国,学而优则仕,大家都以当官为荣,更重要的是,升职加薪往往是一体的。这样在个人和社会的推动下,大多数人都走上了管理岗位,走上创业道路的也不少。有人会说,不对呀,管理岗位就那么多,哪容的下那么多人?但别忘了,这二十年高速发展,产业规模不知道扩大了多少倍,发展就意味着新的空位。那时还没有PMP证书这一说,基本上是边带人边摸索如何管理手下。
当然,并不是人人都适合做管理,有的人就不愿做管理,还有一部分人管理没做上去,比如那些去外企的。在我们那个时代,外企可是香饽饽。马云不就说过,阿里开始招聘的都是二流人才,像Google、微软、甲骨文这样的跨国公司才是程序员心目中的NO.1。外企管理相对规范,组织架构比较成熟,中国员工在其中的上升通道并不多,关键还有一点,在外企管理和技术是并重的,不一定需要升职,才会加薪,而一名工程师比项目经理收入高也是可能的。所以说大龄程序员应该最多集中在外企,再就是一些研究所,而外企这几年在中国风光不再,研究所这些地方过去都是图个安稳,很难吸引到新人。年轻人去的多是新兴的互联网企业,那里是年轻人的天下,自然很少能见到大龄程序员。
在弄清楚了为啥40 程序员很少见之后,接着再探讨一下年龄大了,能否继续从事编程工作。
一种流行的说法,随着年龄的增大,以及家庭原因,中年程序员的精力自然下降,自然拼不过年轻人。这种说法有一定的道理,但编程主要还是一种智力劳动,而随着年龄的增长,体力下降更明显,但我们只要仔细观察,体力劳动的行业,比如建筑(这可是真正的搬砖)、农业,中老年并不少。为啥?因为这些行业工作薪水不高,收入又低,吸引不了年轻人。虽然程序员喜欢吐槽996,但年轻人还是不但涌入,这说明IT行业的收入还是普遍比其它行业高,要不又辛苦又没钱,谁还来做程序员呢?
现在的问题是,到了80后这一波,人群基数大,但管理职位有限,能够跃到管理层的毕竟是少数,其余的程序员还有更多的选择吗?当然转行是一种选择,但转行成功的概率有多大呢?再说很多行业还不如IT行业呢!我想,等80后开始迈向40 的时候,那时,40 的程序员应该随处可见。人为了生活,再难也得坚持啊。当然,有人说,老板宁愿招年轻人,中年程序员没竞争力。但这有一个前提条件,那就是中年程序员薪水比年轻人高很多,性价比不高。问题是,假如出于生活的压力,中年程序员放下身段,开始和年轻人拼价格呢?当然现在的40 程序员还没有沦落到这种程度,虽然现在嘲弄、悲悯中年人是媒体的主要调调,但即使外企大撤退,裁掉了很多员工,但这些人真的就失业了?至少目前还没大量报道,以媒体这种尿性,要是真有这样的事,不早就刷屏了。不要以一两个人的自杀来抬杠,这是小概率事件。
现在因为40 的程序员比较少,还有足够的高级岗位能吸纳这波人,无需放下身段。等80后纷纷迈入40 ,那就难说了,如果IT行业仍高速发展,那还好说,否则到时估计要打价格战了。
另外说说精力,其实中年人的普遍耐受力很强,不管是精神上,还是体力上。每次跑马拉松,发现其实中年人的比例不小。至于精神上,老板批评两句,年轻人可能会撂挑子,而中年人考虑家庭、事业各种因素,可能更容易忍受苛责的老板。
不是40 不适合干程序员,而是中国大量的程序员还没到40 。以前看到国外有白发苍苍的程序员,总会感叹国外人重视技术,老了也能干技术。这只不过是国外IT行业起步比中国早多了,别人只不过是年龄到了。
说到这里,我并不是说程序员这个职业就此高枕无忧,毕竟有竞争存在,自然不会那么轻松。面对年龄的增长,程序员需要根据以下几点应对:
1. 自己到底喜不喜欢搞技术,能不能做管理,或者进入培训行业。如果能够转行,那是最好。如果确认自己就适合做技术,那就不要自己吓自己了,安安心心的做技术吧。其实从这几次大规模裁员来看,做管理的,特别是中低层管理人员,反而更难再找到满意的工作。中国有句老话,掌握一门手艺,总归是饿不死的。
2. 保持良好的心态。IT业的高速发展,让我们想当然的认为跳槽就是要薪水翻番,刚毕业薪水就该20 ,工资每年至少增长20%。其实放眼到全行业,能达到这种水准的真的极少。如果你能接受人到一定时候,水平没增长,薪水也会停滞增长,自然就不会那么痛苦。这就如同体育明星,在位的时候该灿烂,谢幕了也能接受落差。
3. 即使是专研技术,最好是能够下沉,做一些框架性的工作,以免以后靠打价格战。更重要的是,永远保存年轻的心态,碰到新技术不要第一反应是我不会,也学不会,而是积极专研。
这篇文章是用微信公众号手机端应用编写的,吐槽一下,真的很难用。
参考资料:
1. 1977-2014历年全国高考人数和录取率统计:http://edu.sina.com.cn/gaokao/2015-06-18/1435473862.shtml
2. 中国重点高校计算机专业的起源:http://edu.sina.com.cn/gaokao/2015-06-18/1435473862.shtml