I can't wrap my head around why companies do this. If you find a competent programmer whose work is good enough to use, wouldn't your team be better off if you hire them full-time? That seems more efficient than interviewing 200 people every time you need some code written.