How effective is your technical interviewing process?

When we were interviewing iOS developers, one candidate was disappointed to hear he was too junior. He pleaded for a chance, and I decided to bring him in and have him work on a random trouble ticket. In addition, we had just moved the office and hadn't even unpacked yet. With help I found a moving box with hardware and a tangled mess of wires, handed it to him, and asked him what he could do with it.

Passion and curiosity lit up his face as he quickly assembled this impromptu puzzle, then he figured out a bunch of things within the hour.

Given that anyone today can Google "iOS interview questions", check, etc., how effective is your technical interviewing process at identifying the right people?