Anecdote time: I once interviewed a new candidate for a Python job along with three other developers on my team. One of the people on our team who was not a part of the interview handed us all a list of Python interview questions about 30 seconds before we headed down to talk to the candidate. He said these were the "best practice" questions he just found and thought they'd be good to ask. We figured "why not?". Well, turned out the questions were pretty obscure Python stuff, that in fact none of us could answer on the spot. We did figure these out later as a group, but it certainly made me feel very unprofessional.
Since then I've stopped asking questions like this. Trick questions and logic questions I think are a bad metric. A person can be great at sudoku but be a horrible developer in terms of writing maintainable code. Instead, I tend to just talk about the macro-level stuff. "What have you built? Can I see it? How long did you maintain it? What was the trickiest part? I imagine it had performance issues; did you spend time optimizing it?" I do ask some tech questions. For example, for web developers I ask "Describe how an XHR request happens in detail." But that is as deep as typically go.
Comments
Anecdote time: I once interviewed a new candidate for a Python job along with three other developers on my team. One of the people on our team who was not a part of the interview handed us all a list of Python interview questions about 30 seconds before we headed down to talk to the candidate. He said these were the "best practice" questions he just found and thought they'd be good to ask. We figured "why not?". Well, turned out the questions were pretty obscure Python stuff, that in fact none of us could answer on the spot. We did figure these out later as a group, but it certainly made me feel very unprofessional.
Since then I've stopped asking questions like this. Trick questions and logic questions I think are a bad metric. A person can be great at sudoku but be a horrible developer in terms of writing maintainable code. Instead, I tend to just talk about the macro-level stuff. "What have you built? Can I see it? How long did you maintain it? What was the trickiest part? I imagine it had performance issues; did you spend time optimizing it?" I do ask some tech questions. For example, for web developers I ask "Describe how an XHR request happens in detail." But that is as deep as typically go.