> I'm not sure why more companies don't just adopt a 'hire fast, fire fast' system.
Because it will vastly limit the number of skilled developers you can attract.
Let's consider two scenarios. In the first, a developer performs a coding challenge. The company is fairly sure that the developer is qualified to work there, and the developer is fairly sure she has the talent to stay employed there.
In the second, a developer is hired for non-technical reasons, and she quits her current job knowing that if things don't work out, she'll be looking for another job in six weeks.
Fuck that. Job hunting is stressful, and there is no way I would join a company if I didn't think I would be there for at least a year. I wouldn't even send my resume to a company with a reputation for that kind of fast turnover.