连续加班一个多月后,反思一下为啥国内程序员加班这么多

2023-03-28 15:04:26 +08:00
 zzzzzzggggggg

连续加班一个多月后,反思一下为啥国内程序员加班这么多

关注程序员耳东,编程转码真轻松

防杠指南:本文不适用于资深大佬,若喷必回

今年过完年之后一直在加班,关注我的粉丝应该也能看出来,2 月份和 3 月份写的笔记确实比较少,最近才开始恢复

加班完毕是得好好思考一下,毕竟咱这班也不能白加了对吧,我得好好想一想到底是为什么会导致我加班,我细数了一下平时导致我加班几个主要原因,大家看看有没有共鸣

业务需求倒排期,改的随意

互联网公司的业务迭代是非常快的,尤其是电商、营销相关的业务,基本上随时都在出需求,需求顺排倒还好,无非就是给了排期之后顺着做就行了

但是有一个非常蛋疼的点,如果这个需求业务方要的非常急,比如说 15 号出的需求 PRD ,月底就得上线,必须得倒排,那么就是说上线的时间定了,测试的时间占用一段,联调的时间再占用一段,留给开发的时间真的不多了

时间不够怎么办?要么加人要么加班,加人还有个问题,有的功能并不是很好拆分,而且人多了管理成本也在增加,1+1 并不是一定能等于 2 ,所以到最后就只能全员加班来肝需求

关于业务需求,还有一个可能导致加班的点是改的随意。

之前我在字节跳动打工的时候,每次需求评审会一堆年轻的 PM ,跟唱戏似的,你方唱罢我方上,哭爹喊娘的说自己的需求是多么多么的重要,常用的话术是:我这个需求是 xx 级别的老板看重的、我这个需求可以为公司创造 xx 的收入等等

一个个的 PRD 写的怎么样不重要,最重要的是抢占研发资源,最好可以把程序员固定在自己手里

等到需求开始做了,发现其实 PRD 里面有很多东西没想明白,这个时候就开始改 PRD ,改了 PRD 但是研发排期却不变,那这咋办呢?程序员加班呗

所以国内经常流行一个调侃的对联:

上联是:这个需求很简单

下联是:怎么实现我不管

横批是:明天上线

虽然这个对联是调侃的,但也暗示了很多公司在研发流程的不规范、管理混乱,这也是大部分程序员加班的重要原因

会议太多,占用时间

会议太多这个事情可能是大公司的通病,有时候屁大点事情就拉个会议,我细数了一下我一个月参加的会议:

  1. 需求评审会
  2. 技术方案评审会
  3. 需求复盘会
  4. 细节对齐会
  5. xx 项目启动会议
  6. xx 横向项目
  7. 技术分享会
  8. 周会
  9. 测试用例评审
  10. OKR 会议
  11. CodeReview 会议
  12. 等等......

其实这里面的会议真的太多了,有的团队还有早晨的站会等等,进一步压缩了写代码的时间

那能不能提升效率呢?我觉得可以

就说这个需求评审会吧,如果说每个人会前都能仔细的过一遍 PRD ,记录好疑点,那评审会完全可以开成答疑会,解答完疑问就差不多了,这样子可以节约很多时间,不至于一个需求评审会就开一两个小时

还有技术分享会,很多 leader 为了提升团队的技术氛围会要求组员进行技术分享,但是有的时候,分享的东西别人不一定感兴趣,深度把握的不好的话组员也会只把它当做任务去完成,这就是纯粹的浪费时间了

总之会议这部分,我觉得是一个存在很大提效空间的地方,一个事情是否需要拉会、是否要拉那么多人,是值得思考的

技术需求,各种丐版轮子

关于技术需求这个问题,我不知道是不是国内程序员的特色哈,就是纯做 PM 提的业务需求是很难得到好绩效和晋升的,因为这些事情是你工作职责范围内的事情,你很难说清楚这些事情带来的收益是 PM 的功劳还是研发的功劳

要想得到好绩效、超出预期,那就必须得做一些纯技术的事情,也就是所谓的“技术需求”,而且必须自己挤时间做,不会为这部分工作量专门划时间

常见的技术需求,比如说这两年特别流行的 LowCode 平台,据我所知很多大公司都在搞这种,并且是投入了很多研发的精力在里面的,美其名曰 LowCode 平台可以提高效率,所以在很多需求开发中强行推,要求研发必须使用 LowCode 平台来完成研发,但是在使用的过程中并没有提升效率,反而让研发增加了很多兼容成本和额外的工作量,不管能不能提供效率,先卷了再说

甚至有时候,多个团队之间在卷同样的技术轮子,一个大公司内部至少有 3 个 LowCode 平台、5 个组件库、3 个部署平台、4 个项目管理平台等等,大家都在加班卷技术项目,卷自己团队的存在感和好绩效

到最后,这个技术项目会出现在晋升答辩的 PPT 和汇报材料上,包装后的数字和成果都很亮眼,技术项目的发起者拿到了好绩效、晋升成功,等到晋升成功之后,这个技术项目的使命也就完成了,从此刻开始它就走上了烂尾的道路,历史项目也就留下了一堆烂摊子代码

老老实实做业务需求的人得不到晋升,做各种丐版技术轮子并且强推的人最后得到了晋升,这个问题在国内大公司非常普遍,这也是造成很多研发被卷着加班的重要原因

杂七杂八的事情,耗费精力

程序员还有一些杂事儿,也是相当的耗费精力了,我举几个例子

首先说线上 oncall ,这个事情其实也算是研发的正常工作范围内的事情了,但是如果一天出一个比较麻烦的线上 bug ,那今天肯定其他的事情就没空做了,或者只能加班去做

更不用说,如果所在的部门是基础架构部门的话,要处理技术之外的一些使用答疑事项,这部分事情毫无技术含量,和客服无异

还有就是非常强调技术要去深入业务,好嘛没问题,但是深入业务也是需要耗费时间的,这就意味着你除了读 PRD 以外还得去看 MRD ,可能你需要去和业务部门、市场部门的同事开会旁听 ta 门关心的事情,除过技术相关的东西以外还需要去关注业务指标

这又给自己增加了工作量,leader 不会说专门给这部分工作量去给你增加时间,只能自己挤时间了,这无形中又增加了加班

总结

我总结的这几个原因是我结合自身加班情况分析而来,可能国外的程序员也存在同样的问题,也可能有的人看法不一样,欢迎交流

19485 次点击
所在节点    程序员
159 条回复
goodsavage
2023-03-29 10:21:53 +08:00
主要老板傻,都以为加班能多写代码,其实都是上班摸鱼,混加班干点活
fredli
2023-03-29 10:24:41 +08:00
根本原因是劳动力供过于求,资本是买方市场
dog82
2023-03-29 10:27:53 +08:00
将帅无能,累死三军
软件工程是一门大学问,管理者把这个当成废纸
说白了还是人治,这事无解
pierswu
2023-03-29 10:34:23 +08:00
因为我们的工会只会组织旅游和吃吃喝喝
iojo9658
2023-03-29 10:43:02 +08:00
权利都是自己争取来的。大不了就延期。做不完就是做不完。谁说也不好使。还能指望别人替你发声?
之前疫情的时候,公司宣布某月集体降薪 10%,愣是没人敢在群里 argue 一下。我带头在群里反对,还只有 10%左右的同事附和。公司之后就没再提降薪的事儿。
反正你要是 argue 了,公司让步了,最后得了好处是大家的。公司翻脸了,处理的是你一个人。就这种氛围,我要是老板我也压榨。
hatw
2023-03-29 10:43:45 +08:00
“提前 3 个月!红石崖十三号路南段及三水工程完工” 中国就讲究这些,放在国外,该调查是不是有猫腻了吧。
RoshanWu
2023-03-29 10:48:34 +08:00
分主动加班和被动加班,提倡主动加,抵制被动加。说到底还是国内程序员们的选择权太少。
pkoukk
2023-03-29 11:05:45 +08:00
忍不住想杠你这个标题
反思,有啥需要反思的?程序员有什么错?
ilingfeng
2023-03-29 11:16:51 +08:00
国内大环境如此,具体原因。
1.国人大部分不会努力争取自己本身应有的权力,思想封闭,即使有冒头的也会被迅速按下甚至抹除,仿佛它不曾存在过,参考国内的工会
2.监管制度不作为,监管权力永远都是往逐利的地方去,普通的人权力牢牢的被监管者以家长的身份把持着
所以那种不卷的公司,如果没有产品护城河,很难生存下去
HenryLiang2019
2023-03-29 11:17:20 +08:00
可以反向思考下,如果大家就是不加班或者加班成本对公司很高,那就不会那么随意地提需求和改需求了
xuzhuocool
2023-03-29 11:17:46 +08:00
深有同感
yagamil
2023-03-29 11:20:08 +08:00
996 福报,洗脑了呗
人家那你赚的前在国外买游艇,豪宅别墅
deorth
2023-03-29 11:20:58 +08:00
欧美游戏动不动跳票一年半载,服务挂了一周不修。当 deadline 不 dead 的时候自然不用加班
libook
2023-03-29 11:34:26 +08:00
题主整理的这些信息其实挺有价值的,我个人一直认为,加班实际上是项目管理上的失败,这样的项目团队往往有着极差的交付可靠性,运气好能赶上 DDL ,运气不好也没有备用方案可以用,就只能眼巴巴 delay 。作为企业,没有可靠的交付能力,就意味着没法完全把握商机。

如果是自己作为老板、项目 leader 或者经理,可以将这些信息参考用于提升真丶效率,毕竟这就是项目管理的核心工作。

另外我真心觉得工人阶级对用人单位的监督和制约能力是需要重建的,而不是只是把希望寄于其他人或是一句“没那么容易”的自暴自弃,以前能斗争胜利,说明至少还有期望。
artnowben
2023-03-29 11:54:58 +08:00
维护开源项目 dperf https://github.com/baidu/dperf 一年多,都是用业余时间,起早贪黑,连加班都不算,诶~~~,好在项目已经有 1.7K star 了,在圈内很有知名度了,然而并不能当饭吃。

另外,与工作内容有些关系。如果从事底层开发,与业务关系不大的工作,并不需要经常加班。
zooeymango
2023-03-29 12:00:33 +08:00
同感,软件工程的任何一块塌陷都会影响所有人的工作,如果连续这样加班根本就是管理问题
liudaolunhuibl
2023-03-29 12:15:48 +08:00
@yaphets666 抓加班的执法成本太高了,不会有人去做的,只能靠社会风气,期望一下后面几代人吧
opentrade
2023-03-29 12:30:55 +08:00
@god7d 退休大妈跳广场舞
Musong
2023-03-29 12:32:33 +08:00
个人看法 几千年的儒家思想 导致人们习惯逆来顺受 工作上、政治上
opentrade
2023-03-29 12:33:57 +08:00
一边灌水,一边加班

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/927862

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX