第 9 章 接下来做什么?
本书一开始,我们踏上了一段旅程,去理解你的工作到底是什么。从那以后,你梳理了自己的范围和主要关注点,描绘了组织的地图,制定了战略和愿景,排定了工作的优先级,领导了项目,绕过了障碍,示范了良好的工程实践,还带着同事们更上一层楼。这一路走来可真不容易!现在我们来到了最后一个主题:重新回到你身上。不过,这次我们不再关注你现在在做什么,而是要看看你接下来要往哪里走。我们要谈谈如何让你自己升级。
升级究竟意味着什么?这取决于具体情况,也取决于你自己。所以我们先回到贯穿本书的一个主题:*什么是重要的?*我们会审视你职业生涯的全局:你要去哪里,你的下一步需要什么。然后再看看你目前的角色,评估它是否是在朝你想去的方向迈进。
Staff 工程师这个角色的定义本来就很宽松,所以它之后的路径同样定义宽松,也就不足为奇了。我们会看看你有哪些选择,我也会分享一些从 Staff+ 角色继续前行的人的故事。这些故事只是你能做的各种事情的一小部分样本,但它们也许能为你自己的旅程带来启发。
最后,我们会思考你在整个职业生涯中将会产生的影响力。作为资深人士,你是我们这个行业的领导者之一。你要为自己的选择负责,你也会影响别人的选择。而且,你是唯一能驱动自己职业生涯的人。我们就从这里开始。
你的职业生涯
一位在超大型公司工作的朋友曾把他的职业历程比作玩 Diablo(《暗黑破坏神》),一款经典的角色扮演电子游戏。“我打败所有怪物,清空地下城,”他说,“最后攒够经验值升了一级。但接着……我又在一个新的地下城里从头开始,而怪物们也升了一级!那还有什么意义?!”
对你来说,意义到底是什么?你要去往哪里?
在第 2 章,我们画了三张地图来描述你的工作。现在我们来画第四张:路线图。把你的职业生涯想象成一段穿越山地的旅程。你的地图上标出了许多小径,有些人来人往,有些杂草丛生。有些小径视野有限,但你可以在行进中不时瞥见地标,以此保持方向感。有些小径蜿蜒曲折,你可能得走一条看起来是在远离目的地的路,但那是通往你想去之处的唯一途径。
并非所有目的地都在地图上,许多有意思的地方只有离开小径才能到达。如果你总是只根据标好的路通向哪里来选择下一个目的地(见图 9-1),你可能只会一直跟着别人的脚步走进下一个地下城,而错过了你真正想去的地方。
图 9-1. 沿着附近的小径走。标出的路没有一条通向目的地,但如果你有地图,就会知道该在哪里离开小径。
可你要去哪里呢?也许你有一个明确的目的地,沿途还设好了里程碑。也许你并不确切知道自己要去哪里,但知道大致想朝哪个方向走。又或者你并没有特定的去处:你只是在享受旅程。
在本章接下来的部分,我会假设你想从这里出发去某个地方。职业发展常常被描述为攀登职级阶梯,不断提升你的资历、责任、权力和财富。不过那只是众多小径中的一部分。我们来看看什么对你来说是重要的。
什么对你来说是重要的?
Staff 工程师 Cian Synnott 写过一篇文章,讲他如何列一张优先级清单,借此保持方向感,并确保自己的工作在支撑他想要的生活。列这样一张清单,是审视自己内心、弄清什么对你重要的好办法。你的职业和人生优先级是什么?下面是一些常见的选项:
财务安全
对你来说,最重要的也许是还清债务、准备大学学费,或者为退休储蓄。
养家
如果有家人依靠你,你可能会为了一份能让你照顾他们的薪水,接受一份自己没那么喜欢的工作。你追求的可能是稳定的收入、良好的福利,以及不用担心裁员。
灵活的时间安排
你可能想要灵活性,比如一个能兼顾照顾孩子、照顾老人,或者应对慢性病、残障的时间安排。又或者你只是想要有大量空闲时间去做自己喜欢的事。
学到很多东西
也许你想要那种在某个特定领域成为世界级专家的智识满足感,或者成为那种能应对任何挑战的通才——也许你就是我们在第 3 章谈到的那个拯救了星舰企业号的人!
被看见
对你来说,重要的也许是赢得同行的尊重和钦佩,成为“业界名人”,或者在一个有声望的角色中成为一种代表:让别人看到你的成功,从而也能想象自己的成功。
做很酷的事
你可能想做一些酷炫、令人兴奋的项目,那些让你充满干劲、乐在其中的事情。
挑战自己
回头看看那些比你曾经想象的还要大的挑战,而你都一一攻克了,那种感觉会非常棒。
积累财富
我们能不能花点时间来体会一下,我们身处一个(目前)薪酬很高的行业,是多么难以置信地幸运?你可能希望在职业生涯中尽可能多地攒钱。
为自己工作
也许你不喜欢让别人来做影响你的决定,或者只是想体验一下当自己老板的感觉。如果你最终想创办一家公司或独立工作,你可能正在努力积累技能、经验和人脉,好让自己有信心去做这件事。
让世界变得不同
也许你一生的目标是让世界变得更好,留下比你自身更长久的遗产。这可能意味着教学、发明某样东西,或者建设社区,让科技行业成为一个更友好的地方。也可能意味着把技术当作工具,去推动你想要的真正改变:打造能改善人们生活的产品,或者有能力支持需要你的事业。
成全你的志业
你工作可能是为了支撑你真正在乎的事情:比如在音乐事业上取得成功,或者让你的业余农场能维持下去。
你还可以为很多其他事情做优化:交朋友、环游世界、照顾好自己的健康,等等。没有正确答案:这是你个人的事,而且很可能会在你的职业生涯中发生变化。花点时间想一想,在人生的这个阶段,你的优先级清单上都有些什么。
你要去往哪里?
优先级清单能让你保持方向感,但它不会确切告诉你该去哪里。为此,你需要画出你的路线图,并在上面标出一些里程碑。路线图要画得多详细、覆盖多长的时间跨度,都由你决定;但如果你有一个遥远的目标,那就规划一些能让你离它更近的步骤。
你觉得五年后的自己会在哪里?这又意味着你现在需要做些什么?
和其他地图一样,路线图最好不要独自绘制。如果只根据自己的经历来画,你就找不到那些不显而易见的路径,你的小径也会局限于你从所站之处能看到的范围。你可以通过阅读、参加会议,尤其是向别人询问他们的历程,来拓宽自己的视野。去找那些走过你感兴趣的路的人,和他们聊聊。
你的经理也许能在职业发展上帮到你,但这从来没有保证,尤其是现在。在 Staff+ 级别,你的经理甚至可能不知道该怎么帮你:你走的很可能是一条他们没走过的路。不过,资深并不意味着你无所不知,你仍然需要帮助和指引。这意味着,你需要自己去寻找其他的建议、教导和护栏来源,并主动寻找能帮助你成长的机会。
如果你确实发现了一条让你兴奋的宏大路径,那就认真考虑它。人们很容易根据路标最清晰的路线来做选择,但请把目光放到你此刻看得见的范围之外。没错,有些路会更难走、感觉风险更高,或者能得到的支持更少;但如果你心怀某个宏大的愿望,就不要自我设限。如果你想要的角色、影响力或生活方式,从你现在的位置看起来似乎遥不可及,你仍然可以朝它迈出几步,也许是先走到一个视野更好的地方,从那里看清下一步该往哪走。职业生涯是很长的。
你需要在哪些方面投入?
如果想象自己已经实现了目标,得到了对你重要的一切,那会是什么样子?那个成功的未来的你,拥有哪些你目前还不具备的技能?他的简历上写着哪些经历?他是怎样度过时间的,又结识了哪些人?在决定接受哪些角色和机会时,问问自己这些问题。
培养技能
我有时会听到有人说自己真的不擅长某件事:比如函数式编程,或者讲一个好故事。我更喜欢换一种说法:那只是一项你(还)没有升级的技能。请原谅我最后再用一次牵强的电子游戏比喻:想想 Final Fantasy(《最终幻想》)这样的游戏,每完成一个任务都会获得能力点,用来提升技能。假设今年你获得了一些新的能力点,而你目前的 Python 技能有 14 点(图 9-2)。你可以投入一些点数升到 15 级,也可以不管这项技能,把精力放在别的事情上,比如提升 JavaScript 水平。又或者,你会在一项全新的技能上投入第一批点数。
图 9-2. 选择今年的能力点投在哪里。
我经常听到有人说,你应该专注于自己擅长的事情。我并不完全同意:你应该把点数投在你想要擅长的事情上,这样才能培养出那些技能。
只要值得投入时间,科技领域的一切都是可以学会的。但它可能并不值得!可学的技术领域和技能比你拥有的时间多得多,所以你永远不可能成为样样精通的专家。这没关系:强大的团队正是由各自掌握部分必要技能的人组成的。但如果有些技能是你实现目标所需要的,或者你能力上的某些短板让你感到不安,那就假设它们只是未知的,而不是不可知的。你只是还没在那里投入能力点而已。
话虽如此,也别让自己的旅程变得比必要的更艰难。如果你整天在做的工作让你充满恐惧或筋疲力尽,而不是让你兴奋,那就为你的目标寻找另一条路吧。1 Honeycomb 的 CTO Charity Majors 指出,要跟上我们这个快节奏的行业,就得管理好精力:“如果你想在科技行业拥有可持续的职业生涯,你就需要终身学习……确保你 a) 了解自己,知道什么让你快乐,b) 把大部分时间花在与之相符的事情上。做让你快乐的事情会给你能量。做那些消耗你的事情则与你的成功背道而驰。”
练习那些你觉得困难的技能,可能会把它们变成你的长处,并减少它们消耗的精力——也可能它们永远都是一件苦差事。决定这项技能对你来说值多少。我们每个人觉得容易的事情各不相同,点数投在哪里由你决定。
冒名顶替综合征
刚进入这个行业的应届毕业生,如果知道他们仰慕的 Staff 工程师中有多少人觉得自己是冒名顶替者,一定会大吃一惊。根据你走过的路径,你可能会对技术战略、影响他人或系统设计之类的事情感到不自信。一些做系统的人会因为自己写代码的时间不够多而感到别扭。一些产品工程师则怀疑自己“理应”更擅长运维。
冒名顶替综合征是一种糟糕的、缺乏安全感的感受:它甚至会让你的工作质量下降,因为你觉得冒经过计算的风险并不安全。值得宽慰的是,这种感觉很常见,即使在这个级别也是如此。找机会把能力点投到让你紧张的事情上,向自己证明那不过是又一个可以学习、可以掌握的主题。但最重要的是:如果你正陷入“冒名顶替”的感觉,试着对自己宽容一点。没有人什么都懂。
建立人脉
仅靠技能,很少能把你带到你想去的地方。你还需要人脉。根据你读到的商业文章不同,你会听说超过 70%,甚至多达 85% 的职位实际上并没有公开发布:它们是通过人脉找到的。当一个内部项目需要负责人时,附近担任领导角色的人之间会私下热议,看看他们会推荐谁。当一场会议需要演讲者,或者一个项目需要付费顾问时,参与者会联系他们认识的人。被人知道是有回报的。
认识别人同样有回报。在各种角色中都有人脉,能让你了解这些角色的人如何行事、对他们来说“胜任”和“专业”是什么样子,以及他们如何沟通。2 拥有强大的人脉网络,意味着你总能找到专家来请教、向他们学习。
CTO Yvette Pasqua 曾谈到如何以可持续的方式建立人脉,而不会耗尽你作为内向者的全部精力。她说,即使社交对你来说并非天生擅长或令你舒适,也没关系:“如果你不知道该和谁聊、该怎么开始,告诉你一个小秘密:其实我们谁都不知道。”Pasqua 会主动联系她想交流的人,邀请他们聊一个她认为对方也会感兴趣的具体话题。她建议加入一些团体和社区——但只加入那些能给你能量的——并在活动中与人进行一对一的交流。
最后一条对内向者和不善社交的人来说可能是一种折磨,但你可以学到大量机械性的技巧,让这件事变得可以应付。我很喜欢作家、“正在康复中的社交尴尬者”Vanessa Van Edwards 的 Science of People 网站,可以从中学习一些别人似乎天生就会的“做人”魔法。比如,看看她的文章“How to Network”,里面有关于在活动中与人交谈的技巧,比如站在哪里、如何记住别人的名字、聊些什么。所有这些都是可以学会的。3
提升可见度
如果你有技能,却没人知道,你就不会被邀请去施展它们。让人们看到你在解决问题、提出有洞见的问题,或者在一片混乱中带着清晰的战略出现,当机会出现时,他们就更有可能想到你。你也会遇到有意思的人:他们看到你在做与双方都相关的事情,就更有可能主动联系你。
你也可以选择建立外部声誉,通过开源贡献、行业工作组、文章、播客、视频、会议演讲等方式为自己赢得名声。这类事情通常是可选的,但如果你在寻找职位或人脉,它们会非常有帮助,而且它们也是你在整个行业中发挥良好影响力的途径。有些雇主鼓励对外贡献,要么是为了帮助招聘,要么是为了让人们关注公司的产品或服务。如果你走这条路,要预料到成为一个
“公众人物”需要一些投入——这是你要投入能力点的地方之一。
获得机会并不意味着你必须接受,但如果你真的得到了一个想要的机会,就别浪费它:展示你的能力。比如,如果你的会议提案被接受了,就别在飞机上随便拼凑一场演讲。4 如果你加入了一个开源社区,就别一上来就挑起争端。让人们看到你优雅、从容地把工作做好——让你的能力被看见。
有意识地选择角色和项目
培养技能、可见度和人脉最省时的方式,就是在工作中完成这些。你在什么事情上花时间,就会在什么事情上变得更好。事实上,仅仅因为工作中一直在做某件事,你很容易就意外地获得了一项专长:一段经历引出另一段经历,不知不觉间你就有了一个专业方向。比如,花五年时间编写存储系统,你就会很擅长编写存储系统:你会拥有相关技能,会和其他存储专家共事,简历上也会有与存储相关的经历。当某位前同事要招聘存储专家时,他们会想到你。同样的五年花在一个热门的移动应用上,你积累的将是一套完全不同的资历。人很容易被定型。
所以,要选择那些能给你带来你想要的经历的角色。有些东西只能在大公司学到,有些只能在小公司学到。有些事情作为经理会更容易,另一些只有在真正亲自动手时才能做到。如果你不确定自己需要什么,就去找一个正在担任你想要的角色或过着你想要的生活的人,问问他们是哪些关键经历把他们带到了今天的位置。(有时你也可以去 LinkedIn 上偷偷看看他们的简历,但真实的对话能告诉你更多。)
你在什么事情上花时间,就会在什么事情上变得更好,所以要有意识地选择那些能让你获得想要技能的角色和项目。Mason Jones 自 1995 年在 Travelocity 起步以来,已在 10 多家初创公司担任过工程领导,他也认同这一点:“始终有意识地选择那些能让我扩展知识、拓宽经验的职位,是我整个职业生涯中做过的最有价值的一件事。”
你目前的角色
每份工作都应该帮助你朝着长期目标成长,并满足你眼下的需要。遗憾的是,人们常常会落入一个两者都做不到的角色。本节我们先看看你的工作是否对你有益,然后再评估它能否满足你的愿望清单。
需要留意的五个指标
你目前的角色是在让你离目标更近吗?会不会恰恰相反?经验丰富的工程总监 Cate Huston 提出了评估工作健康状况的五个指标:
-
你是否在学习
-
你是在投资可迁移的技能,还是在应付组织的失调
-
你对招募别人加入你的团队有何感受
-
你感觉自己有多自信
-
你感觉自己压力有多大
一份很棒的工作能让你持续朝目标成长,你的自信和能力也会保持在高位。一份糟糕的工作——停滞不前、与霸凌者共事、缺乏支持、不可能完成的截止日期,或者其他种种困难——可能会恶化得足够缓慢,以至于你早已远远越过本该抽身离开的那个点,却浑然不觉。我见过一些身处不健康工作环境的朋友,他们逐渐确信自己没有在别处被录用的技能。结果,他们一直待在已经停滞的岗位上,技能的匮乏也就成了自我应验的预言。正如 Huston 所说:“有时候,五年的经验只不过是……把同一年的经验重复了五遍。”哎哟。
在另一篇文章中,Huston 解释说,你的雇主购买的是你的时间,但你的“品牌”他们只是租用而已。好吧,拥有个人品牌这个概念会让很多工程师觉得别扭又做作,但别只想着那些发型昂贵、字体也昂贵的光鲜人士:你的品牌就是别人如何看待你。Huston 说,如果你的工作正在让你变得越来越难被雇用,“我希望你的雇主付了很多租金——因为他们正在摧毁你的市场价值。有时这也许是值得的,但往往并不值得,而人们意识到这一点时已经太晚了。”
我们都有顺利的几周和糟糕的几周,所以我向朋友们推荐过一种做法:在几个月里持续追踪这些指标(见表 9-1),看看随着时间推移事情的走势如何。
表 9-1. 追踪 Cate Huston 在“5 signs it’s time to quit your job”中描述的工作健康信号。
| 信号 | 你在 学习吗?你在 成长吗? | 你学到的是 可迁移的技能, 还是只是 如何应付 组织的 失调? | 你对招募 朋友加入你的 公司有何感受? | 你的自信 如何?你觉得 自己有多能干? | 你的工作 对你的身体 有益吗? |
|---|---|---|---|---|---|
| 评分 | 0:停滞不前 5:火箭般 的成长 | 0:学习在这个 组织里应付 5:学习 可迁移的 技能 | 0:道德上 感到矛盾 5:极度 热情 | 0:自信 正被侵蚀 5:自信 不断增强 | 0:压力 压力 压力 5:感觉 健康 |
| <日期> | |||||
| <日期> … |
追踪指标可以让你免受近因偏差的影响,让你从更长的时间跨度看到全局。如果你回头看,发现事情大体上都还不错,你就不太会因为一个糟糕的月份而一怒之下辞职。但如果你注意到自己接连遇到糟糕的月份,或者你的指标随着时间推移越来越差,那就要意识到,你可能正处在一个对你不利的处境中。不妨想想 Captain Awkward 的Sheelzebub 原则,这是一个用来审视糟糕关系的问题:“如果事情一直保持现在这样,你还会留下吗:再待一个月?再待 6 个月?再待一年?再待 5 年?能待多久?”
你能从你的角色中得到想要的东西吗?
你的工作是否在推动你朝长期目标前进?它是一个健康的环境吗?花点时间浏览一下你的优先级清单,评估你的工作在多大程度上满足了你的需要(见图 9-3)。既要找出缺失的东西,也要确保你珍视那些好的方面。人们很容易把好东西视为理所当然。
图 9-3. 评估你的角色,看看哪些方面运转良好,哪些方面你希望有所不同。
无论你的工作有多好,你几乎肯定不会得出它完美无缺的结论!你很少能找到一个在你的优先级清单上每一项都最优的角色。赚最多的钱往往与为世界做好事相互冲突。学到最多的东西可能意味着不去担任最有声望的角色。取得重大的职业成就可能意味着没有剩余的时间和精力留给生活的其他方面。这就是为什么没有人能替你做职业决定:我们每个人都会做出不同的取舍。但看看那些不够理想的地方,想想你能否在不过多牺牲其他方面的前提下改变它。
你应该换工作吗?
如果你想解决某件不顺的事情,你有两个选择:调整你现有的工作,或者换一份新工作。我们来看看各自的一些理由。
留在同一角色或公司的理由
如果你目前的角色能给你大部分所需,并把你带往你想去的地方,那么长期做同一件事会很有收获。Staff 工程工作得益于你在一个地方长期积累的持久性、领域知识和人际关系。下面是在一个地方长期待下去的其他一些好处:
反馈回路
在一个地方待得更久,你就能获得看到自己行动后果的反馈回路。当工程师频繁流动时,每个人看到的都是别人过去决策的结果,而不是自己决策的结果。你也许还能看到你帮助提升过的同事成长为高级工程师或 Staff 工程师,进而自己也成为榜样。
深度
你对单一领域或单一技术栈了解得越多,你的理解就会越深入、越细致。要直觉性地透彻理解某样东西,以至于能在这些知识之上继续构建,是需要时间的。做以前做过的事情也更快;你能更迅速地取得进展。
人际关系
你已经花时间结识了组织各处的人,也有了你信任并乐于与之共事的人。你积累了足够多的相互善意,即使是最大的技术分歧也能以同事间友好的方式讨论,而不至于剑拔弩张。这是一笔需要时间才能重新积累的资产。
背景
在投入时间和精力学会如何在你的组织中游刃有余之后,你拥有了一套可能无法迁移到另一个组织的技能。你已经摸清了 OKR 流程,知道影子组织架构图,也知道如何把事情办成。
熟悉感
你了解这份工作、这里的作息和这里的人。如果你要过特定的宗教节日、每天下午去学校接孩子,或者每周四午饭时间总要玩滚球,你已经把日程安排好,让这些都能实现。一切都运转顺畅,你也就不太愿意做任何改变。
换工作的理由
但也有充分的理由让你可能想每隔一段时间换个地方:
可雇用性
如果你在一个地方待得非常久,你学到的可能是如何在那种文化中工作,而不是可迁移的技能。外面的世界可能已经变了,而你可能会被甩在后面。让更多技能和领域保持新鲜,可以为你敞开更多的门。
经历
任何一个地方能提供的经历都是有限的,可以学习的人也是有限的。一旦你把能收集的都收集到了,你可能就准备好迎接新事物了。
成长
有时,通过换工作来提升级别或范围会更容易。也许下一个级别感觉遥不可及、不太现实,或者涉及你根本不感兴趣的那类政治或工作。如果你在现在的地方很难争取到那些重要的、有挑战性的或备受瞩目的项目,那么找一份新工作可能比获得你期盼的晋升更容易。
钱
换工作可能是获得更高薪水的快车道。虽然有些公司会及时为现有员工调整待遇,但新员工往往能谈到更好的薪水、股票授予和签约奖金。
不匹配
并不是每家公司都具备所有的成长路径。如果你希望在某个主题上成为业界专家,而你的组织并不真正需要这方面的专家;如果让你充满干劲的项目并不是领导层想要投资的项目;或者资深人员比领导机会还多,那可能就是时候离开了。并不是所有地方都提供所有的角色。
合适的下一步取决于你的需要。在下一节中,我们会看看从这里出发的一些路径,有些是留在原地,有些则是换角色或换公司。
从这里出发的路径
你接下来要去哪里?我们来看看你的一些选择:
继续做你正在做的事
如果你的工作能给你所需,那就没有必要做任何改变。我想强调这一点,因为我们这个行业非常看重频繁换工作,那些时不时出现的“新工作”公告可能会让你觉得自己也应该动一动。如果你身处一个正在增长的细分领域,你也许可以待在同一个团队里,在几十年里仍有充足的学习和成长空间。又或者你根本不追求进一步的成长:你可能只想运用现有的技能,一直做差不多同样的工作,直到退休。
如果你属于第二种情况,那就要对行业变化让你的技能过时保持一点警惕。技术和你的业务都会变化,即使是领导力技能,如果你不持续更新,也会慢慢变得过时。社会规范、沟通风格、最佳实践……这一切都会改变。所以,原地不动可能也意味着要稍微动一动、学一点,刚好足以跟上时代。
争取晋升
留在同一个角色往往也可以是通往更高一级的路径。随着你的影响力、知识和成效不断扩大,你和你的经理可能会开始觉得是时候让你晋升了。
晋升到更高的级别可能带来丰厚的回报,并给你一个更资深的职位头衔所带来的可信度;正如我在第 1 章所说,它能让你省去花时间和精力去证明自己应该参与某些讨论。而且说实话,获得晋升或者被提供一份更大的工作,就是感觉很好。但要剖析一下这种感觉:它真的是关于级别本身吗?还是你其实想要的是钱、声望、有趣的挑战、更广的范围、尊重、进入“那个房间”、一种进步感,或者完全是别的什么?想要其中任何一样都没问题,但要确保下一个级别能给你想要的东西,否则你可能很快就会对新头衔感到失望。
了解在你的公司里晋升意味着什么:是由你的总监决定谁获得晋升吗?是否有一个晋升委员会来评审你的工作?也许有一份书面的职级阶梯,写明了下一级别的期望,但这些期望往往对真正的要求语焉不详。晋升人数或某个特定角色的人数可能也有限制:除非有一个规模合适、需要领导的范围或项目,否则你可能无法获得晋升。
如果你在寻求晋升,就和你的经理讨论一下,请他们给出指导。和处于下一级别的其他人建立联系,了解他们走过的路。如果对方已经在这个角色上待了好几年,要追随他们的脚步可能会让人望而生畏。记住,你的目标是达到他们获得晋升时的影响力,而不是他们现在的水平。
少工作一些
成功也可以意味着在目前的角色中少工作一些。和我交流过的一位工程师 Jens Rantil,用一个 Staff 工程师的职位换来了在一家小得多的公司的 80% 工时和 20% 的降薪。正如他所说:“每个星期四都是星期五!太棒了!”Rantil 观察到,改为 80% 工时,是很多人第一次给自己的空闲时间标上价码,并决定拥有更多空闲时间到底值多少。(记住,降薪的影响不只是眼前的薪水:它很可能还会影响你的退休储蓄。)虽然 80% 是最常见的时间安排调整,但我也见过工程师安排 60%、40% 甚至 20% 的工时;有些雇主可能愿意以每周一天的方式留住你的技能。
如果你要削减工时,就要有意识地决定从哪里削减。最容易的做法可能是砍掉你的专注时间,只去开会,但那可能并不会让你快乐,也可能意味着你达不到经理想要的成果。或者你可能会发现,自己最终为了做工作中有趣的那部分而额外无偿加班:如果你一周工作五天时都没能避免加班,那就要非常清楚,为什么你认为自己能坚持只工作四天。
一定要让你的期望与经理和团队的期望保持一致。如果你仍然想争取晋升,或者希望被考虑去领导有趣的项目,要确保你的经理知道。就如何处理一些具体情况达成一致,比如值班、假期所在的周,或者你在其他工作日中有一天请病假的那一周。要提醒你的是,很多团队并不乐意你投入的时间变少;从编制分配的角度来看,团队有多少名工程师就是多少名,如果你工作的时间变少,他们并不会得到另一个人来填补空缺。但你也许能在更少的时间里完成很多事情。我交流过的一个人说,自从开始每天工作五小时,他们完成的工作并没有少多少——反正他们每天也只有四个小时的高效工作状态。
换团队
如果你准备好迎接改变,但对现在的雇主还算满意,那么内部转岗可能是很棒的一步。你保留了相当一部分背景、人际关系、可信度和社会资本,同时又能在新的事情上重新开始。Hilti 的软件架构负责人 Burin Asavesna 告诉我,他把这种重新开始看作游戏的老玩家新建了一个低级角色:从技术上讲你是从零开始,但实际上你已经知道游戏怎么玩,会飞快地升级。
在团队或组织之间流动,可能是搭建桥梁的绝佳方式:你在原来的团队里仍有人脉,同时又把知识和文化带到了新团队。你还会带来视角:你已经对这个团队以及组织其他部分如何看待他们有了一个外部视角。
培养新的专长
科技世界的广度意味着总有新东西可学。你也许会喜欢学习与已知领域紧密相邻的东西,为你的知识增添一个新的维度;或者开始把大量能力点投入到全新的事物上。你甚至可能会意外地培养出一项新的专长。很多最有意思的创新都来自那些对不止一个领域都驾轻就熟的人:有趣的事情总是发生在边界上!
培养新的专长可能不只意味着换一个团队;它可能意味着转向一条不同的职业通道,无论是暂时的还是永久的。前首席工程师 Lou Bichard 写过他如何从一名“具有产品思维的工程师”正式转为产品经理。正如他所说:“花一点时间去做些不太一样的事,也许能帮助你为工作带来一些新的视角。”
探索
有些公司会允许你承接短期任务、嵌入某个团队、参加轮岗项目,或者干脆去一个新团队试一段时间。一家超大型公司的一位 Staff 软件工程师告诉我,她在同一个团队待了六年之后,就做了这样的探索。她的公司有各种各样的机会,包括轮岗项目,所以她决定花些时间去探索外面有什么。在两年时间里,她尝试了三个团队:一个负责成熟基础设施的大型站点可靠性团队,一个负责最近发布的产品的小型研究团队,以及一个与非营利组织合作打造新开源产品的中等规模团队。经历了这些截然不同的体验之后,她清楚地认识到,研究团队契合她的兴趣,也有大量的成长机会,于是她在那里已经待了一年半。
担任管理角色
你是否感到自己被管理工作所吸引?有些 Staff 工程师会完全转到管理通道,并在那里继续成长。另一些人则会先在管理岗位上干一段时间,再回到 IC 角色。
在一篇著名的文章中,Charity Majors 提出了她所说的“工程师/经理钟摆”,即每隔几年有意识地在经理和 IC 角色之间来回切换。Majors 不认同你必须选定一条道并一直走下去的观点:
世界上最好的一线工程经理,都是那些离开亲自动手、全职在一线摸爬滚打的工作从未超过两三年的人。最好的个人贡献者,都是那些干过一段管理的人。而世界上最好的技术领导者,往往是两者都做过的人。来回切换。就像钟摆一样。
Majors 强调,管理永远不应该被视为一种晋升——它是一次职业转换,需要学习一套不同的技能。当你从人员领导转向技术领导,或者反过来时,地位不应该有任何变化:两者各自培养一套不同的技能,又会增强另一方面的技能。但她不建议同时做这两件事:“你一次只能真正提升其中一项:工程或管理。”
Will Larson 认为,工程师/经理的混合角色并不总是一个糟糕的选择,前提是你已经在团队经理和技术贡献者两方面都积累了扎实的经验。但他也认同,如果你想在工作中边做边学其中任何一套技能,你都会过得很艰难:“如果你已经在团队经理和技术贡献者两方面都积累了经验,而这个角色又最能满足你的职业诉求,那当然可以试一试;但我一贯不建议大家在这样的角色上开始自己的管理生涯。”
如果你要进入这种混合角色,就要规划好如何让它可持续,比如手下有一批其他资深人员,在需要时可以把工作委派给他们或依靠他们。
第一次带下属
如果你以前从未尝试过人员管理呢?如果你从没当过经理、从没有过直接下属,那么在职业生涯的后期接手第一个管理角色可能会让人望而生畏。但下面是你可能已经准备好迎接第一批直接下属的三个理由:
-
如果某个未来目标需要你具备管理经验,你迟早都得开始培养这套技能。
-
如果你所在的公司或团队里,决策权和背景信息只会流向管理通道上的人,你可能会认为管理通道能给你更多推动项目完成的杠杆。
-
或者,如果你已经到了职级阶梯的顶端,并对更高一级的业务问题感兴趣(而又无法说服组织再加一级台阶),那么管理一个团队可能就是你成长的下一步。
有些公司有“带下属的 Staff 工程师”这一概念,有些则没有。带下属可能需要你转换通道。
如果你习惯了以相当于高级经理、总监或 VP 的级别担任 IC,你可能会想主张自己应该管理一个同等范围的组织。Google 安全部门的工程总监、曾经是一名带下属的 Staff 工程师的 Amanda Walker 不建议这样做;她建议你在承担更高层的组织角色之前,先当一段时间的一线经理:“正如做过软件工程师让我更擅长管理软件工程师一样,做过一线经理也让我更擅长管理其他经理。执教一项你自己打得很好的运动会更容易。”
不过,如果你已经习惯了在整个组织的范围内工作,那么回去为单个功能团队管理迭代可能不是一个诱人的前景。一个可能的折中方案是,寻找机会在一个跨团队项目中担任技术负责人或团队负责人,对该团队中的少数几个人承担管理责任。
你作为经理的表现会影响下属的生活,所以如果你要当经理,就要认真投入。Majors 说,你的最短任期应该是两年:
如果你真的想尝试当经理,而且机会也来了,那就去做吧!但前提是你准备好全身心投入一场为期两年的实验……学会管理技能、并让你的大脑真正喜欢上它,需要不止一年的时间。如果你对两年的承诺犹豫不决,也许现在还不是时候。过于频繁地更换经理
会扰乱团队,而且让团队向一个宁愿去做别的事、或者并没有拼尽全力的人汇报,对他们是不公平的。
投身管理意味着接受这需要时间。要预料到你做的编码、架构或技术工作会远远少于原来——并且要明白,你可能根本做不了这些。Camille Fournier 在 The Manager’s Path 中写道:“怀念那些更简单的日子,对你所放弃的东西感到一丝恐惧,这都没关系。但你不可能一下子什么都做。要成为一名出色的经理,你需要专注于管理技能,而这就需要你放弃一部分技术上的专注。”
Majors 也认同:“如果你是经理,你的工作就是提升管理能力。不要试图抓住你过去的辉煌不放。”
找到或开创属于你自己的位置
高级领导角色往往有特定的需求。即使在同一家公司,一个 Staff 工程师空缺需要的是架构能力很强的人;另一个想要的是擅长跨组织协作的项目领导者;第三个则在寻找额外的领导力带宽。你越资深,就越有可能去寻找一个需要你特有技能的角色,而不是让自己去适应一个通用的角色。
Molly Graham(就是我在上一章提到的那篇“把你的乐高送出去”文章的作者!)说,职业生涯分为两个阶段:先是了解自己的长处是什么,然后是找到“形状与你吻合的空缺”。Graham 说:“幸福来自于找到那些处在你热爱做的事和你擅长做的事交集上的角色。”但她补充道:
要警惕那种听起来简直是为你量身定做、但想象自己去做时又感觉精疲力竭的角色。如果这份工作还很“光鲜”——你的朋友和家人会觉得它很酷——那就要加倍警惕,因为这时你的自尊心会掺和进来,即使你的直觉告诉你,在那份工作上的大多数日子你都会讨厌,它也会想让你接受。那个维恩图——你极其擅长但讨厌去做的事情——可能会导致职业上的失误。5
找到一个形状与你吻合的角色,一种方式是自己开辟它。如果你得到这样的机会,就既能填补组织的一个空缺,又能为自己创造一份热爱的工作。当 Keavy McMinn 在当时的公司准备好做出改变时,她发现与经理坦诚地讨论自己的目标是一种解放:“这是我擅长并且真正想做的事。我怎样才能为你和公司创造最大的价值?”他们一起打造了一个互利的新角色:Stripe 首席产品官(CPO)的技术顾问。
McMinn 说,之所以能创造出自己的角色,是因为她处于一个有利的位置,而且能坦然承受提出做些不同事情的风险。并不是每个人都能走这条路。但她说,这种情况出奇地常见:“知道有人这么做,也许对你有帮助!允许自己和那些能支持你的人一起,去探索打造一个新角色的想法。没有其他人真的能够或者会替你推动这场对话。甚至可以把它看作一场实验——这能减轻一些压力!”
我得到的另一条很棒的建议来自 Confidantist 的领导力教练 Fabianna Tassini:如果你有机会设计自己的角色,就应该把大量你喜欢做的事情放进去。让给你带来能量的工作占你工作的大约 70%。另外 30% 应该是你想练习并提升的事情。(当然,公司得真正需要你所创造的这个角色;你可能需要做些妥协,才能找到既适合你又适合雇主的东西。)
在另一家雇主做同样的工作
在一个新的工作场所起步,可以给你一个完全不同的视角,并填补你的经验空白。根据你想要的经历,你可以选择不同规模的组织、不同的技术栈、领域或文化。只是尽量别“反弹”。Molly Graham 写道:“有时候,当你在一份工作中,尤其是你不开心或已经倦怠时,你会倾向于选择一份‘反弹工作’。就像反弹式恋爱一样,反弹工作只是帮你摆脱当前的处境,但它往往不是最好、最健康的长期选择。”她还说:“选择与当下让你痛苦的事物相反的东西,并不会带来幸福,它只是帮你摆脱一个糟糕的处境。”
如果你有选择的余地,就慢慢挑选新角色,弄清楚你真正在寻找什么。不要一看到第一封还算过得去的招聘邮件就扑上去。你值得更好的。
由于 Staff+ 角色在不同地方的含义仍然天差地别,要和未来的雇主明确地谈一谈,这个角色对他们意味着什么,你的工作会是什么。正如 Staff 工程师 Amy Unger 所写:“你交谈的每家公司、甚至每位经理,很可能都对自己要招的人需要具备哪些技能组合抱有某种假设,却又说不清楚。”多问问题。
Staff+ 的面试环节远没有标准化:你可能会被问到编程题、系统设计、过去的项目、在各种领导力场景中你会怎么做,或者“讲讲你曾经……的一次经历”。很多组织会提前告知面试环节。如果他们没有,向招聘人员询问会面临什么也完全没问题,这样你可以确保自己有所准备。把你被问到的问题当作线索,了解新公司如何看待这个角色;也要记住,你同时也在面试你的面试官。
换雇主并升一级
换公司可以是重塑自我的机会。它也能让你找到在现在的地方根本没有的角色。如果你很难在当前职级阶梯的晋升流程中证明自己,有时去别处面试更高一级的职位反而更容易。如果你的公司增长太慢,不需要更多资深领导者,或者在有人离职之前容不下另一个首席工程师或高级经理,那么离开有时能让你找到更多机会。
如果你已经是新公司所在领域的专家,换公司并升一级通常会更容易。而如果你说自己既想在更高一级工作,又想学习比如医疗或建筑行业的知识,那就更难说服别人了。
如果你看中的是一个更高一级的角色,要留意业界是否真的把它视为一种提升。levels.fyi 网站可以帮助你校准不同头衔在不同公司的含义。
换雇主并降一级
有时你会走上一条在某些方面看似倒退的路:范围更小、钱更少、职位头衔没那么有声望,或者一个你是新手的角色。如果你只从一切都在改善或增长的角度来考虑自己的路径,你就会限制自己的选择。特别是,跳槽到更大的公司往往伴随着更高的期望以及相应的降级。降一级往往并不一定会降低你的薪酬,而且可以让你夯实技术基础,或者更多地做你喜欢的那类工作。如今在 Datadog 担任高级工程师的 Josh Kaderlan 告诉我,他为什么能坦然放弃在上一家公司拥有的 Staff 头衔:“如果你把头衔作为接受新工作的门槛,你的机会就会越来越受限。身处这个新环境很有收获,特别是我不再总是每场对话中最资深的那个人,我有机会向那些经验比我更丰富、更不一样的人学习。”
另一位工程师 Stacey Gammon 告诉我,她认为自己的职业生涯类似于工程师/经理钟摆,只不过是在技术领导角色和亲自编码的角色之间来回摆动。我们交谈时,她正要离开一家上市公司里一个以领导力为主的首席工程师角色,同时在权衡其他几家公司的 offer,那些都是“小”得多的角色,她会有更多时间写代码。
创办你自己的初创公司
如果你真的在寻求改变,并且想当自己的老板,你可以考虑接受创办自己公司的挑战。Spotify 前 Staff 机器学习工程师 James Kirk 告诉我,他离开了原来的职位,作为 CTO 联合创办了一家初创公司。他告诉我:“我之所以有兴趣自己创业,是因为这看起来既有挑战又有回报,而这种心痒只会随着时间越来越厉害,直到你去挠它。几年前,我开始和本地的一些风投及其社区建立联系,并通过他们认识了现在的联合创始人。我们开始碰撞各种想法,最终找到了一些真正让我们兴奋的东西,于是我们拿了一些风投的钱,辞掉了本职工作,正式开始干。”
如果你在为创办自己的公司做准备,那么先专注于薪酬一段时间会是个不错的理由:你在建立一个现金安全网,让自己能撑过一段没有多少收入的日子。Kirk 补充说:“我觉得,现实地说,如果离开之前没有攒下几年可观的科技行业薪酬,我是不会安心承担这个风险的。”
独立工作
为自己工作的另一种形式是独立工作,比如做咨询、做合同工、开发独立应用、做培训,或者其他兼职工作。
软件顾问、多本编程书籍的作者 Emily Bache 说,独立工作真正的好处是自由:“我对如何度过每一天有很大的掌控权,我有大量时间去阅读、学习,并分享我的想法。我可以去有意思的地方,认识有意思的人,解决有意思的编程问题。”
Bache 强调,独立工作得益于事先就有的强大人脉网络,这样潜在的合作者和客户才会知道你能做什么,并主动找上门来。保持公众形象的更新也很有帮助:“营销是一件持续不断的事——我的目标是每年在大约 10 场会议和本地活动上演讲,再加上发表文章。我也会花时间在社交媒体上发帖——Twitter 和 LinkedIn——让人们能通过它们找到我。”
咨询并不适合每个人。顾问 Vlad Ionescu 提醒说:“即使对于那些想在职业生涯中后期转做咨询的人来说,这也是一个很大的转变(需要不同的技能、要找客户等等),而且它并不像许多人以为的那样光鲜(通常比一份稳定的 FAANG 工作挣得少、压力更大等等)。很多人乐在其中、也适合干这行,但也有很多满怀憧憬的工程师被狠狠地灼伤了。”
所以,要清楚自己将要面对什么。确保你清楚其中的取舍,并接受它们。和创办初创公司一样,你可以先准备好一个现金安全网来降低风险。
最后要记住,独立工作意味着你会失去许多在其他角色中原本可以期待的支持结构。Chris Vasselli 离开了 Box 的 Staff 工程师职位,成为一名全职独立应用开发者,他建议:“在公司的时候,尽可能多地向各个团队和专家学习。前端、后端、桌面、移动、设计、安全、QA、本地化、构建与发布,甚至(尤其是!)营销、增长和商务拓展。当你成为独立开发者时,这些都由你负责。”要做好身兼数职的准备。
转换职业
在技术岗位上工作多年之后,有些人会感到一种想做点不一样事情的冲动。这可能意味着转向教育、学术、政策或研究领域,把你的技术经验和背景用来解决另一类问题。
我最喜欢的一个开辟新方向的例子是 Peter Lyons。他离开了在 Intuit 的 Staff 工程师职位,和他的伴侣、厨师 Christella Kay 一起,在 Adirondack 山区为程序员开办了一个度假静修地。如今他甩的是煎饼而不是代码。他说,COVID-19 隔离期帮助他认清了什么对他来说是重要的:“它促使我们做出重大改变,彻底翻转我们的生活方式,这样我们就可以每天一起做一件我们深切在乎的事情。”
准备好重新开始
如果你真的换了工作,就要准备好重新做一个新手。你在第 2 章画的所有地图现在都过时了!即使你是在同一个组织里担任新角色,你也很可能是从一个不同的位置、不同的背景出发。你需要重新建立视角,画一张新的定位地图。你需要了解地形、文化和政治,画一张新的地形图。你还需要一张新的藏宝图,帮助你弄清自己要去哪里。
作家、分布式系统工程师 Cindy Sridharan 告诫人们,不要试图用上一份工作的规则去做新工作。
并不是所有新聘的高级领导者都完全愿意、或者能自在地把自己变成组织真正需要的领导者,而不是他们过去这些年成长成的那个领导者。许多领导者采取了相反的做法,试图按照自己的形象或过去工作场所的形象来塑造组织。那些被请进困境中的组织、肩负稳定混乱局面任务的工程领导者,往往有很强的动机这样做。根据我的经验,这些人很多时候比那些努力摸清组织门道、调整自己的领导风格以适应组织文化的人失败得更惨、也更频繁。
所以,不要一头扎进你的新角色。花时间和尽可能多的人交谈。弄清楚如何建立联系、如何获取信息、如何进入正确的房间。了解影子组织架构图。解决一些问题,但要保持谦逊,并假设之前的技术决策都有充分的理由——一切都有取舍。想办法帮助你周围的工程师提升水平。*弄清什么是重要的。*在你的日历被会议填满之前,好好享受一段相对清闲的时光吧。
你的选择很重要
我们来到本书的结尾了!关于选择你的路径,我还有最后一件事要说。它其实与你的职业生涯无关,而是关于你作为业内资深人士的职责:
你需要认真对待软件。
制作软件可以很有趣。这里往往有发挥创造力和一些奇思妙想的空间,而且我们大多数人上班也不用穿西装。但软件对每个人的生活都有巨大的影响。当一个应用崩溃、弄丢了某人写到一半的文章,或者糟糕的输入校验让某人的医疗保险理赔申请丢失时,我们就是在浪费人们的时间,给他们带来焦虑和压力。AI 和算法偏见的风险早已有大量记载。社交网络上的滥用、隐私信息的泄露,以及刻意让人上瘾的应用,正在摧毁人们的生活。我们的选择可能意味着真实的人在受苦。
软件被用于攸关生命的系统,而且这种情况每年都会越来越普遍。你今天帮助提升的工程师,以后可能会负责飞机、医疗手段或核电站。我们需要把勤勉和审慎的价值观传授给新工程师,这些价值观正是其他一些攸关生命的工程学科的标志。加拿大的工程师们会佩戴一枚有名的多面戒指,用来提醒他们这个职业的义务和伦理。作为一个行业,我们也需要有同样的心态。
在一个软件工程师工作四五年就被认为是高级的时代,我们可能会忘记还有更多东西要学。在一个许多工程师每两三年就换一次工作的时代,我们可能会被激励着为当下(以及当下的利润和当下的晋升)而构建,而不是为长远而构建。如今的大学生和青少年将来要应付的事情已经够多了:别再把粗制滥造的系统和技术债也丢给他们。
你可以认真对待这份工作,同时也真正享受它!这里有大量发挥创造力和做有趣事情的空间。但要用你良好的判断力去评估其中的利害。了解你的软件将会如何被使用。对什么可以商量、什么不可以,要态度坚定。你的影响力比你以为的要大,你做出的选择很重要。资深人士的所作所为,塑造着整个行业的文化。
构建好的软件。构建好的软件职业生涯。构建好的软件行业。感谢阅读。<3
小结
-
你要为自己的职业生涯和选择负责。可以优化的方向有很多。了解什么对你来说是重要的。有意识地做选择。
-
技能、可见度、人际关系和经历,会增加你获得机会的途径。
-
只要值得投入时间,一切都是可以学会的。
-
时不时审视一下自己,确保你的角色仍在给你所需要的东西。既要看到好的方面,也要看到不顺的地方。
-
在一家雇主那里长期工作有充分的理由。四处流动也有充分的理由。无论哪种,你都有好几条继续前行的路径。
-
软件对地球上几乎每个人的生活和生计都有巨大的影响。认真对待这份责任。