An interview process has become fashionable in which candidates are asked to solve brain teasers or write code or pseudocode on whiteboards while the interviewers look on. Personally, I stink at both tasks and have never done well in an interview where they were used. You may therefore consider that the following comes from a biased source.

When I first went to work at Apple in the late 80s, they didn't use that kind of process (I don't know what they do now). They asked to see my previous work, to have the names of people I'd worked with, and to have me describe what I knew and how I might approach certain kinds of problems. That seemed reasonable to me then and still seems reasonable to me now.

I worked for several groups in Apple over the years, and I often had to go through similar interview processes even when moving within the company, but I never had to jump through the sorts of hoops that are all the rage nowadays.

The first time I encountered this currently-popular process was at Microsoft in the early 90s. The young Microsoft guys (and they were indeed all young guys) who implemented it took evident delight in roasting the candidate. There's no doubt that I failed that process, but I got a generous offer anyway, presumably because voices higher up wanted me at Microsoft. (I turned them down. Their interviewers turned me off; I didn't want to work with those guys.)

My impression of their process is not an isolated one. I knew several other people who reported the same thing. One of them was a guy who was rejected by that process, but who later went on to create and lead a Microsoft research project that has since become very well known. During his hazing he solved one of the posed problems elegantly, but was knocked by the interviewer because he didn't know the name of the data structure he had used. I remember thinking at the time, "the guy invents an efficient data structure on the spot to solve your problem and what concerns you is that he doesn't know its name?"

These hazing-ritual-style interviews don't measure what they purport to measure. You are asked brainteasers allegedly to explore whether you have the kind of mind that excels at problem-solving, but that's not what those questions measure. What they measure is how well you can ignore the distraction of a potentially hostile audience while trying to think logically. Whiteboard questions are justified in the same way--"we want to see how you think." Bad luck, then, because what you will actually see is how thick-skinned the candidate is--how much composure they retain while in the spotlight.

Neither of those qualities has anything whatsoever to do with any of the work I've done in thirty years as a programmer. Brainteaser questions and whiteboard exercises make sense if you're hiring someone to solve brainteasers in a few seconds in front of an audience; not so much for any other job.

Steve Jobs arranged a long one-on-one with me to try to persuade me to go to work for NeXT in 1994 (he succeeded). I had to go through their formal interview process after that, and one of their engineers tried to turn it into one of these hazing rituals, but his boss told him to cut it out.

Nowadays, though, they're all the rage. I finally started telling people I just wouldn't do it. If someone wants me to go to work for them now, my first question is about their interview process. If it contains elements I object to I tell them to forget it. Just mark me down with the worst possible score on those elements of the process. If you still want to talk to me after that, fine. Otherwise, you want someone else.

If you want to know what a programmer is capable of, look at existing work and talk to references. If you want to know how they think, engage them in intelligent conversation or, again, talk to people they've worked with. If you want to know specifically how a programmer will handle issues your company is grappling with, offer a short contract to solve some pending problem. That's going to tell you orders of magnitude more about what the programmer's thinking is like than brainteasers and whiteboard exercises.

About the only thing you're likely to learn from in-person interviews is whether the person seems to fit into the social milieu of your firm. That's valuable to know, but there's no need to dress that up with a song and dance about discovering technical aptitude, and if you think the current fashion in interviews is anything more than a song and dance, you're fooling yourself.