Firing someone is always hard, no doubt about it. But I disagree that it's bad for team morale to fire a nice underperformer. In fact, I've seen the opposite happen, where having to drag along a team member was a reason for people leaving.
IMHO, hiring based on homework is no guarantee that you won't end up with a bad hire anyway. It is just another imperfect data point to base your decision on, but one that comes at the cost of massively reducing your number of candidates.
IMHO, hiring based on homework is no guarantee that you won't end up with a bad hire anyway. It is just another imperfect data point to base your decision on, but one that comes at the cost of massively reducing your number of candidates.