You should never be angry at work

You should never be angry at work

你在工作中绝不应该发火

I try not to give a lot of prescriptive advice about working in tech companies. There are many ways to be successful, and every company works differently. If you’re shipping projects and your management chain is happy, it doesn’t really matter how you’ve accomplished it. However, there’s one thing that I do think is solid advice: you should never be angry at work. 我尽量不去对在科技公司工作提供太多教条式的建议。成功的路径有很多,每家公司的运作方式也各不相同。只要你能交付项目且管理层感到满意,你具体是如何达成目标的其实并不重要。然而,有一条建议我认为是绝对可靠的:你在工作中绝不应该发火。

Anger in the workplace is toxic. An angry colleague immediately becomes a new problem to be managed, not a professional helping you manage problems. When someone is visibly angry in a meeting or in Slack, it kills the entire atmosphere: other engineers will often go quiet entirely, not wanting to make the situation worse. 职场中的愤怒是有毒的。一个愤怒的同事会立刻变成一个需要被处理的“新问题”,而不是一个帮你解决问题的专业伙伴。当有人在会议或 Slack 上表现出明显的愤怒时,整个氛围就会被破坏:其他工程师往往会选择彻底沉默,不想让事态恶化。

If you routinely “get heated” at work, the best-case scenario is that you’re part of a tight-knit team of confident people who aren’t put off by it. No harm, no foul. But the second someone comes onto your team who’s not so confident, or you have to communicate outside of your team, it becomes a big problem. It’s a bad way to treat your colleagues — even undirected or casual anger intimidates and alienates the people around you — and it makes you a less effective engineer. 如果你在工作中习惯性地“情绪激动”,最好的情况是你身处一个紧密团结且自信的团队中,大家不会因此感到困扰。这样倒也无伤大雅。但一旦团队中加入了一个不够自信的新人,或者你需要与团队外部进行沟通时,这就会变成一个大问题。这是一种对待同事的糟糕方式——即使是无针对性的或随意的愤怒,也会让周围的人感到畏惧和疏远——而且这会让你成为一名效率更低的工程师。

Healthy workplaces route around anger in the same way that networks route around damage. Emotionally unreliable engineers will get left out of conversations that might cause them to blow up. Decision-making will get done around them in backchannels. I’ve seen this become a self-reinforcing cycle: angry engineers aren’t consulted on key decisions, which makes them angrier, which pushes them even further away from the spaces where decisions get made, and so on. 健康的职场会像网络绕过故障节点一样绕过愤怒。情绪不稳定、不可靠的工程师会被排除在那些可能引发他们爆发的对话之外。决策会在他们背后的渠道中完成。我见过这种情况演变成一种自我强化的恶性循环:愤怒的工程师不被咨询关键决策,这让他们更加愤怒,从而将他们进一步推离决策制定的核心圈,如此往复。

You can often find these engineers bitterly complaining that they keep the company together, but nobody ever listens to them. In my experience, this is almost never true. Engineers who are highly effective tend to get listened to — at minimum by their colleagues, and eventually by managers and product managers who want to extract as much value as possible from them. (One reason this is true is that all successful projects involve working with other people, and if nobody listens to you, you can’t do that.) 你经常会发现这些工程师在痛苦地抱怨说公司全靠他们支撑,但没人听他们的。根据我的经验,这几乎从来不是事实。高效的工程师往往会被倾听——至少会被同事倾听,最终也会被那些想从他们身上榨取最大价值的经理和产品经理所倾听。(之所以如此,原因之一是所有成功的项目都涉及与他人合作,如果没人听你的,你就无法做到这一点。)

Caring

关于“在乎”

Why do angry engineers believe they’re important? Paradoxically, anger can be really useful to a software engineer. Angry engineers are rarely the ones holding the company together, but they’re also rarely useless. One surprising thing about working for big tech companies is that some engineers are not just unproductive, but actively net-negative: either because they’re incapable of doing useful work on their own, or because they’re sloppy enough that they create more work than they do, or because they’re so checked out that they literally do nothing. 为什么愤怒的工程师会认为自己很重要?矛盾的是,愤怒对软件工程师来说确实可能是有用的。愤怒的工程师很少是支撑公司的中流砥柱,但他们也绝非一无是处。在大科技公司工作的一个惊人事实是,有些工程师不仅没有产出,甚至在净贡献上是负面的:要么是因为他们无法独立完成有用的工作,要么是因为他们粗心大意导致制造的问题比解决的问题还多,又或者是因为他们完全“掉线”,实际上什么都不做。

Angry engineers might be net-negative in a cultural sense, but in terms of literally solving tickets and shipping features, they’re usually well above average. Why is this? Anger often comes from caring about your work, and caring a lot is sufficient to make you a competent engineer. I’ve never worked with someone who genuinely cared about their work who wasn’t (or didn’t eventually become) competent. I actually think it’s healthy for an early-career engineer to sometimes get angry about their work, because it means they care a lot: it’s still a mistake in the moment, but it’s a “good mistake”. I certainly used to get angry — in fact, I wrote about the angriest I’ve ever been at work here. But you have to move past it. 愤怒的工程师在文化层面可能是负资产,但在解决工单和交付功能方面,他们通常远高于平均水平。这是为什么?愤怒往往源于对工作的在乎,而极度的在乎足以让你成为一名胜任的工程师。我从未见过一个真正关心自己工作的人是不称职的(或者最终没有变得称职)。我甚至认为,职业生涯早期的工程师偶尔对工作感到愤怒是健康的,因为这意味着他们非常在乎:虽然在当下这仍然是个错误,但这是一个“好的错误”。我当然也曾发过火——事实上,我曾写过关于我在工作中经历的最愤怒的一次事件。但你必须学会超越它。

Moving past anger

超越愤怒

Think of “caring about your work” as a vertical tube, unsealed at either end. You fill the tube by pumping in emotional investment from the bottom. If you have too little, it drains away and you end up as a useless coaster. But if you have too much, it overflows and you end up as an angry engineer that people have to work around. 把“关心工作”想象成一个两端开口的垂直管子。你通过从底部注入情感投入来填满这个管子。如果投入太少,它就会流失,你最终会变成一个毫无用处的“混子”。但如果投入太多,它就会溢出,你最终会变成一个让大家不得不绕着走的愤怒工程师。

One solution is to try and care the exact right amount: be invested in work a bit, but also have hobbies and a family and whatever else gives you perspective about your work problems. If you have a rich and healthy personal life, it’s hard to find yourself yelling at somebody about React state management. However, this is a tricky balance to maintain over time. 一个解决方案是尝试保持恰到好处的关心程度:在工作中投入一点,但同时也要有爱好、家庭以及其他能让你从工作问题中抽离出来的视角。如果你拥有丰富而健康的个人生活,你很难会因为 React 状态管理的问题而对人大吼大叫。然而,随着时间的推移,保持这种平衡是很困难的。

Another solution is to care about different things. The reason too much caring overflows into anger is because what you care about is misaligned with what the organization cares about. If your interests are perfectly aligned with your company’s (for instance, if you primarily care about delivering shareholder value), you can fit way more emotional investment into the tube before it overflows. 另一个解决方案是关心不同的事情。关心过度导致愤怒的原因,在于你所关心的东西与组织所关心的东西不一致。如果你的利益与公司完全一致(例如,如果你主要关心的是为股东创造价值),那么在管子溢出之前,你可以容纳更多的情感投入。

A little bit of “professional anger”

一点点“职业化的愤怒”

Here’s some dangerous advice: showing a little bit of anger at work can sometimes be useful. It can be a good way to signal that you care, or to build rapport with certain people, or to draw attention to something you think is important. However, it’s still always a mistake to be angry. You need to be able to drop back to a friendly mode at will, which is very difficult when you’re genuinely angry. 这里有一个危险的建议:在工作中表现出一点点愤怒有时是有用的。这可以作为一种信号,表明你在乎某事,或者与某些人建立共鸣,亦或是引起人们对你认为重要事项的关注。然而,发火始终是一个错误。你需要能够随时切换回友好的模式,而当你真正愤怒时,这非常困难。

Being able to show a full range of emotion at work is good. It makes you more persuasive and more human. Being a fully professional robot is fine — you can have a successful career this way — but there’s always going to be some kind of uncanny-valley HR-ness to your work persona that will make it hard to connect with your colleagues. 在工作中展现完整的情感是件好事。这会让你更具说服力,也更像一个真实的人。做一个完全职业化的机器人也没问题——你依然可以拥有成功的职业生涯——但你的工作人格中总会带有一种“恐怖谷”式的 HR 感,这会让你难以与同事建立真正的联系。

If in doubt, don’t show anger. It’s never wrong to be professional. However, if you can signal that you’ve got enough distance to separate your professional feelings from your real feelings, and enough perspective to realize that the stakes of a technical decision are fundamentally not that high in the grand scheme of things, it can sometimes be okay to show visible frustration so that people know you’re still human. 如果有疑问,就不要表现出愤怒。保持专业永远不会错。然而,如果你能表现出你拥有足够的距离感来区分职业情感与真实情感,并且有足够的视角去意识到技术决策在宏观大局中本质上并没有那么高的利害关系,那么偶尔表现出明显的挫败感是可以接受的,这样人们至少知道你还是个活生生的人。

Angry role models

愤怒的榜样

Well-known software engineering personalities are often angry. It feels unfair to give too many negative examples, but obviously Linus Torvalds’ rants about Linux are a great example. 知名的软件工程界大咖往往脾气火爆。列举太多的负面例子似乎不太公平,但显然 Linus Torvalds 关于 Linux 的那些咆哮就是一个很好的例子。