Hire slowly. Fire fast.
This is a polite way of saying that a bad hire costs a whole lot of time and potentially money, so be careful about bringing them on and don't hesitate to ditch someone who "isn't working out" (translation: "He WHAT?! AGAIN!?" followed by optional weeping).
On the surface of it, this is sage advice and I completely agree with it. In practice, though, it's darn hard.
Looking at the hiring side, the safest hire is no hire at all. Obviously, that's not going to work; you need to hire someone because the current team can't do all the work all the time. You need a skillset, or at least another pair of clueful hands.
Looking at the firing side, getting someone to leave is emotionally wrenching for everyone involved: the employee, the manager, the rest of the team. Occasionally things turn truly nasty, and threats of litigation erupt. If you do it too often, too, you'll give your company a reputation for being a bad place to work. Firing is really not something you want to do.
So what's a manager to do?
There's no one answer. There are, however, partial answers:
- listen to the "hire slowly" part. It's better to be understaffed than to have to fire too often.
- Use contracting. When a contractor leaves, that's just the end of a contract; it's not firing. It's much less wrenching on the team and doesn't lead
- Contract-to-hire is a valid way to go. It's harder to hire, but it gives everyone an out if things don't work (that means the potential employee can leave, too, so make sure you have a good work environment so he'll want to stay!)
It's best to hire a great person who will complement and enhance the team, but it's impossible to really know that until you've gotten into it. In the meantime, be careful, and give yourself and the candidate as many chances as possible to decide this isn't working.... until that happy day when you both decide it is!