• Normalization, and data modeling in general, are good questions for intermediate level and higher database developers, because it's hard for a candidate to talk about without having actually having hands on experience. Again, open ended "explain to me" type of questions are better than questions that require a dictionary one sentence answer for which the candidate could have read up on the night before. Instead of asking "What is normalization?", instead say "Explain why normalization important?". Instead of asking "What is a clustered index?", instead say: "Tell me the advantages a clustered index has over a heap, or a non-clustered table?". I've found that the smartest folks, those who have been around the block a few times, actually enjoy the opportunity to explain things from the perspective of their past experience. Not only that, but those of us in high level IT positions need to explain concepts on a daily basis, it's just part of the job. When asked to explain something, frustration and blank stares on the part of the candidate suggests to me gaps in knowledge or at least a problematic personality.

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho