Quite likely, there's no one-size-fits-all solution for assessing candidates.
The way I approach this is by looking at the candidate's background and trying to make connections to the product the company or team is working on.
Then I have an open conversation with the candidate about these connecting points and possibly related subjects. It usually becomes obvious quite quickly if the candidate knows what he or she is talking about. It also gives you an idea about how the candidate communicates, which often is more important than technical skill.
Technically, that's still a technical interview but it's much more free-form than the rigid white-board interview format. It's more of a conversation between equals rather than a test setting, where one side is being questioned.