Do you thoroughly test employment candidates?
Do you rely entirely on the claims of Recruitment Agencies when selecting new employees? If you do, it may be a very costly mistake. We have been giving coding tests to new employees for 10 years. A candidate has to prove they can walk the walk before they can join our team.
We give a Project Management test to coders as well. Developers should be able to contribute to the working of a project from end to end. They need to communicate with not only sales and marketing staff, but also clients and people that walk off the street! Clients typically think developers (aka computer nerds) come from another planet. Getting Project Managers at the go between is good, but on many jobs it just adds a layer and an unnecessary cost to a job. Recruiting developers that understand the ins and outs of project management means that that developers have less reliance on a Project Manager, they get to speak to customers more (a very good thing) and the customer gets a cheaper solution.
Another thing is that when interviewing you have to go on your instinct a bit. This won't always work, but as Joel says: "a bad candidate will cost a lot of money and effort and waste other people's time fixing all their bugs." It's best to let a good candidate slip occasionally than let a bad one spoil your coding and client relationships. Joel again: "If you have any doubts whatsoever, No Hire."