It's always much, much harder to fire someone than to not hire them in the first place. There are a lot of people who are doing a decent job, a 90% job, and you really wish you had the 100% person doing that job, but the 90% person just doesn't deserve to get fired, so you hobble along, suboptimally.

For small software companies, having the right people is super important. On a team of five, one bad hire can literally wreck the team.

And that one 90% person causes other problems. Someone takes just a little bit too long to deliver their component, and it gets pushed off to the Next Major Release, which never comes, because you go out of business by then. Not because the person was terrible, just because it took them ...

Get THE BEST SOFTWARE WRITING I now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.