也许很多人知道,最近有个挺火的项目,叫996.icu。这个项目主要是介绍了软件界常见的"996"加班模式,列举了相关法规和相关报道,并提出了抗议。域名的意义是,加班996,生病ICU。

这个网站在网上的讨论很热烈。我也算是在软件行业里混过一段时间。所以蹭个热点,说说个人看法。

一些基本知识

在说看法之前,首先我想把什么是正常工作,什么是996,以及关于996的一些事实情况(至少是我知道的情况)讲清楚了。否则后面讨论容易跑偏。

谈到996,首先我们需要说国家规定的理想工作状态。工作时间是一周五天,周休两天,每天八小时。当然,规定并没有说明八小时的涵盖内容,因此分为两种。一种解读是,工作八小时,午饭休息一到一个半小时,不计在内。因此9点上班的话,对应6点或者6点半下班。但是有很多福利不错的单位,午饭一小时涵盖在八小时内。因此就变成了朝九晚五的工作模式。很难想象吧。被我们嘲讽当作社畜象征的朝九晚五,其实几乎是最好的工作制。

关于加班,国家的规定是。一天最多可以加班3小时,一周最多加班8小时,一个月最多36小时(一个月4.5周计)。

关于加班工资,国家规定是。延长劳动时间,支付不低于正常工资的150%。休息日安排工作又不能补休,支付不低于正常工资的200%。法定假日安排工作,支付不低于正常工资的300%。当然,对所有公司来说,不低于都会被默认视为等于。

996和一些变种打法

讲清楚正常工作,和加班的法律规定,下面我们就可以对比一下IT圈的实际打法了。996的原始意义是,每天9点上班至9点下班,每周工作6天。按照全部工作时间计算可以看到,周工作时间是72小时。如果扣除午餐晚餐各一小时,工作时间是60小时。横竖都是超过最长工作时间的。当然,名义上叫996,实际上有不同的弹性制做法。例如10-10-6,也就是比996晚上班一个小时,总工作时间不变。这类变形统称996,代表7x小时级加班。在此之上,还有时间更长的997。工作时间70小时,累计的话是84小时,代表8x小时级加班。以及最高级007,代表168小时级加班。由于一周只有168小时,所以007也是工作时间的极限,没办法再长。这个加班制也被戏称为"License to kill"。

当然,007并不是说我们就无需睡眠了。我们可以简单计算一下一个人的时间分配。假设这个人一天睡眠7小时,吃饭两个小时,洗澡上厕所等必要的浪费时间一小时。那么一天有10小时时间是必然处于无法工作中的。因此极限状态下的加班,最长限度工作时间也就是14*7=98小时。大概就100小时,这还建立在吃住在公司的情况下。再加班,就需要压缩吃饭和睡眠时间了。软件行业赶工的情况下,有周工作时间120小时的极限情况。当然,这种状态是注定无法持久的,结束后需要一定时间的放松调整。

996一个隐性前提

其实在讨论之前,我们需要讲一个隐性前提。996认为,工作的产出和工作时间呈正比。所以为了提升产出,我们需要加班。对于现在的软件行业来说,这是一个正常假定,然而并不是一个必然。产出正比于劳动时间,这是工业化的结果。我们的软件行业,正试图将所有软件的生产流程变成一个标准化的工业制度。

然而很多软件生产过程,或者工业化大生产中的几个特殊职位,依然是依靠几个人的直觉,天赋和经验。脑子想清楚比努力干重要,机遇和灵感比脑子想清楚重要。在这些东西面前,劳动时间并没有用,或者帮不上什么大忙,或者反而有害。在这些特殊的场景下,必然是不需要加班或者996的。然而不能因为这些特殊情况的存在,而否认当前软件行业是个工业化大生产的行业(或者说要逐步进入工业化大生产)。

从这个角度说,艺术式的软件开发,既不会产生996(因为没用),也对行业现状没有帮助。因为艺术式的软件开发,注定不能通过增加人手来获得更高的收益,因而不能吸纳劳动力。

分类讨论

讨论加班工资的时候,我们需要按照几个核心问题将情况分为几类。

  1. 员工是否在招聘前就知道可能面临加班,大致会是怎样一个加班量级。
  2. 员工是否能够收到加班的对价收益。(劳资溢价计入工资或加班后计入加班费都算,福利的话需要足额)
  3. 员工是否可以选择加班或不加班,而且基本不会因为这个选择受到除了加班费外的其他影响。

问题一讨论的是透明性,二讨论的是加班工资本身,三讨论的是公平性。一和二的关系非常紧密。有一就有二。很少有公司在招聘的时候大咧咧的说我们要加班,但是请你按照市面上不加班的工资和我们谈。而反过来,有二也很可能有一。很少有公司明明需要员工加班,也明明会足额给加班费,但是招聘的时候不说明白。因为给足加班费的情况下,唯一的问题就是员工本身适不适合(或者说想不想)加班了。隐瞒这个事实,招一堆不适合的人来再开除,也很少有公司这么无聊。这种情况下常见的是,公司自己也不知道下面会有一段惨烈的加班。

按照前两个问题,我将情况分为三类,最后再讨论第三个问题。一类是招聘的时候直接说明的公司。第二类愿意给足额或基本足额工资。第三类就是只有象征性补偿,或者只有福利,或者连福利都没有。为什么这么分三类呢?因为这三类的动机和影响各自不同。

招聘时讲明的公司

第一类的问题最小。在入职前告知,不侵犯知情权,也不套住人才。合同里说清楚996,并且把公平的对价补偿也写了进去。愿意来的可以来,不愿意的可以不来。很多朋友对这类的意见是,认真负责的好公司。

当然。严格来说,在合同里约定超过48小时每周的工作时间也是违法的。所以很多公司会有工作制告知,但是并不会体现在合同中。只要这个告知早于员工接受offer,那么就可以算为此类。

这类公司,加班的动机往往是程序行业的内在动机。可能很多圈外人不知道,软件行业的效率,和项目人数的平方成反比,随着参与人数的增加而迅速降低。这个观点是Frederick在人月神话中提出的核心观点。他的解释是,软件工作中,有一部分非常重要的工作就是沟通。程序员需要让彼此了解对方意思,才能写出一致无误的软件。而沟通很难群体进行,因而沟通的成本是和团队规模的平方成正比。因此实际践行中,一个团队的理想大小,会限制在10人上下。如果要再扩充规模,往往会虚胖。即团队内实际产生战斗力的人员仍然在10人上下,其余人就是围着干零活,感觉有力使不上。因此大型软件工作往往会采用横向或纵向的模式,来切分工作。例如将一个大型系统分为几个功能模块,约定好彼此的接口,分别开发,最后联调。这样做往往使得模块和模块间产生不少问题,甚至可能导致漏洞或逻辑问题而无法使用。然而从软件工程角度讲,仍然是一个非常好的提升总体速度的方法。当然,模块的切分也是有限的。模块越多,模块间的协调成本越高,总体质量变差的可能性越大。通过模块切分的方式,也无法实现无上限的加人。

那么,我们也就很容易理解这类加班的内在理由了。加班10%能解决的工作量,招人的话需要多招20%。这意味着更多的争抢,更大的人员流动性,更多的培训,磨合。而且加人还需要重新安排团队,更细化的切分项目,更频繁的沟通会议,更高的高级管理人员成本。就算能招到人,最后总成本上升可能远远超过20%。同理,996的加班高达50%-80%,如果招人的话,大概要招2-3倍以上的人,成本则可能高达3-4倍。就算按照加班工资实打实发,加班成本也就是2.2倍。作为管理者,有百分百的动机选择加班,而不是招人。对于他们来说,更实际的做法是入职的时候直接谈一个相对于不加班2-3倍之间的溢价package。员工也能赚钱,公司也能省钱。

愿意给予相当补偿的公司

第二类公司,起码还不算坑到底。如果是一般加班,老板的选择往往是强制结成年假,而不是支付加班工资。因为休一天损失100%工资,支付加班工资可要付150%-300%。然而996的加班往往太多。总不能一个部门半个房间都在休假吧。所以也有协商,部分结算,部分转为年假。

这类公司的理由往往是一般正常公司都有的,软件行业峰谷影响。例如,做2B的知道,年底的时候各种突击花钱,突击签单,争取用光预算。到了来年三月的时候,就变成了非常紧的项目压力了。然而到了下半年接近年底的时候,项目做的差不多验收了,往往单子又会跟不上。因此有些公司会选择以年为周期进行加班和调度。年初的时候多加一些班,到年底开始强制员工休假。如果休不了才进行加班结算。

特别注明一下。首先,这类年级调度加班调休的公司,如果超出每周8小时也是违法的。其次,公司原因导致的停工,其实不需要计算为假期。如果员工不同意使用自己假期,原则上单位需要照发工资和加班补贴。让不让员工干活随意,但是钱必须发。然而,很少有员工和单位这么对着干。

基本无补偿,甚至无福利的公司

这类公司是最常见的,其基本想法就是压低工资或是降薪,或者又干脆裁员。

压低工资很好理解,这似乎是劳动力密集型行业的通病。和员工谈的时候只谈工资,招进来就往最大工作时间利用。为了让员工不走,甚至会使用押金或迟发工资这类手段。这类事情员工通常得不到政府的救济。毕竟农民工欠薪这种事都要总理亲自去要。只是加班而已,似乎也就不那么严重了。一家两家如此做,多了之后,劳方也不管你们加班不加班了,总之就按照加班的开薪资。资方说不加班,劳方不敢信。一来二去,逆向选择,不加班的公司不好混,大家就都开始加班。而一旦成为行规之后,劳方更是不会相信什么不加班的事情。其实这个情况和招聘时讲明很类似,差别在于大家对加班与否的认知不统一。劳方认为我就是值这么多钱的,不加班就是这么高工资,所以公司没有加班费,属于违法违规。公司则认为,员工根本不值这么多钱。之所以给这么高溢价,就是因为要加班。最后就很容易发生纠纷。

我常见的情况是,如果是劳方市场,员工选择权更多,资方往往倾向于招聘时讲明白。因为一旦员工入职后发现劳方和事实相差太大,可以自行离职,不怕找不到工作。那么资方就要承担成本了。而如果是资方市场,通常就是大家都揣着明白装糊涂。反正入职后跑不了。

其实程序员现在也不笨,如果是大公司的话,一般也会找人打听打听是否在加班,面试的时候也会问。但是你可以看到各大公司对加班的态度,大部分对公开媒体的态度都是粉饰加班的,只强调要求员工全情投入。实质上我们知道这个说法也就是说说,不信你试试入职后问你老板,我的工作态度端正绝对全力投入,但是我就是不加班,行不行。

降薪和裁员是大家意见最大,也是反弹最大的。毕竟996相当于公司宣布降薪一半以上,不可能没反应。这个主要是因为软件行业景气状态有波动。仔细观察毕业生薪资就能发现,往往是一年出现天价,第二年就跌穿地板。软件行业的发展不全是线性的。一旦不景气,老板就有压缩成本的动力。压缩成本两个思路,一个是降薪,一个是裁员。然而降薪不好听,裁员补偿极高。怎么办呢?两个问题有同一个解决方法,996。如果同意的话,就是变相降薪了。不同意就无补偿离职了。这个思路有个尤其恶心的实现,就是年底的时候宣布996。这时候走人,连年终奖都省了。

实话说,这种手段叫杀人一千自伤八百。因为肯放弃年终奖和赔偿的主要理由,最主要是因为有一个不错的潜在机会。与其在这里熬着,还不知道拿不拿的到。不如在新工作的margin里找回来。相反,如果没有潜在机会,那不妨先混着。然而能很快找到不错的机会的人都是什么样的人?所以这种策略下最先走的,往往都是公司里的精英。反而是公司想开掉的平庸者更有动力留下来。

公平性的影响

所谓公平性,就是员工能够自己选择是否参与996。因为从道义上说,除了上面的第一种情况,员工和公司的合同只涵盖了40小时工作时间。国家标准也只涵盖了最多48小时每周的工作时间。除此之外的时间,员工并没有义务来工作,给没给够工资都没这个义务。加班费给够了,愿意来,是自愿选择。给够了,还是不愿意来,那是个人选择。不愿意来就给穿小鞋,在bonus和升迁上刁难,甚至威胁开除,这就是逼迫了。

然而现状是,很少有公司敢于说自己是公平的,甚至很少有公司意识到这个问题。大部分公司在考评的时候,都会有一项,工作积极性。其中不愿意加班的人,这项肯定不会太好看。然而细想的话,用员工下班后的表现,考评员工的工作积极性,这是个什么道理呢?

一个隐性的问题

996是不是好事?当然不是,对于大多数人都不是。首先第一点无可反驳的理由。这个行为违法。要相信国家,相信法律嘛。然而法律为什么规定40个小时呢?是不是太保守了?一周最高98个小时,干个70小时不过分嘛。

996对于个人来说,既是个机遇,也是个障碍。短期来说,会有一份非常不错的收入。而且996能为程序员提供很好的上升机会。因为学东西的速度是和工作时间相关的,而上升通道是和毕业年限反相关的。一个机会,同样水平的人,一个毕业一年,一个毕业五年,当然是先选择毕业一年的,因为潜力更大。996能够极大提升新手的机会。

然而当程序员进入30后,后遗症就接踵而至。首先,996会减少员工和家人朋友相处的时间。会做程序员的人本来普遍就不会特别善于交际。相处时间进一步减少后,就很少能有足够的时间谈恋爱。所以程序员单身狗的名号不是白来的。虽说结不结婚是个私事,然而从国家总体角度来看,这当然是个坏事。都没结婚,哪里来的二胎?靠女装么?其次,996普遍减少学习的时间。这使得程序员除了公司相关技术外,自己学的东西很少。软件行业又是个更新换代非常快的行业。最后,当技能没有更新的程序员,和愿意996的竞争者竞争的时候,往往就会被淘汰。因此常有个说法,程序员过了35做不下去。这对个人和行业来说都不是个好事。

所以总体来看,最好是30岁之前996,30岁之后正常工作。然而工作制度的事情并不是随个人想法而改变的。对于行业来说,如果规定至少150%工资,那就是150%。没有人会多给。对于行业来说,一周标准是50小时,那坚持工作40小时的程序员就会失业。之所以要确定行业标准是因为,企业一定会在标准范围内最大限度的利用资源。如果没有统一的行业强制标准,会出现这么一个现象。某个企业提出加班到一周50个小时,另一个企业提出加班到60小时。25岁的程序员说我可以接受70小时,22岁的说我可以接受80小时。这么搞下去的结局是地狱。

这个问题,即便是第一类公司,也没有解决。他们能做的只有,给员工足够的工资,足够的晋升平台。但是他们却不能说给行业做了个好榜样,甚至不是一个好的竞争者。他们的成功,无疑鼓励所有公司尽情加班,只要给钱。无疑限制了程序员行业只能牺牲年轻的肝,让他们在35之后面对茫茫的未来。同时也限制了软件行业的总供给,因为35后的都转行了。

因此,国家制定了各种规章。即便牺牲总体效率,也要限制无底线的加班竞争。而且这一点不仅限制没给够补偿的公司,也要限制给够了补偿的公司。然而很遗憾的,这些规章非但没有贯彻,甚至不被理解。

主人翁意识

很多老板提到主人翁意识,提到拼搏奋斗。拼搏奋斗当然是对的,然而主人翁意识就要看员工在整件事里的收益了。我们不常提,然而又无法避免的一件事是,员工和老板很多时候不是一条心的,甚至往往是对立的。员工不是企业的拥有者,不在企业的获益里有分成(或者说不是所有员工都有分成,有也不一定是对等分成)。要求一个不从整件事里获益的人,为这件事拼搏,本身并不合逻辑。这个问题更扩大点,国家也要求每个公民有主人翁意识。为啥各位大老板不能者多劳一点,把每年的盈利全上缴国家呢?主人翁意识的前提,就是员工从整件事里获得合理的收益。而合理收益的最直观体现,当然是加班费。连加班费都没给够的公司,我们又如何能相信公司能为员工提供足够的分成呢?

事实上,主人翁意识本身就是个悖论。如果员工真的有将企业当作自己的事业来干的干劲和能力,那么他为什么不自己创业呢?现在社会,技术不是壁垒,资本不是壁垒。创业可以说是最好的时机。从这点来推论,大部分在企业内就业的人,要么是不会将自己视为企业的主人,要么就是将要创业的。

有什么可以做的

最简单的,请慎重考虑996的度,以及对人生的影响。有些公司996是因为真的临时有问题。这种公司虽然短期内不合法,但是我仍然认为值得一去。然而多短,多大程度的加班才是可接受的。这个加班又会如何影响你的人生呢?请自行仔细考虑。起码,我不希望我的读者因为996而去世。如果你觉得无法容忍,最低限度的,你应该离开。

其次,我希望大家都提升效率,更有效的工作,并离开996的公司,参与规范工作的公司。这不仅对你有帮助,而且能够帮助整个行业。因为如果做事规矩的公司,因为你而可以对抗施行996的公司,那么会给市场上多一些选项,给其他人多一点希望。

最后,我们希望大家帮助劳动法落地实施。劳动法并不是一部闲的没事干的法律,尤其是劳动时间限制这块。我们有很多法律缺失,然而加班这块法律实际存在,却没有实际实施。所以希望大家在面对权益损害的时候,能够勇敢的合法对抗。至少国家现在也在宣传依法治国,那么实践一下总没错吧。即便不想亲自对着干,也可以考虑支持或给予方便。最低限度,希望大家理解支持并同情权益受损的人。毕竟这些人,可能是你的昨天或明天。

其他行业的一点情况

当然,最后我要说的是,程序员是一个特殊的群体。我们毕竟有高收入,可能无法,但是也可能可以弥补我们加班逝去的青春。我们有发声渠道。社会还能听见我们的声音。然而社会上还有很多行业,加班程度远远超过程序员。例如出租车司机。就我了解,这个行业的特性是做一休一,24小时交班。计算一下就知道,周工作84小时,追平997。但是这是司机的日常。一年365天,连春节都要上班,还得面对程序员写的打车软件的竞争。你看出租车司机有开11365.icu吐槽一下么?又例如医生。在住院医阶段,就是住在医院里的。这个位置的意思就是007,一周98小时。而且医生需要压缩睡眠,工作时长甚至超过007,持续还得持续一年。你又看谁说我们医生太辛苦了,我们把医院关了吧。或者医生收入太低了,我们把诊费和工资翻个倍吧。

我写这些例子,并不是说大家都是这么过来的,你们程序员贱人就是矫情。我是说我们有很多不公平的工作制度,在伤害个人,在伤害行业和整个社会的未来。我们在经济大发展的年代,一切都要跑步前进,没有停下好好看路,也就罢了。现在经济不景气,大家日子都不好过。在这个时候还疯狂加班,是想干什么呢?不如趁机把这些事情扳一扳。毕竟,很多事情再不扳,就来不及了。