If you need a whiteboard or tests, to tell they are a professional then you may be doing something wrong. I can talk to a person and within 10 minutes tell you if they are a good developer or not. Perhaps it's a gift, but I suspect not, what I suspect is people focus on the wrong parts of what makes a developer a good developer.
People focus on the mechanics of development. Do they know syntax? Do they know the API?
In my time I have forgotten more syntax and API's than I know, I used to be a top notch Pascal developer and could be again in 2 weeks same with Delphi, but today I would be hard pressed to write a line of it. But people get hung up on this, they think a whiteboard, disconnected from information, somehow simulates reality; meanwhile we all use Google, before that it was the development library at your company, Barns and Noble and a host of other printed material. The reality is memorizing little used portions of a languages API is a waste of time (the platform is going to change). For 80% of applications built you are going to use the same simple patterns in whatever platform is being used.
The key is to focus on what you are realistically going to have them do. If you are hiring a CRUD developer they should have a good handle on Data access, Relational or NoSQL theory and web/mobile technologies. Don't ask them to write an algorithm that factors prime on the whiteboard when no one is ever going to write that and even if they are, they are certainly not going to do it in a disconnected environment.
I look for three things, intuition, an inquisitive nature and motivation. Those are the three things that cannot be taught. It has yet to fail me other than the above mentioned anomaly.