In Defense of the Whiteboard
Note: This article is a work in progress. Parts are unclear and not representative. A revised version is coming soon.
Recently, the whiteboard interview has gotten some bad press, but I don’t think it’s the whiteboard’s fault. As a long-time friend of the whiteboard interview, I feel compelled to defend it. And while I can’t comment on the portions of the article that relate to bias or gender discrimination, I can speak from experience about the medium itself: the whiteboard.
But first, a story.
I remember my first college computer science class like it was yesterday. I loved what I was learning. For the first time in my life, school was fun and rewarding. I was hacking on my laptop all around campus, writing simple bank account programs and making little circles bounce around the screen. It was blissful.
And then midterms happened.
On midterm testing day, I walked into the testing center. I only knew one thing about the exam: no computers allowed. I waited in line with the other nervous students for the testing administrator to hand me my paper booklet. It had a light green cover sheet. As I walked nervously to my desk, I was cautiously hopeful that this would be fun and rewarding like my projects so far, despite the fact that I could not use a computer. I sat down and opened the exam. The first page was mostly blank with a small paragraph of text at the top instructing me to write a program that uses–I’m not making this up–recursion, to print the lyrics to “Old McDonald had a Farm”. WHAT!? That doesn’t make any sense! At first I was confident, but as I thought about the problem and wrote a few notes, my confidence turned to worry. After 10 minutes that felt like 10 hours, I decided to just start coding. Remember, I had nothing but a pencil to write this code. I wrote a few lines but quickly erased them when I realized I was going down a dead end. I started again, and this time I got further. I wrote a couple dozen lines. OH CRAP! Dead end again! More erasing.
Code. Dead end. Erase. Repeat.
I repeated this process a few times until I noticed my pencil was running out of eraser. I was also running out of time. At this point panic started to set in, and I cobbled together some semblance of a program and turned in my exam.
I was humiliated.
I was angry.
I never wanted to feel that way again.
I tell you this story so you can know that I have a great deal of empathy for candidates who are given a crappy medium to demonstrate their skill in an interview. Certainly, the whiteboard can be that crappy medium. But it can also be really great. Here’s how.
As an interviewer, here are the things I do to make my whiteboard interviews successful:
Thing 1: Collaborate. Don’t interrogate
When I interview a candidate at the whiteboard, I tell them that I am not looking for a right or wrong answer. Instead, I want to know what it’s like to work with them on a problem. And I want them to know what it’s like to work with me. This helps me get into the frame of mind that I am trying to be just as much on display as they are. During the interview, I ask the candidate to write code and draw diagrams. I do some too, and we talk about them together. This is intended to simulate a working environment, and in my experience, it does a pretty good job. It’s important that the candidate knows we are going to collaborate, and I will not sit in silence waiting for them to poop out a correct answer.
Thing 2: Simple problems
Because whiteboard space is limited, we are forced to choose simple problems for the candidate to solve. No one likes to sit for 60 minutes while a candidate scribbles on the whiteboard. Least of all the candidate! This way, we only work on problems that are already a good fit for an interview’s time constraints, and we can still see if they are able to write code. But we don’t put them in the awkward situation of having to write too much code. The medium naturally discourages us from using problems that take too long or require too much writing.
Thing 3: De-stress
Interviews are stressful, and if the stress is too high, it will bias the candidate’s behavior, and you will receive an incorrect view of the candidate. To avoid this, I try to put the candidate at ease by telling them that we won’t grade their handwriting, nor will we dock them for syntax errors, and we don’t care how nicely they can draw curly braces. I start the process by writing a little code on the whiteboard myself, to help break the ice. Also, when the candidate writes code that I think is particularly good, I tell them so, just like I would any time I see someone do something cool.
Lots of companies interview poorly. It’s true. But I don’t think the whiteboard is an inherently flawed medium for conducting great interviews.