知乎专栏

IT 行业加班到底有没有价值?首先,你要明白这个原理


这个问题很容易简单粗暴的回答, 有或者是没有。

只是如果你管理过工程团队,你就会发现,其实这两种回答,似乎都不是很对。

对于说加班没有价值的说法,只要从事管理的时间稍微长一点你都会有某些时候加班效果特别好的印象。我之前一直在北欧公司工作 (Opera),可以说是全世界最尊重劳动时间的地方,同样也经历过很多次加班。 比如,Opera 14 发布前 2 个月, 整个 Android Mobile Team 的人都是 6 天工作制, 这个可是在瑞典哦。

同时,你还会发现,有的软件工程师经常自愿待到很晚, 这个可不是别人要求的的哦, 如果说加班没有价值, 这些自愿待很晚的工程师的是脑子出了问题吗?

对于说加班有价值的说法,你也绝对能找到反例,因为国内很多公司的加班方式确确实实,除了让老板看着你在努力干活以外,没有任何价值。

比如经典的早 9 晚 9,实际上 6 点以后磕瓜子混晚饭上淘宝看微博比比皆是。如果你反驳我说你晚上 9 点还在努力工作,那你早上 9 点一定磕瓜子上淘宝和同事扯淡,或者中午吃了个巨长无比的中午饭。我在这个行业里面工作了 10 年,从来没有见到有人可以长时间集中精力 10 个小时,事实上,就算是非常好的开发人员,平均每天能集中精力工作的时间在 6 个小时左右,不信自己可以测算一下。

那么问题来了, 如果有和没有都不对,那么正确的答案是什么?

要理解这个问题,需要先理解软件工程师们的本质的工作方式是什么。 这里先请出一位大神:Y combinator 的创始人 Paul Graham.

IT 行业加班到底有没有价值?首先,你要明白这个原理

说到加班这个问题上 (本质上是软件工程师时间管理), 这位仁兄有一篇非常有意思的文章:

Maker’s Schedule, Manager’s Schedule

有兴趣的可以仔细读读,不过总结起来说,加不加班, 包括应不应该用弹性工作制,打不打卡,其实都是因为软件工程师的工作方式和传统意义上的工人有巨大的区别。

所有的原因都基于一点:软件工程师需要整块的时间。

这个时间可能是 1 个小时,也可能是 3 个小时或者 5 个小时, 如果软件工程师在这个时间块中被打断了,那么重新恢复工作状态的时间会非常久。 举个例子,如果一个软件工程师在解决一个问题需要 4 个小时,然后在这位同学工作了 2 个小时以后,突然老板安排开一个会,可能就开了 10 分钟,那么这位同学重新开始工作的时候,可能需要再花半个小时,才能记起来之前工作的种种细节,然后才能继续工作。所以表面上工程师只被耽误了 10 分钟,事实上,耽误的时间是 40 分钟。

如果这个原理你理解的话,那么加班到底有没有价值的问题就非常好回答了。

假设一个工程师下午 4 点钟突然发现了解决一个问题的办法,不过很不幸的是,解决完这个问题需要 4 个小时。 那你是希望他上班上到 5 点然后第二天继续来做呢,还是加班到 8 点,做完再回家?

当然是加班到 8 点,做完再回家, 而且不仅作为团队 Leader 的你会这么想,工程师自己也会倾向于这种方式。 毕竟他也知道, 做到一半,第二天再来,捡起来非常耗时间,麻烦,且没有效率。

只有这种形式的加班,才是有价值的,而且是有非常大的价值。

只是你有没有注意到,这种加班一定要和弹性工作制结合在一起,因为如果别人工作到 8 点你还是要求他第二天 8 点来上班,他很快就会 Burnout (wikipedia.org 的页面), Burnout 状态的员工就和植物人一样,没有效率的,不管你让他一周工作 9 个小时还是 90 个小时。

合理的动机和激励可以提高 Burnout 的阈值,这就是一个团队打了鸡血的状态,这个是另外一个很大话题,这里不展开讲了。

所以, 软件工程师开发中,加班的管理其实是和时间管理一起处理的。 说到底,是以任务为导向,制定 dead line 以后,然后工程师自主安排时间,然后尽量少去打扰他们, 爱加就加,不加就不加, 任务完成才是第一。

而整个 deadline 的设定,工作量的安排实在是管理人员分内的工作,做得不好,不管怎么去时间管理,都不会有很好的效果。

现在你理解为何所有的很成功的软件公司 (Google, 微软,FB )都是用的弹性工作制了? 这些都是资本社会的公司,如果富士康式的工作制是最好的,他们早就富士康化了,大不了公司不开在美国呗。

什么, 你说这样子让他们自己管理自己要是都磨洋工怎么办? 你还有考核机制呢……工程开发团队哪有那么好管是不是。

所以说,实行弹性工作制的同时也多看看好的公司是怎么考核员工的,否则,他们真的会磨洋工,软件工程师都是很聪明的对不。

说了那么多,最后说一个挺有实践意义的做法,如果你的项目很紧需要加班, 你又确实不理解弹性工作制是个啥,那安排在周末一天的效果远比强行延长工作时间要好。作为 IT 圈的同僚,我只能帮你到这里了……