George Dinwiddie asked me a question in email, “Why do companies hire junior-level contractors? I feel bad about spending the company's money trying to teach these junior contractors to be better software developers. A junior-level direct hire makes sense, as you expect them to be around long enough that the education pays off. But a junior contractor seems like a total waste–training someone for the benefit of a later engagement, probably with another company.”
Sometimes, I just don't understand the money games companies play. It's “cheaper” in terms of money outlay to hire junior contractors, because you don't pay benefits. But, you also don't receive the value of the money. You're investing in a person who can't possibly stay long enough for you to get the payback.
The problem is you can't measure a single person's costs or productivity. You hve to remember that it's the team‘s cost and the team‘s productivity. Any new hire will reduce the team's overall productivity. That's one reason I advocate assigning a buddy for a while, so only one person is directly affected by questions.
But it takes anywhere from 6-12 months for people to become effective in an organization. How long do your contractors last? Many organizations (in the US) have a rule about eliminating contractors in a year. If you've hired junior contractors, you've just wasted the money you spent for a year on that contractor, and reduced the productivity of the team.
If you believe you need to hire junior contractors, think hard about what you and the team will get out of them.