查看原文
其他

讨厌“复制粘贴”的技术活,我放弃了年薪 200 万的岗位

伯乐在线 2022-06-25

推荐关注↓

来源:InfoQ 作者:Michael Lin;编译:核子可乐 褚杏娟

Michael Lin 跟随父母移居美国后,先后在 Netflix 和 Amazon 担任工程主管。2013 年,他从 Amazon 实习生做起,次年正式入职。2017 年,他进入 Netflix 担任高级软件工程师。在 Netflix 待了近 4 年后,不顾父母、朋友的反对,毅然辞职。他在自己的文章里讲述了自己离职的原因。

曾经的我,也以为自己会永远留在 Netflix。这里有着傲视同侪的薪酬待遇、充分的自由空间与企业责任、灵活宽松的假期政策,作为员工还有什么可不满意的?

但我还真就不满意,而且在 2021 年 5 月离开了 Netflix。大家都觉得我疯了,我父母最先跳出来反对:

“低头干活,你能不能踏实一点!"

“要懂得尊重自己得到的东西,懂得感恩。

作为经历过中国五、六十年代艰苦生活的一代,他们完全无法理解我为什么放弃这份工作,甚至认定我辜负了他们为了移居美国而付出的无数艰辛。不光是他们,我的朋友也对此深表疑惑。

“公司不是包餐吗?”

“那可是FAANG哦,一线大厂!”

“累了就歇会,不用辞职这么夸张吧。

但这些丝毫没有动摇我的意志。唯一对我有所触动的意见来自 Netflix 公司带我的前辈,他说我不该在没找到下家的时候就裸辞。这么一来,“我在 Netflix 拿到的高薪恐怕很难延续到下一份工作当中。”

我考虑了三天之后,还是选择离开。现在距离辞职已经过去八个月,我百分百确定自己做出了正确的决定。

借今天的文章,我想跟大家聊聊自己逃离这副“金手铐”的三个理由,解释为什么一年近 50 万刀的薪酬还是没法让我安心做这份自己不再喜欢的工作。

角色转换失败

受到新冠疫情冲击,Netflix 于 2020 年 3 月开始居家办公,我所喜爱的一切——社交、同事、津贴,全都没了,只剩工作。

很大一部分人都是因为喜欢亲切的同事、良好的氛围而坚持留在一家公司,新冠把这些美好的部分击得粉碎,让不喜欢的部分成了全部。

刚入职的时候一切都很美好。我在 Netflix 工作了快四年,一路成长为高级软件工程师。刚开始我的心态很平和,把工作理解成一边拿高薪、一边学技术。所以前一年半里,我一直非常喜欢这个岗位。

Netflix 最核心的吸引力就是一切产品决策流程均向员工透明开放,这与苹果和 Amazon 那种“讳莫如深”的管控思路形成了鲜明对比。这里每份产品决策备忘录都向员工开放,工作体验很像是带薪学习 MBA。

但之后的几年,工作内容就如同复制粘贴般毫无新意。

需要启动新的微服务?复制粘贴一项旧服务,调整一下业务逻辑,然后就成了。需要新的 A/B 测试?复制粘贴一项旧测试,调整一下测试变量,然后就成了。需要新的邮件测试?复制粘贴一项旧……

好了,大家应该明白了。

Netflix 特别喜欢 A/B 测试。上图所示,为公司主页欢迎词的四版测试稿

毫无疑问,Netflix 的工程体系运作得相当流畅,但我认为更值得思考的是各个项目到底有没有很好地利用工程资源。所以我想调到产品管理部门去,尝试引导一点变革和探索。

之后的两年,我不断在公司各个部门间跑来跑去,建立人脉、与新同事们交流,不断申请我能接触到的各种岗位。

每次申请新职务,我都会重申自己总结出的项目管理优先事项:客户服务、开发者生产力、工作室、合作伙伴关系与通知。我希望能在自己的团队中设置新的职能角色,专门管理不断增长的基础设施。我还提议其他项目经理把更多工作委托给我,腾出更多时间发展自己的组织。但这些提议最终都没有下文。

我花了两年时间在 Netflix 里跑来跑去,希望能拿到一份项目经理的职位,但最终没能成功。

回顾这段时光,我发现自己也有错误。如果再努力一点,没准我就如愿以偿了。但必须承认,Netflix 组织结构上的问题也制约着我的选择,而且几乎很难撼动。Netflix 并没有适当的流程来帮助员工实现职能角色的横向转换,我也从没见过任何一名工程师能在这里成功转岗为产品经理。

领导确实给了我不少跟产品经理合作、有助于培养产品技能的机会,对此我深表感谢。但跟产品经理合作和担任产品经理完全不是一回事,这就如同只读教材、不下水,我们永远学不会游泳。

积极性受挫,绩效下滑

这段失败的项目管理转型旅程深深打击了我的内心,高薪反而变得令人厌恶。之前的我是一边赚钱、一边学习,而现在就只剩下赚钱了。

这时候,我个人的兴趣也开始跟团队目标出现分歧。团队开始朝着更注重工程的方向推进,主要侧重于平台迁移。而我的个人兴趣则转向创业和产品管理,所以我的份内工作没法给自己的未来规划带来任何有意义的指引。

我开始感觉自己又犯了跟之前一样的职业错误——在一份并不适合自己的工作中待得太久。

这是个严重的错误,比很多人认为得要严重很多。假定我们一生的职业生涯总共做了五份工作,那如果你明知道自己不该继续、但还是在某个岗位上又待了两年,就意味把十年时间浪费在不感兴趣的事情上面。这已经不叫浪费时间了,这纯粹是浪费生命。每天看见公司的一堆提醒消息,我就头痛。

积极性下降后,我的绩效表现也不如以往。我越来越懒得参加会议,不想再做任何跟产品管理没有直接关系的工作,甚至回应工作消息的速度都变慢了。最后,我每天的唯一目标就是不被开除。这个目标我完成得很好、完成得恰到好处,刚刚跨过及格线、但又没浪费更多力气……这本身就是种悲哀。

很遗憾,我的变化都被经理看在眼里。经过两个多小时、期间冲突不断的绩效评估之后,他把话挑明了:1)我得多参加目前的迁移项目;2)我得多跟同事沟通。用他的话说,“要想继续留在团队里”,就必须做好这两件事。

但突如其来的新冠疫情为全世界,也为我自己敲响了警钟。

面对数百万个鲜活生命的逝去,我意识到生命可贵、未来无价。如果再拖延下去,也许我还没实现任何梦想就成了病毒侵袭中的下一个牺牲者,而且拖得越久,风险就越大。有什么想做的,必须马上去做!

我意识到金手铐所对应的这份沉重成本,这成本是我的青春、我的时间、我的生命。很遗憾,这些成本难以确切量化,但薪酬收入却可以……虽然前者的价值明显更高。品牌形象、心理健康或者一段美满的爱情都是这样,难以量化却又至关重要。

我不能再忽略职业规划这个大问题了,我必须尽快辞职。

想走倒是很简单,毕竟我的工作表现只要再差一点、就可以被直接开除了。但这样不行,我得拿遣散费。所以几周之后,我和经理单独谈了这件事,讨论了“裁员遣散费”的问题。

我开诚布公地说道:“我的表现不好,是因为我的积极性受挫。积极性受挫,是因为我发现个人职业目标跟团队的发展方向背道而驰。所以咱们别再拖了,直接谈谈 Netflix 的裁员遣散费吧。这样 Netflix 其实能省不少工资,你也能更快找到适合团队的新成员,我则去做自己想做的事。三赢,不是吗?”

在经理跟 HR 通过气后,我、经理和 HR 又组织了最后一次会谈。他们同意主动裁员,我则正常拿到遣散费。我,终于自由了。

曾经的“十倍工程师”

有的网友评价 Michael 的行为“被宠坏了”,也有人支持和赞扬。事实上,Michael 曾经一度也称得上是一位“十倍工程师”,他在 Amazon 的职级达到了 L7。从他对如何成为“十倍工程师”的态度上也可以看出,他非常重视个人心态问题。

他认为,“十倍”工程师和初级工程师之间的主要区别还是在心态上。前者使用正确的工具、能提出正确的问题,而且知道要如何确定工作优先级。这些都是非技术人士也能掌握的技能,跟编程本身其实关系不大。

在 Michael 看来,初级工程师常犯三个错误:

1. 对工具钻研不精

很多初级工程师犯的常见错误,就是一头扎进编码当中。他们坚持使用自己熟知的工具,妄想用一套工具搞定所有状况。然而,一旦掌握了正确的工具,以往需要几个礼拜的工作没准能在十分钟内完成。这就是十倍工程师能够成立的原因。

Michael 举例称,跟一位初级工程师打了个赌,看谁能更快搞个个人网站出来。那位毕业生花了 2 周时间,写了 1000 多行代码,但到截止时还没有最终完成!Michael 只花了 1 天,一行代码也没写。

这位初级工程师解释一下 TA 的问题处理思路:

“我在学校里学会 React 应用开发,所以我从零开始建了个网站。但我发现图像和 CSS 之间很难正确匹配,我也不知道该怎么部署。所以我觉得肯定得在 AWS 上编写一个自定义部署脚本,但又发现自己不太熟悉 AWS 控制台。这里的微型实例和大型实例到底有啥区别?”

这位工程师明显是遗漏了几个关键问题。她从未关注到:

  • 要求——不需要搜索引擎优化、不需要评论功能,也不需要预建模板。
  • 替代工具——她只知道 React 和 AWS,所以从头到尾只用这两个。

从零开始设计评论功能很麻烦、实现搜索引擎优化也很费时间,其中任何一项功能都能让整个团队忙一阵子。

2. 不愿寻求帮助

十倍工程师不是什么“孤独的天才”,他们也会寻求帮助!很多时候,初级工程师被问题卡住并不是因为不够聪明,而是缺少无法自行推断的上下文信息。

高级工程师们不会在代码库上苦苦挣扎、一遍又一遍对着相同的几行代码叹气。他们会向同事提问,并在 5 分钟内弄清自己需要知道的一切。经验不足但善于发问的工程师,永远强于头脑聪慧但却从不求助的工程师。

比如,大家都遇到过没有上下文指引就无法推进的任务。例如,很多事不可能单靠自己就想明白:代码库的结构为什么是这样、另一个团队调用的是哪个 API 以及部署机制是如何工作的等。

遇到此类问题请马上寻求帮助,而不是死抠代码库。问问题、交朋友,这才是工作之道。

3. 提供不了商业价值

“十倍工程师”们知道自己的工作是一项投资,所以投资回报必须远远超出他们耗费的时间成本。他们了解机会成本的定义,很清楚如果决定把时间用在构建一项功能上,也意味着另外一项功能要被暂时搁置。

他们知道代码只是达成目的的手段,而这种目的必然、也必须是商业目的。如果不用写代码也能达成目的,那不更好!编写工作量越少,需要维护的代码也就越少,这属于双赢。

但很多新手工程师并不在乎业务目标。例如:

“有项新技术超酷的,咱们花 5 天时间在网站里试试呗”(跟产品定位相符吗?)

“我不喜欢现在的代码结构,我们在下一个 sprint 重构里改一改吧”(机会成本——拿这时间新建一个能创收的功能不好吗?)

“这套平台太老了,咱们迁移到新平台吧”(迁移真能显著提高开发效率吗,还是跟老平台大差不差?)

如果初级工程师会花 2 个小时处理一项无法增加任何收入的复杂功能,那么高级工程师更愿意拿 1 个小时照搬一套能产生 5 倍收入的现有功能。时间更短、产出更高,相当于提高了 10 倍的生产力。

非技术技能也叫“软技能”,真正决定了最强工程师与初级工程师间的核心差异。即使大家绕开了前文提到的这些坑,但自己在脾气秉性上很难与同事合作、甚至无法和谐相处,那再强的技术水平也白搭。

Michael 重视感受,也更愿意听从自己的内心。这个曾经的“十倍工程师”心态受挫后,也只是维持到了及格线。

离开 Netflix 后

故事并没有结束。

Michael 原以为离开 Netflix 后需要很长时间才能回归正轨时,但事实却恰恰相反。

Michael 辞职之后,结识了更多新朋友——创造者、创业家与建设者。心理健康状况大有改善,不再担心错过电子邮件、没能及时接到同事打来的语音呼叫。

“现在,我感受到自己内心无比平静,甚至生出一股不可动摇的信念。一切都会好起来,即使不能保证未来一定成功,我也愿意在这条路上坚定前行。因为做的是自己认可的工作,所以我能很轻松地在周末处理事务。这种充实感、对于自己工作价值的深切认可,才是敦促人主动做事的最佳激励。”

这种对内心满足感的追求不仅没有影响 Michael 的收入,反而带来了更丰厚的潜在效益。

自 2021 年 5 月辞职至今已过去了八个月。期间,Michael 除了待在纽约的家中,还进行了两次自驾游,一次是去犹他州、另一次是亚利桑那州。之后,Michael 决定全力投入自己认可的工作当中,现在他是视频编辑公司 Video.Pro (YC W2022) 的联合创始人。

“虽然目前才刚刚起步,也得不到任何可靠的收入来源,但我相信自己的判断。只要手头的事能激发我的积极性与潜能,对结果其实不用太担心。”Michael 说道,“现在我发自内心相信,盲目追求安全反而是最危险的选择。谨慎并不一定能让我们远离风险,因为无法更进一步本身就是风险。”

参考链接:

https://medium.com/@_michaellin/how-to-be-a-10x-engineer-fdac2a5a1bd5

https://medium.com/@_michaellin/why-i-quit-a-450k-engineering-job-at-netflix-874454397885

- EOF -

推荐阅读  点击标题可跳转

1、无法忍受不做单元测试和内卷,我离开了这家在美中国企业

2、修完 1300 万行代码,我帮苹果省下 2 亿美元,但没拿到承诺的千万股票

3、卷不动的 35 岁大厂人,去道观修行了

伯乐在线

分享IT互联网职场和精选干货文章(原域名已不再维护)。组织维护10万+star的开源技术资源库,包括:Python, Java, C/C++, Go, JS, CSS, Node.js, PHP, .NET 等。


回复 资源 获取10万+star开源资源

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存