I've done a fair bit of contracting, and most interview processes are ridiculous imo. You can't glean anything much of value from a face-to-face interview with a software developer; at least, it can range from the fact they either can't answer questions, or they can answer them perfectly with all the right idioms and (language)-speak. Doesn't really help to determine whether they'd be a valuable asset I don't think (well, the former you can dismiss, but the latter you can't rely on solely). Of course, there's a lot more you'll get from the interview related to interpersonal skills etc.
I think a coding test is vital... that's the first step in filtering out the ones that can talk the talk versus people that can write nice code. I had to conduct interviews for a team in another country at one stage, and I had (supposed) PhD students that couldn't write a Hello World in the language of choice. Had they have been selected just on their resumes, they would've got in easily.
Then beyond that, there are fast learners that can pick up anything given a bit of time and become the leaders in the group, then there are people that can't. Interviews I don't think will find the former.
Then at times these people will get thrown together on teams and you wonder why there's friction... because you've hired some people that aren't helpful, and the others in the team know they'll have to carry them. For expensive jobs, I think its worth taking the time to do a few rounds, provide some good coding challenges, and not to be too pedantic about things if you think the candidate has the experience to pick things up despite not having learnt the latest * framework (of which we seem to get new ones every day).