How much does a bad hire cost?

What’s the biggest risk in hiring?

It’s the risk of a bad hire .

How much does it cost to make a bad hire?

I would conservatively estimate that it costs $100,000 and nine months of your life. Here’s how the math works from a hiring manager’s point of view:

  1. Spend a month and 25 hours of labor dev team manager labor to find/interview the candidate(s) and winnow the applicants down to someone to make an offer. (the hiring manager would prefer to be doing literally anything else but hiring .)
  2. Extend an offer, wait 2-6 more weeks before the new candidate starts. It can be painful to wait another six weeks, because the team is currently short-staffed, and has been for a long time. That’s why they’re hiring!
  3. Start date! Start paying $150,000/yr or $3000/week for your shiny new employee.
  4. Pay $12,000 for the first month of them working, figuring out your dev environment, ticket management, who knows what parts of the codebase, and a few easy bug fixes.
  5. Start getting nervous. Employee not batting it out of the park like you’d hoped. Maybe still onboarding, give it another month (and $12,000 in payroll expense).
  6. OK. Three months in and another $36,000 in payroll later, you’re pretty sure there’s a problem.
  7. Start the pre-Performance Improvement Plan work. Talk to their team, their manager, them. Why is it not working? Why is the team working slower with this new team member, instead of working faster? Not only are you wasting five figures of payroll, the rest of your expensive dev team is producing less as well!
  8. Pre-PIP work is over. Another $5k in payroll gone forever. Now it’s time to give the formal PIP, which everyone knows is “beginning the firing process”
  9. Two more months and $24,000 in payroll later, you fire the employee.
  10. You feel relief with having gotten rid of the bad employee. You’re thrilled that you can get back to normal work.
  11. Check the clock and balance sheet. It took you nine months and $100k to get to where you were at step 1.

Add up the time/expense:

  1. 1-2 months to to find/hire a candidate.
  2. 7-8 months (and $84K-$96k) to hire, trial them, try to help them be successful, give up on that plan, and fire them.
  3. Many hours spent thinking about this specific problem, talking with others about it.

There’s nine months of your life. That’s 9 months of time, sure, but it’s also 9 months of opportunity cost. What if you’d hired a great candidate? They’d be rapidly approaching their first year on the job, and everyone would be happy about it, instead of this disaster you’ve had to deal with.

Here’s the really scary part: To large organizations (1000+ employees), wasting $100k is meaningless compared to the wasted time and mis-directed effort . The entire organization is more annoyed at having lost the time of a productive software developer . They don’t care that they lit a giant pile of money on fire, they’re annoyed that their competitor is getting new features out the door and gaining marketshare and the future of their $x,000,000 company hangs in the balance .

Oh, and the good managers, not only do they want to be wise with money and build features/gain market-share…

They want to see their team flourish.

Being fired is a life-defining moment. (I speak from experience)

If you’re a kind and empathetic person, it’s particularly unpleasent to fire someone and it feels like a personal failure .

You want to work for a kind and empathetic manager. (They’re not common, but they’re not impossible to find.)


Author of the linked post here.

This piece is US-centric. I don’t know how these figures/processes would fit outside of the USA. That said, after writing the piece, I shared it with a 2x VP of Engineering, and he said in part:

Also, I can attest that your $100k cost to company for a bad hire is very conservative!

Another VP Engineering said:

I’ve made two bad hires in my career and it haunts me during interviews

“De-risk yourself” is solid career advice

1 Like

It’s also an emotional hell hole. The entire time you’re thinking about firing this person, it is taking up far more mental energy than it should, probably in the part of your brain usually reserved for very important decisions.

For any individual, this means Josh is right, and you should de-risk yourself. That means its more important to demonstrate “definitely not totally incompetent” than it is to demonstrate “possibly extremely effective”

Unfortunately, this leads directly to an ecosystem-level obsession with credentials and brand names.

The startup I used to work at was unusually willing to hire people with non-traditional backgrounds. Of the dozens of places I applied to, they’re literally the only ones who even replied. But even there, all of my engineer coworkers had CS degrees, and the literal majority had degrees from Ivy League Universities and work experience at Google, Uber, Microsoft, etc. Our team of 4 PMs went to Harvard, Stanford, Stanford and Georgetown (additional work at Stanford), and not even because they referred each other.

Supposedly, Github-as-resume was supposed to fix this, but it turns out to be incredibly time consuming to actually evaluate someone’s code. For a while, side-projects-as-resume was supposed to solve this too, but those skills turn out to be orthogonal to, or even in opposition to being a good software engineer at a company.