I know a company (profitable, no-VC, small private hw/sw business) that has been practicing that for years. The scheme is quite simple: they "rent" people at bodyshops in Russia (it's relatively cheap there), work with them for some time and then offer them relocation to the HQ, paying some penalty to the bodyshop.
Another well-known company has different version of this: they just hire everyone after very basic sanity check. It's pretty easy to get in, but at the same time it's even easier to be fired. Turnover at the company is horrible, but there's very strong core of managers/designers/devs, that survived all battles.
My point is there's no way you can find out for sure the candidate is good for a) company b) project c) codebase d) team etc etc, unless he's clearly crazy/arrogant/stinks or whatever. So maybe that "gradual hire" is the answer.
P.S.: Being at the other side of hiring process sucks too. May be even worse.