Avoid Trick Questions

It's important to come up with a good set of technical interview questions. There are lots of good ones out there, but trick questions should be avoided.

Trick questions are those that require a clever hack or a large cognitive leap to arrive at the solution. These don't work so well for interviews. Research suggests that your brain is less likely to jump to an insight when you are nervous or under stress, and we all know how taxing job interviews can be.

How would you swap two chars without using a temp variable?

If the candidate knows the clever XOR hack, they will nail this question. If they don't, they are going to need a flash of insight to get there. If bit manipulation isn't high on your list of required skills, you should skip this question.

Using trick questions can also be compared to adding a random variable to the middle of your scoring function. This can make the interview more fun and exciting for those conducting the interview, but that's a terrible goal. You should be trying to create a reliable and repeatable process by which to judge the potential hire while still giving them a positive experience.

It's best to stick with "boring" questions, which will demonstrate the candidate's skill and experience. Focus on problems that will utilize the types of data structures and algorithms that you use on a daily basis. This doesn't necessarily mean the questions need to be easy, but they should be obvious to someone who has the level of skill and knowledge that you are looking for.