What some of us do now is at home exercises with no deadline and setup the interview to do a code review of it after it's given back.
It gives so many advantages:
- people will have some fun trying to solve a real issue / build a little software
- they will show how good they are at stack overflow, general methodology, cleanliness, test coverage, deployment and even git (how many we see who can't even gitignore their project files, make a build script that works, or test for real)
- horrible candidates who can't even cheat will not be able to lie their way around a fake resume, cheaters will bomb the code review quite fast
- candidate will also discover their future team mates general work attitude during the review and if the reviewer is good, will lock the candidate faster than "how many billard balls can you put in a Boeing 747" type of interview.
- candidate will even LEARN during the code review => you get away with something out of the interview even if you fail
Since I've been interviewed that way, doing my little project on my wife's pregnancy bed smiling like an idiot at solving the challenge, then fell in love with my manager showing me new tricks during the review, I'll never do any other kind of interviews myself.