在科技公司负责项目时,明白你的主要工作是交付项目这一点至关重要。很多工程师把时间花在无关紧要的问题上(比如选择技术 X 还是 Y),而关于产品交付的核心问题(例如,所有关键路径的实际运作方式)却仍然没有得到解答。
如果你能够可靠地交付项目,那么即使你态度稍微生硬一些,或者没有正确填写 Jira 工单,或者犯其他一些小错误(这些错误会导致其他工程师受到惩罚),你也不会受到惩罚。
你可以把这看作是帕累托法则的一个特例:80%的结果往往来自20%的原因。但我认为在很多情况下,情况甚至更极端,接近90/10,甚至99/1。如果你做对了“关键点”,就可以弥补很多错误。
这条原则在很多其他领域也适用。比如,省钱的时候,如果你为了省几块钱而四处搜寻折扣,结果却买了一辆接近预算边缘的车或房子,那省钱就毫无意义了。写作的时候,清晰地表达观点可以弥补语法错误或其他瑕疵,但即便文笔优美,如果表达不清,也算不上好文章。健身的时候,坚持锻炼和避免受伤远比找到最有效的训练计划或最好的装备重要得多。诸如此类。
找出“关键点”如何确定最重要的事?这的确是个相当深刻的问题。我曾就此写过很多文章,尤其是在大型科技公司工作方面:你可以阅读《了解你的工程师薪水从何而来》 ,或者浏览我所有标记为“科技公司”的文章。简单来说,我认为最重要的事就是“交付项目,从而提升股东价值,并让比你高出两层左右的管理层满意”。
从我的表述方式来看,应该很清楚地表明,我认为这是科技公司工作的“关键所在” 。但这并非人生的根本,也不是成为一名有成就感的软件工匠的关键所在,等等。这两个领域的关键所在完全不同。
有时候,最重要的事看起来太简单,反而显得无关紧要。很多软件工程师会想:“当然,项目交付很重要,但这只有在编写完所有代码之后才能实现”,他们低估了成功交付项目所需的诸多复杂因素(包括代码和其他方面)。
我所知的唯一可靠的通用方法是仔细研究成功和失败的案例,找出成功案例的共同点。尤其要注意那些让你感到意外的成功或失败案例。如果你认为某个项目进展顺利,但负责该项目的人员却没有得到奖励;或者你认为某个项目彻底失败,但最终却获得了表彰,这可能表明你对“关键所在”的理解有误。有人获得了晋升,但你却认为他/她工作能力很差?有人深受高层领导喜爱,但你却看不到他/她做出任何有用的贡献?这些人可能在关键所在上做对了(或者有些人只是运气好!但这比你想象的要少见。从外人看来,把关键事情做对往往就像是“一直靠运气”。)。
甚至很难尝试。正确识别重点的第一步是尝试。以我的经验来看,要激励自己专注于重点事情出乎意料地难。人们往往更倾向于直接投入到看起来可能有用的事情中,并立即开始工作。这是为什么呢?
一个显而易见的原因是,整天坐着思考自己可以专注于哪些事情,感觉很糟糕。如果你看起来很忙,就更容易向他人和自己交代你的时间安排。但如果你什么也想不出来,岂不是白白浪费了所有思考的时间?
另一个不太明显的原因是,许多人害怕自己可能不喜欢最重要的东西。回想一下我对科技公司最重要的东西的描述:
“交付项目以提升股东价值,并让上级两层左右的管理层满意”
很多软件工程师都非常讨厌这一点,因为这竟然是最重要的事。我在《软件工程师应该有点愤世嫉俗》和《你必须知道如何开车》这两篇文章中对此进行了详细的阐述。如果你完全不喜欢这个目标,那么你很难花时间思考如何实现它。
事实上,如果你讨厌某件事,我认为更重要的是思考“最重要的事”。这就是为什么我对“做你喜欢的事”这种建议持怀疑态度。如果你热爱性能工程,但你的公司不感兴趣,我认为你最好利用业余时间做性能工程,同时在工作中创造股东价值,而不是在工作中尽可能多地做性能工程。
每天花几个小时敷衍了事地创造股东价值(其余时间则专注于绩效优化),比每天花十个小时钻研错误的“主项”更有价值。以我的经验来看,这种方式也更不容易让人精疲力竭,因为没有什么比拼命做一件没有价值的事情更容易让人筋疲力尽了。
注意:“主要事情”可能迅速改变2015年,在许多科技公司,易于相处是最重要的品质。如果你是一位和蔼可亲的同事,那么除非你在其他工作方面表现非常糟糕,否则不会面临严重的职业后果。反之,如果你为人粗暴、难以合作,那么你的技术能力再强也无济于事。许多工程师通过最大限度地展现自己的亲和力而获得了成功的事业:积极参与和组织公司社交活动,与不同团队建立友好的关系,并努力成为公司里知名的工程师。
到了2026年,待人友善依然重要。但如今科技公司都在勒紧裤腰带,面临着更大的交付压力,最重要的已经转移到交付项目的能力上。如果你能做到这一点,就能大大改善你原本难以相处的性格。就像爱情一样,交付成果可以弥补一切过错。对于许多软件工程师来说,这种转变并非一帆风顺。
过去三年里,很多非常优秀的“知名工程师”都被裁员了。我想,这其中的教训大概是这样的:即使你表现出色,并且完美适应了你的专业领域,环境也可能发生变化,让你措手不及。那么,你能怎么办呢?如果你职业生涯的大部分时间都花在了培养某项技能上,那么当环境改变时,你不可能立刻把所有经验都转移到另一项技能上。或许,更深层次的教训是:与其过度专注于单一领域,不如精通多项技能,从而分散风险。
最后想说的这说明你应该花大量时间和精力去弄清楚应该把重点放在哪里。在极端情况下,即使你把一半的时间都花在这上面也是值得的,因为它能让你走上正确的道路,否则你就会忽略最重要的事情。
这似乎有点违反直觉。做点什么会让人感觉更安全、更有效率。但如果你能强迫自己专注于“你应该做什么”这个根本问题——即使你不喜欢答案——你就能更好地实现目标。