纪念劳动节一百三十年,兼谈美国程序员的工作时间和报酬

今天是五一国际劳动节。这一节日的缘起,是1886年5月初在芝加哥干草市场的罢工工人集会示威,因为不明缘由的炸弹事件引起警民冲突,导致双方的重大伤亡,事后对四名工人施以绞刑,美国乃至全球工人运动因之风起云涌。后来北美的工会将劳动节定在9月初,接着美国各州和联邦政府立法,将劳动节定在9月份的第一个星期一,而世界其他国家大都将劳动节定在五月一日。不管怎样,这一以维护劳工利益为主题的节日,到今天差不多已经有130年左右的历史了。

当年芝加哥工人大罢工,最主要的的原因就是抗议超长的工作日和微薄的工资收入,工人们在恶劣的劳动场所卖命,换来的是在贫民窟艰难度日,与之形成鲜明对比的,则是富得流油的老板与生活优渥的高管。工人们最主要的诉求就是每周工作5天,每天工作不超过8小时,并且得到合理的报酬。

从那之后,几乎世界上所有地方,大多数工薪阶层都是从周一到周五,上午八点上班,中间休息一小时,下午五点下班。需要较长或连续作业的企业或工种,则采用两班倒或三班倒的办法。这样的劳动作息时间通常被称为855制。

在美国,从事软件开发的很多人来自印度和中国。无论是系统软件、应用软件还是网站开发,都离不开代码,所以在美国华人圈子里,软件工程师常常自嘲为“码农”,即和代码打交道的“农民工”。那么美国码农们的工作时间,是否像有的国内知名大型信息产业那样,每周要工作60-80个小时,或者是早九晚九每周六天,即所谓996制,而且还被有的大老板美其名曰“福报”呢?

以脑力劳动为主的企业,例如今天需求旺盛的信息产业,劳动者能否保持极佳的记忆力和旺盛的分析能力至关重要。许多权威性的研究已经证明,高强度的脑力劳动每天如果超过8小时,会造成效率的低下,以致于加班变得没有意义。因此,美国的信息和软件公司,包括硅谷的那些巨头企业,“码农”们的上班时间基本上都保持在8小时左右,还包括大约半小时的午餐时间。除非有特殊情况,公司是不会要求软件工程师们加班的。

在一个“码农”们交流心得的讨论网站上,有一个问题就是“硅谷典型的工作时间是多少”(What are the typical work hours in Silicon Valley)。其中有一位网名叫KirinDave的,他按照公司大小和员工层级对此加以条分缕析,具有一定的说服力:

加州的大型科技公司:员工通常每天工作7-8个小时,极少情况下,例如项目到期,为了赶工可能会加班,甚至每周超过50小时。软件开发总监(Director)级别以上的高管则另当别论;

员工不超过300人的中型公司,即那种说大不大说小不小、前景尚不确定的企业:此类公司的体制尚待完善,管理层面临相当的压力,但是基层员工的工时则保持在8小时左右,特殊情况下可能会有临时性的加班;

小型初创公司:这种公司多靠风险投资创业,其三五创始人会很卖命,每周70+小时不稀奇,但是这样拼一般不可能长久坚持。普通员工则每周工作50-60个小时,比其他公司都多,但是他们寄希望于公司能够站住脚跟,将来有可能得到回报。

2018年5月美国计算机程序员年平均工资按地域分布图(劳工部劳工统计局)
2018年5月美国计算机程序员年平均工资按地域分布图(劳工部劳工统计局)

KirinDave的说法可以从美国劳工部劳工统计局的工资数据中得到佐证。该局发布的数据显示,2018年5月,美国从事软件开发和编制应用程序的技术人员共有903160人,他们的工资中位数为每小时51.96美元,全年工资中位数108080美元,平均下来每年工作2080小时。如果去掉周六和周日,再假设有5天的法定假日(非联邦政府雇员只能享受部分联邦假日),公司休假两星期,则他们每天工作8.46小时。