2019 年,中国程序员抗议 “996” 加班走红网络,呼声传到国外,最终引发全世界的关注,Python 之父曾为此两度发声,声援中国程序员。此起走红事件曾诞生过 996.icu 网站,被国产浏览器集体大棒封杀。本文作者是一名亚马逊员工,一度过着 996 的生活,虽然惧怕大公司的权力,但他把自己的想法,以及调节方式大胆的讲述了出来,很有借鉴意义。
我在亚马逊从事开发,熬到第二年底我就感到精疲力尽了。我不得不寻求改变,找到健康、可持续的方式,维护工作与生活的平衡,并再次享受工作。我写下本文的初衷是:- 对亚马逊或其他公司里,有类似经历的员工以帮助和建议。
有关亚马逊的企业文化的轶事、观点和反驳都有不少。我写下本文并非为了跟风蹭热点话题,而是为了分享我的经历。我以为没有人会想听我的故事,但很明显的是,人们正经历着类似的经历,却没有发言权。我在亚马逊任职软件开发工程师,现在级别为 SDE II;SDE II 基本上是指至少有 2~3 年以上行业经验的软件开发人员。我刚来亚马逊时,是从 SDE I 开始做起的。对大多数开发人员来说,在五大科技巨头工作并非什么遥不可及的梦想。在通过一个计时的在线编程测试后,我飞到西雅图参加面试。回来后不到一周,我就接到了录用电话通知,并沟通了一般的薪酬和福利,以及特殊补贴,如搬家补贴、签约奖金和股票期权什么的。记住那些 “特殊” 的内容,因为接下来我将会提到这部分,很重要。在最初的几个月里,按照公司标准接受了一些典型的座右铭和 “你的工作不仅仅是工作” (your work is more than just work)之类的培训。我现在算是看透了,但在当时,听了“世界上最以客户为中心的公司” (the World’s Most Customer-Centric Company)这样的口号,对于天真的新员工来说就跟打鸡血似的。我在团队里待了几个月后,就被安排到随叫随到的轮换名单上。所谓的随叫随到,也就是待命,是下面这几个意思:- 在待命期间,你的其他项目在工作日最多占用你一半时间。
- 工作日的其余时间集中在 operational issues 上(随时待命)。
- 如果你的团队拥有的 “东西” 进入了警报状态,就会呼叫你。这是故意含糊其辞的,因为它对不同的团队来说,意味着不同的事情。
- 一旦被呼叫,你将有 15 分钟的时间上网并回复该呼叫。
- 如果你不这样做,就会呼叫你的经理。这可不是你希望发生的事儿。
对我的团队来说,随叫随到并不算(现在也不算)太糟糕的事。最初我们平均每两周被寻呼一次;现在我们每周大约有一次被呼叫。而其他团队的情况就糟糕得多。不过,它是一种 “社交阻尼器”。如果你必须能够做到在接到呼叫通知立即实施 “紧急援助” ,你就不可能真正制定外出计划了。我之所以提到寻呼值班的问题,是因为它很 “特殊” ,因为唯一需要这种响应能力的其他职业是医生,他们是真正的救命恩人。当你第一次寻呼值班时,你会感到恐惧,心想:“这可不是闹着玩儿的!”在招聘时,除了通常所说的 “全职工作,你愿意晚上加班或者周末加班吗?” 之类的笼统问题外,并不会提及 “随叫随到” 的事儿,任何形式都不会有。有时候,为了完成一个大型项目,其他团队可能需要进行代码更改。当然,其他团队可能无法抽调所需的开发人员,于是你就被借调走了。在项目完成之前,你要在两个团队之间来回辗转,为两个经理服务。在某些情况下,那个其他团队认为他们可以抽出时间完成代码修改。如果他们不这样做的话,他们在某种程度上就会落后,所以你就被借调借出去了。任何读过《人月神话》(The Mythical Man-Month)的人都会觉得这样有问题。没读过这本著作的读者,可以通过维基百科(Wikipedia)了解一下这本书的要点:“在一个时程已经落后的软件项目中增加人手,只会让它更加落后。” (Adding manpower to a late software project makes it later.)我在亚马逊的至暗时刻就是借调出去的时候;事实上,我这辈子最糟糕的日子也正是借调出去的时候。在亚马逊工作的第二年接近尾声时,我被拉进了 “X 项目” (此为化名)。这个项目具备了一个前途黯淡的项目所具备的所有特点:- 高风险、高知名度(几乎和亚马逊老板贝索斯一样知名)。
我就不一一叙述了,但还是开门见山地告诉你吧:事情变得紧张起来。随着项目的进度落后,来自上边的压力越来越大,审查也越来越多。项目经理希望以最有效的方式向团队成员传递紧迫感,以取得适度的成功。周末也变成了漫长的工作日。当时我觉得项目的落后在很大程度上是我的责任,但到目前为止,我还不知道到底是不是因为我。不管是什么原因,是为了需要证明自己的价值,还是出于对失败的恐惧,结果都是一样的:我马不停蹄地工作。我清醒的每一个小时,都用来投入到写代码和修复 Bug 中。起初,我还是有一些自我意识的。我客观地知道,工作越多,只会降低人的工作效率,但必须这样做。到最后,精疲力尽占据了上风。我的代码变得越来越糟糕,Bug 的数量不断增多。“死亡螺旋” 的第一环已经开始旋转起来。最终,巨大的压力使我的性格发生了改变,明眼人也能看得出来,我变得很粗鲁,而我平时是很外向,很善解人意的。我以前也很有幽默感,喜欢开玩笑。我的同事们开始注意到我的变化,尽管我试图伪装自己。当时我开始选择工作而不是和朋友在一起,起初他们还能理解。“抱歉啊,我得工作了” 这句话在某种程度上是可以被人理解的。但到最后,他们也开始担心起我了。再一次,为了不给他们带来负担,我又一次误入了歧途,开始孤立自己——这是 “死亡螺旋” 的第二环。我们还没有走出死亡螺旋,但首先,让我们简短地说一下。还记得我前面提到的亚马逊的搬家补贴和签约奖金吗?有一点需要注意的是,如果你在两年内离职或被解雇的话,你就必须偿还这笔钱。当时我大学刚毕业,我几乎没有什么积蓄,远远不够还我所欠的钱。因此,如果我离开亚马逊的话,我不仅会失去一份工作,还会失去至少超过三个月的收入。所以,现在我可不能 “一走了之” ,当我意识到这一点后,随之而来的是令人麻痹的绝望。一旦我失败了,被炒鱿鱼了,那么我可能很长时间都找不到另一份工作了。千禧一代的未就业问题是一件大事。现在我的压力来自于要坚持一切工作——这是 “死亡螺旋” 的第三环。在这一点上,“自我调节”?No,不存在的。为了最大限度提高代码的输出,我一直靠着垃圾食品和咖啡续命。本来我一直有一定程度的失眠,但现在情况越来越糟糕了。最后一根稻草是我用睡眠换去代码的时候。这时,压力在我的脑海中变成了一个巨大的黑洞。我找不到合适的比喻。就是身体有被压垮的感觉。情感和思想上都没法逃避。我只能一遍又一遍地想着这有多痛苦。我想让这种痛苦随风而去。而这就是我一听到 “亚马逊” 这三个字就会出现的状态。就在那段时光里,我哭了很多次,有时在睡觉的时候,想到第二天还是这样的生活。有时候我和老婆一起哭,有时候我在卫生间哭过几次。但我没有在办公室哭过。随着我的脑海中只剩下两个想法( “痛苦” 和 “让痛苦停下来” ),没过多久,自杀的念头就悄然袭来。需要说明的是,这些想法我从未付诸于行动。我不想伤害自己,但这样的念头就是这样的:不管你真正想要的是什么,这种念头却一次又一次地出现,我最后用 “让痛苦停下来” 取代了 “让一切停下来” ——这是 “死亡螺旋” 的最后一环。终于,我寻求心理医生的帮助。我记得当时做出这个决定是如此的简单。就像你打电话给物业一样:“嗨,我家水管子漏了,麻烦叫个水管工过来修修吧”,我应该也找个人帮我看看。直到这时,唯一知道到底发生什么事的人就是我老婆。在这段时间里,我无法(但会试着)向她表达我的感激之情。我遵医嘱服用西酞普兰(一种抗抑郁药,在临床上常用语抑郁性精神障碍)。最终,“死亡螺旋” 解开了。几个月后,一切恢复正常我才停服了西酞普兰。从此以后,我严格将 “自己的需求” 放在首位,每天工作八小时,准时下班。我开始和朋友们约会。为了回报我的努力,经理给我多批了几天假。我被提升到 SDE II,身体甚至还很健康,可以庆祝这一喜事。“那又怎样?所以你把自己搞得精疲力尽,累坏了。你还能指望什么呢?” 我写下这篇文章是因为我需要把我的故事写下来,作为一个警示故事。我在这里,并不是为了给自己设定 “真正的” 程序员应做什么事情的标准,这很愚蠢。而且我也不是来妖魔化亚马逊的。至于我对亚马逊和杰弗里·贝索斯有什么话要说,我只有几句话。- 请重新审视你的奖金 / 搬家补贴偿还政策。我不知道 “正确的” 解决方案是什么,但如果这是你留住员工的手段,那你就完蛋了。
- 要尽可能坦率地、准确地说明职位的要求。只写上 “需要与聪明、热情的人一起工作” 这句话,就是懒政。
- 要鼓励员工不仅要批判性地对待想法,还要批判性地对待期望。要让他们相信,为了得到你的认可就必须放弃其他一切,这是一种虐待。
- 要认识到生产力和快乐员工不是零和游戏。顾客也不是愤怒的上帝,不会要求我们牺牲自己的利益。
- 我写的这篇警示故事并不是亚马逊所特有的。这种情况可能会发生在几乎任何人身上,尤其是在高强度工作场所中工作的人,特别是软件开发人员。
有这么一句话,我在论坛和 Reddit 上看过无数次,但直到我亲身经历后才相信:驳回不合理的期望是你的职业义务。你的老板可能一开始不喜欢你这样,但他们会因此而尊重你。(It's your professional obligation to push back on unreasonable expectations. Your bosses may not like it at first, but they will respect you for it.)我的另一个建议:存一笔Fuck You money。我知道,通过匿名发表这篇文章并不能促进讨论。我之所以以匿名的方式来发表这篇文章,就是为了能够要把这个警示故事说给你听。但我这么做确实有苦衷,要不是我真的害怕丢掉这个饭碗,我就不会通过匿名方式来发表这篇文章了。我们从现任员工那里听到的唯一其他声音都是支持亚马逊的:- 一位亚马逊员工对《Inside Amazon:在激烈职场与伟大理念的角力》的回应(An Amazonian's response to "Inside Amazon: Wrestling Big Ideas in a Bruising Workplace")
- 我叫 Brittan,我是一名亚马逊人。(My name is Brittan, and I'm an Amazonian.)
- 他们都是在 LinkedIn 发布的。我很讨厌在 LinkedIn 上发布的任何东西。所有的批评都没有什么说服力,所有的话都被淡化了。因为在 LinkedIn 发表的所有信息,都有可能被未来的雇主看到,因此,每个人都害怕祸从口出。
- 这些帖子都不是一线员工写的,分别是高级经理和人力资源代表写的。
我们并没有看到任何来自现任员工的负面批评,难道没有人不觉得这个现象很有趣吗?不管你在哪家公司工作,从来都不缺愿意抱怨的人。那么,为什么亚马逊的现任员工没有写过负面文章呢?以下是我看过的一些对文章的常见反应,请容许我抢先一步:“工作时间超过 40 小时是作为职业人的本分。” (及其类似意思)我完全同意,但这些应该是偶尔事件。每周 70 多小时的工作时间不应该是固定模式。他们应该得到管理层的赏识和奖励。“你为啥不少干点儿活呢?这好像不都是你自找的嘛?”这个问题,在我的脑海里一遍又一遍地重复着。加上前面提到的原因,我只是觉得有必要坚持下去。我觉得在被这样一家 “大牌” 公司录用后,如果我不全力以赴,就是在伤害所有帮助我走到今天这一步的人。我没有意识到的是,事实恰恰相反:通过打破自己,我确实表明了自己在某种程度上还没有准备好。谢天谢地,我确实挺了过来,并从中汲取了教训。“你浑身充满了负能量,难怪你会这样消沉。” 请看我写的下一段。除了我的故事外,我还想列举我在亚马逊工作的乐趣。毕竟我还在亚马逊工作,并没有辞职的计划。但是说真的,当没有发生危机时,也就是 80% 多的时候吧,开发人员的一天很少在上午 9 点之前开始。你通常可以每周在家工作一次。如果你有充分的理由需要提前下班,那也没问题(尽管下班后在家接着工作通常是出于职场礼貌行为)。在大多数职场,可能会提出着装要求,但 T 恤只适合商务休闲场合,能穿的话真是爽得不要不要的!必须得提提薪水。但我不会给出具体数字,因为这样的话可能会被人肉出来,但你可以上 Glassdoor(一家求职网站)看看来满足好奇心。当我很多朋友努力保持高收入的工作时,这是件好事。尽管我在本文中吐槽了亚马逊很多问题,但我仍然处于经济稳定的优越地位,现在也有了很好的工作保障。- 与 “巨人” 合作,并在 “巨人” 的基础上发展壮大
科技公司常见的招聘口号之一就是 “与聪明人一起工作”。虽然我通常对此嗤之以鼻,但对于开发人员的成长而言,不一定要成为房间里最聪明的那个人,这一点很重要。杰弗里·贝索斯在电子邮件中提到过招聘人员是如何一直联系我们的;这方面与我们的实际情况相吻合。我从 Google、Facebook、Netflix 和其他公司收到过招聘信息。我在西雅图的第一个月,收到的招聘邮件比我在前一个地方一年收到的邮件还要多。每天都有成千上万的人执行你写的代码,感觉是不是棒棒哒?很少有人有这样的机会给他们的朋友和家人看他们经常访问的网站,并说,“看,这就是我做的!” 也许这个激动的感觉最终会消退,但它仍然是我的心头爱。我现在被借调到一个新项目。又是一个 “DEFCON ZEROMG” 的项目,但我现在有了界限,并且还知道,如果我每周不超过 70 个小时,亚马逊也不会因此轰然倒下。工作和生活的平衡在很大程度上是主观的,但我现在自导了这种平衡对我来说是什么样子的,并且在努力工作的同时,我也要努力做到这一点。我只能希望你不必如此。作者介绍:
作者不详,因想保住饭碗,作者没有透露任何信息,只知身份为亚马逊程序员。
原文链接:
https://sourl.cn/TRq3g3
推荐👍: Github掘金计划:Github上的一些优质项目搜罗
推荐👍: V4.0 《JavaGuide 面试突击版》来啦!年初搞波大的
我是Guide哥,Java后端开发,拥抱开源,喜欢烹饪,自由的少年。一个追求 work life balance 的技术人。我们下期再见!