正文
PDP-11 和 Unix / C 催生出第三代程序员。那时候没有前后端程序员之分,也没有系统层和应用层程序员之分,一个程序员既能和硬件中断打交道,又能提供优质的 UI(命令行界面)。市场对程序员的需求继续疯狂扩展。
也就是几年的光景,PC 开始挑战小型机的地位。76 年 Apple I 发布,81 年 IBM PC 发布,PC 一下子把计算机的价格拉到了一千多美元,是小型机的1/7 到 1/10,这下中产都能买得起了 —— 计算机的发展从此以无法想象的速度大爆炸。我们敬爱的盖老师看到了这一历史性的时刻,萌发了让千家万户的卧室里都有一台电脑的宏大志向。
八十年代单是 Apple II 就销售了上百万台,更别说千万量级的 IBM PC 及其兼容机。
这么大的增量市场,需要海量的程序员来填补软件上的空白。到 1990年,还没有发布 Windows 95,行业地位并未垄断的微软已经有 5600 名雇员(其中主要是程序员),收入 11 亿(见:https://www.thocp.net/companies/microsoft/microsoft_company.htm)。80年代的第四代程序员的数量,估计已经膨胀到了百万的量级。
八十年代产生的重量级语言是 C 的两个继承人:
90 年代多媒体电脑来临,奔腾的心配上 win95,个人电脑真正进入千家万户。大街小巷传唱的 "You don't even have to try, it comes easy for you ... good times, bad times gimme some of that" 简直就是程序员的内心独白。
win95 第一年的销售是四千万个拷贝。而个人电脑在 98 年,跨过了上亿的年销量。
99 年到千禧年的世纪之交,一年时间,Microsoft 的雇员从 31k 涨到了 39k。而上文中提到的十年前的数字是,5.6k。猜猜 90 年代的第五代程序员的需求?起码在八十年代的基础上翻两番。
之后的历史大家应该都比较熟悉了,我就不详述了。互联网崛起,社交网络崛起,移动互联网崛起。从 07 年到 17 年,单是 mobile developer(iOS/android) ,从零增长到 1200 万(见:http://www.businessofapps.com/12-million-mobile-developers-worldwide-nearly-half-develop-android-first/)。
这是一个多么可怕的数字!早期入局 mobile 的程序员将享受到无与伦比的红利。
而现在,全世界的程序员已经在数千万这个量级(github 用户数已突破 2100 万)。AI,Big Data,Crypto Currency,IoT 不出意料将会是新的需求大户。2017 年,美国劳工部公布的(https://www.bls.gov/news.release/jolts.t01.htm#jolts_table1.f.3)在 IT 行业这个 sector 下,每月平均有 100k job opening,我们按半数是新增来计,全年 600k new opening,如果其中 1/2 是程序员,全美一年 IT 行业的程序员新增需求是 300k。考虑到其他行业虽然不属于 IT,如 Finance,Education & Health service 等,但也有大量程序员的需求,各行各业全部加起来也按 300k 算,那么一年 600k 新增需求,而 2016 年的 CS new grad 不到 50k。缺口依旧巨大。
历史告诉我们,对程序员的需求不仅仅总体强劲,围绕着热点的,局部的差异更加可观。PDP-11 热销的时候,C / unix 程序员相对于 Fortran 的新增需求,可能有十倍的差距;windows 时代,windows 平台上的程序员的新增需求,相对 unix,可能又是数十倍甚至百倍的差距。
另外一个有意思的特点是,由于供需的不平衡,在不同的地域间(比如中美),程序员这一职业产生了巨大的套利空间。聪明的公司会利用这个空间来降低自己的支出,从而引发低价格的区域的程序员溢价(鲶鱼效应),从而推高程序员的总体平均价格。2006 年我在 Juniper 时,一个美国程序员的薪水,相当于中国程序员的 3-4 倍,如今,仅仅在 2 倍上下(当然这也得益于中国互联网一日千里的发展)。印度的大量软件外包(劳务)公司,如 InfoSys,则是把程序员套利交易做成了一个利润空前的生意。
回顾这段历史,还有一个很值得玩味的地方:
市场一直对程序员的需求强劲,可靠的供给却严重不足
。70 年来,几乎平均每五年,对程序员的需求就增长一倍。这意味着市场上大量充斥着 < 5 年工作经验的,新入行的程序员。这意味着什么?在这样一个疯狂的市场下,程序员这个职业本身已经获得比其他职业高得多的溢价,而靠谱的,有经验的程序员,则很容易在这个溢价的基础上,再翻上一两番。没办法,这是供需决定的。
供需的极度不平衡,局部领域(地域)变态级的不平衡,是程序员高薪的第一个秘密,也是最主要的一个秘密。