亚马逊程序员:我曾拼命逃离996

JAVA葵花宝典

共 6263字,需浏览 13分钟

 ·

2020-12-27 12:27

作者 | 佚名
译者 | 刘志勇
策划 | Tina
排版 | InfoQ
2019 年,中国程序员抗议 “996” 加班走红网络,呼声传到国外,最终引发全世界的关注,Python 之父曾为此两度发声,声援中国程序员。此起走红事件曾诞生过 996.icu 网站,被国产浏览器集体大棒封杀。本文作者是一名亚马逊员工,一度过着 996 的生活,虽然惧怕大公司的权力,但他把自己的想法,以及调节方式大胆的讲述了出来,很有借鉴意义。

我在亚马逊从事开发,熬到第二年底我就感到精疲力尽了。我不得不寻求改变,找到健康、可持续的方式,维护工作与生活的平衡,并再次享受工作。我写下本文的初衷是:

  • 提高人们的意识,尤其是对新员工;

  • 对亚马逊或其他公司里,有类似经历的员工以帮助和建议。

Hello,World

有关亚马逊的企业文化的轶事、观点和反驳都有不少。我写下本文并非为了跟风蹭热点话题,而是为了分享我的经历。我以为没有人会想听我的故事,但很明显的是,人们正经历着类似的经历,却没有发言权。

我在亚马逊任职软件开发工程师,现在级别为 SDE II;SDE II 基本上是指至少有 2~3 年以上行业经验的软件开发人员。我刚来亚马逊时,是从 SDE I 开始做起的。

对大多数开发人员来说,在五大科技巨头工作并非什么遥不可及的梦想。在通过一个计时的在线编程测试后,我飞到西雅图参加面试。回来后不到一周,我就接到了录用电话通知,并沟通了一般的薪酬和福利,以及特殊补贴,如搬家补贴、签约奖金和股票期权什么的。记住那些 “特殊” 的内容,因为接下来我将会提到这部分,很重要。

在最初的几个月里,按照公司标准接受了一些典型的座右铭和 “你的工作不仅仅是工作” (your work is more than just work)之类的培训。我现在算是看透了,但在当时,听了“世界上最以客户为中心的公司” (the World’s Most Customer-Centric Company)这样的口号,对于天真的新员工来说就跟打鸡血似的。

首先是寻呼值班问题

我在团队里待了几个月后,就被安排到随叫随到的轮换名单上。所谓的随叫随到,也就是待命,是下面这几个意思:

  • 每隔 X 周待命一周,其中 X 为团队成员数。

  • 在待命期间,你的其他项目在工作日最多占用你一半时间。

  • 工作日的其余时间集中在 operational issues 上(随时待命)。

  • 在待命期间,每天 24 小时需保持寻呼值班。

下面是寻呼值班的含义:

  • 如果你的团队拥有的 “东西” 进入了警报状态,就会呼叫你。这是故意含糊其辞的,因为它对不同的团队来说,意味着不同的事情。

  • 一旦被呼叫,你将有 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 下载神器强势回归!

巧用枚举来干掉if-else,代码更优雅!

如何正确访问Redis中的海量数据?服务才不会挂掉!

超硬核!1.6W 字 Redis 面试知识点总结,建议收藏!

浏览 8
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报