Well, I have a few suggestions. Try these in order:
(1) You could require that all of your candidates take a carefully
crafted programming test. The higher the mark that they get on
the test, the better programmer they are. Duh.
(2) You could ask them to bring a 5000 line sample of their code.
Just a glance should tell you whether or not thay are a super
star. After all, if their coding style looks like yours, they
must be good, right?
(3) You could get into a "design session" with them. Ask them
something like:
Q: how would you design a house?
Then let them talk and draw pictures for a few minutes. Pretend
to be paying attention, nod in agreement a few times, ask a few
clarifying questions --you get the idea. It doesn't really matter
what the candidate says here, because when they are all done, you
say something like:
"Oh, well that's pretty good, but I want a design that is
optimized for a family of giraffes" **
What you are looking for here is how they respond to the kind of
unexpected changes that happen in the real world.
At this point, if the candidate takes a swing at you then you have
found the right one.
---
** some jackass actually suggested this on his website.