Okay, apparently once every year or two I try to do real talk with HN about attrition, and tonight's that night.
Firing people is unpleasant and emotionally draining. Everyone likes to talk about the failure mode where someone is overly quick to fire, but the truth for large orgs is that it's far more common to be overly slow to fire people. Absent other incentives, for every one person that you fired overly aggressively, you'll have 10 people sitting around drawing salaries despite being low-productivity or zero-productivity or negative-productivity and their managers are just avoiding conflict.
There are no perfect hiring practices, and no perfect ways to turn around failing employees -- as soon as your org gets to be a certain size (much, much smaller than Amazon or Microsoft), you'll have bad hires and/or employees who used to be productive who no longer are who you need to fire. And if you don't fire them, you get more of them -- they drain the morale of people around them. People say, "Why should I work hard if Bob is transparently doing nothing and still getting his paycheck?"
When you're a smallish org, maybe 100 people or fewer, you don't need processes for this, you just need the ultimate leaders of the company to demand accountability. If I'm the CEO of a 100 person company, I can tell my managers that it's really important that we have a high-performing team, that that means firing sometimes, and then do some spot checks to make sure that they're taking me seriously, and that's fine. And not having a process is preferable to having a process at this size.
But at some point in the triple-digit employee numbers, that falls apart. Once you have people 4 or more levels from the CEO, it starts getting really hard to make sure that everyone is just holistically doing what they're supposed to, and you start to need a process.
And once you've got, you know, high 4 digit numbers of employees or more, you also have to start being realistic about what value having a really high-performing team of 10 or 20 people somewhere deep down in your org chart really gets you: not that much.
Ignore gaming the system for a minute, let's just talk about first order effects. Just say, "Okay, in some kind of system that forces attrition, stack ranking or something similar, you remove the possibility of recognizing the reality of a team that has 10 members who are all high-performing."
If Amazon sacrifices the ability to have some random engineering team having 10 high performers, in return for getting a hundred teams to get off their ass and remove their low performers, that's a great deal for Amazon. Teams of 10 high performers are rare. They happen, sure. But they are rare. And at Amazon's size, they don't move the overall fortunes of the company much. In contrast, teams that accumulate deadweight are common, and because they are common, in aggregate they do move the fortunes of the company. Any smallish team of high performers that is actually in a position of high-leverage that it can affect Amazon's overall fortunes is going to be some weird exec-created team that's insulated from these kinds of performance metrics anyway.
But of course we can't ignore gaming the system, not entirely, and that's where the rubber hits the road. What's worse than 100 teams where deadweight is accumulating is 100 teams where deadweight is accumulating but also the managers are hiring to fire. But I guess the question is: is that actually a failure mode that happens relatively frequently? Are there enough cynical managers who have low enough empathy to hire someone just to fire them, but high enough empathy that they want to do that in order to protect the tenured deadweight on their team? I don't know the answer, but it seems like a bit of a snowflake situation. I'm sure someone is out there is basically a psychopath who'll hire someone just to fire them, in order to protect their buddy. But it doesn't sound like a common pathology.
There's no perfect system here, clearly. One of the real competitive advantages that smaller companies have -- a big reason why we all don't just literally have only five companies in tech -- is that people hierarchies get inherently less efficient as the org scales. But HN commenters, especially anyone here who aspires to one day run an org, whether as a founder or just a manager, should get past this whole business of, "the only failure mode we'll think about is being overly fast to fire."