Is It Time to Kill the Whiteboard Interview?

Whiteboard Web Developer

Whiteboard Web Developer

Tech interviews are hard enough, but for many tech pros there’s an aspect that’s downright unbearable: the whiteboard. Developers complain about it often (and have for years), while some tech companies have stopped whiteboard exercises altogether. The question remains: should we just ditch the whiteboard?

In theory, whiteboard interviews are great. Designed as a method to allow candidates to scribble out computer-science concepts, the practice has become something else entirely. Now it feels like a tool used to embarrass good candidates as often as weed out unfit ones.

There’s often a time crunch imposed on candidates, too. An interviewer may ask you to invert a binary tree or reverse a string, but limit the amount of time you have to do so. Nerves of steel are critical… but is that a quality developers need day-to-day?

Whiteboard coding seems to have its roots in the earliest days of computing. At a 2005 commencement speech for Lakeside School, Microsoft co-founder Bill Gates reminded us that hacking away on a MacBook wasn’t always how the world worked:

You had to type up your program off-line and create this paper tape—and then you would dial up the computer and get on, and get the paper in there, and while you were programming, everybody would crowd around, shouting: “Hey, you made a typing mistake.” “Hey, you messed this up!” “Hey, you’re taking too much time.”

Whittling down a candidate pool via whiteboard would have been a great idea in those days.

Google whiteboard

Few Do Whiteboard Interviews Right

Chris Brown, Vice President of Human Resources at West Corporation, notes the process can get unruly. “At times, managers can adopt questions/scenarios aren’t always relatable to the industry or are outdated,” he said. “Also, the manager needs to be leery of using internal jargon that most candidates may not understand, like citing certain scenarios that might be common to their company in general, but not at the public at large.”

“Asking someone to write a piece of code on a whiteboard is not natural at all,” added Sylvain Kalache, co-founder of the Holberton School, which uses whiteboard sessions as part of its curriculum because it’s useful for identifying which candidates understand macro concepts. Kalache added:

Drawing an architecture diagram (which could be a web stack composed of databases, web servers, load-balancers, caching layers, etc.) is something that will allow the interviewer to assess if a candidate has a good understanding of how [a] software system [is] working and [is] articulated, where a system’s strengths and weaknesses are, and how evolve it. That’s a skill that will be required to do the job well. Software [systems] have to be designed properly so that the product/platform will be properly working.

Some candidates just don’t get it, though. Marcion Albert, CEO of newawning.com, told Dice about one particular candidate who simply couldn’t deal with the pressure of standing in front of a whiteboard (and may not have been qualified to anyway):

When the candidate arrived, he began by making excuses for his inability to answer my questions on the phone, which I said was fine. I told him that he did well enough to get an in-person interview and that today was what’s important.

When we started, he tried to steer the conversation to all the projects he had worked on, but I explained that I needed to ask him how he would solve specific questions. I handed him a marker and asked my simple program question that would look at a string and determine if it met a specific criteria. For reference, this is something used at a middle school coding contest, and as the applicant writes up a solution, I complicate the success criteria of the string each time to see how they handle more complex use cases.

Upon getting the marker, he goes to the board and begins writing code. He starts in one language, and after a few minutes asks to start over in a different language. I agree and say that I’m just looking for a working solution, and that I’m here to answer any clarifying questions. On his second attempt, he is really frustrated, repeatedly writing and erasing lines, and then asks if he can just talk through a solution with me in “pseudo-code” instead of writing it.

I say that I’m really looking for something written, and we can talk through each step as much as he likes while he’s putting things on the whiteboard. He turns to the whiteboard, staring blankly for 10 seconds, then violently turns around, throwing the marker inches from my head with enough force to leave a hole in the drywall. He begins yelling profanity, grabs his personal items and storms out the the building, cursing the entire time.

1s3eeoogwepgjcdbb3__f2a

It’s Not Fun for Anyone

As-is, there’s strong evidence for the uselessness of whiteboards. A good jumping-off point would be Max Howell’s popular tweet after being rejected by Google:

It’s not that Howell is unqualified, or that his whiteboard issue was necessarily the reason he didn’t get hired. It could have been a number of things, but the whiteboard may have been the only tangible let-down in the interview process.

JavaScript developer Sahat Yalkabov recently took to Medium to voice his concerns about the tech hiring process, reminding us that even the interviewers may not even be aware of the right answer:

There were a few hiccups along the way, but I eventually solved the problem on a whiteboard. At one point I had to explain to one of the interviewers about blocking and non-blocking nature of JavaScript, and why my answer was correct and his premise — wrong. Another interviewer sided with me, saying that my answer was indeed correct.

There’s no silver bullet for hiring qualified talent that will meld with a company’s culture, but if we take a macro view of our current situation, restricting the use of whiteboards in interviews may be beneficial. While many founders, CEOs and managers we’ve spoken with conclude that whiteboards are a great way for candidates to relate general understanding of concepts, some misuse it as a way to trick candidates into failure.

And it’s all very unnatural. Ben Dilts, CTO and co-founder of Lucid Software, may have a better method:

Our interview process includes a hands-on coding exercise, with a compiler, IDE, and open Internet access which serves the purpose of gauging candidates’ ability to actually write concise, well-organized, working code in a reasonable amount of time.

We additionally have a whiteboard coding exercise which is not intended to be a test of a candidate’s ability to write code on the spot, but rather as a mechanism for exposing their core Computer Science knowledge and intuitions.

If we only had our coding challenge, a candidate might be able to implement a really inefficient part of a compiler in a short period of time, but have poor reasoning ability about the underlying theory.

shutterstock_279051326

Retire the Whiteboard (Sometimes)

Developers don’t program on whiteboards; the days of Bill Gates and friends writing down code before taking it to a terminal are long dead.

And let’s be honest about the process. Developers lean into search, Stack Overflow and GitHub to get things done more often than anyone would like to admit, so cutting them off from resources is a bad idea. Software development takes time, too. While a concept may be immediately recognizable, it takes time to cultivate it into a solid working product.

A better use of the whiteboard may be to dig deeper into a candidate’s GitHub project, and encourage them to sketch their concept for how an app or tool works and can scale. Ask them about their own projects; if they can’t relate how their own projects work–and accept criticism about them–that might provide a better idea of who they are and how they work than inverting a binary tree ever could.

Right now, candidates have little recourse beyond pushing back when asked to do things on a whiteboard. Though most agree that whiteboards have their use cases, asking for a more familiar environment for some tasks is reasonable.

Candidates, consider bringing your own laptop: instead of hand-writing code, ask to open up your favorite IDE and code it right on front of them. Time limits (if imposed) make it feel like a hackathon anyway, so ask to hack!

Asking to skip a whiteboard exercise when it’s not applicable to the task seems reasonable, and gives you a bit of insight into how rigid a company’s structure might be. While interviewers may not want you googling basic computer science concepts, busting out some code and flipping your screen around is a fair compromise.

A basic takeaway is that candidates and companies are looking for the same thing: productivity and personality. Everyone wants to churn a great product, and to get along while doing so. Finding common ground to make that happen should also be part of your next interview process, even if that means leaving the whiteboard blank.

Comments

5 Responses to “Is It Time to Kill the Whiteboard Interview?”

November 23, 2016 at 10:24 am, Rodney Barbati said:

I’ve walked out on at least one interview when asked to do a bunch of coding with a pen and paper.

Any code produced in such a manner has no relationship to code developed in an IDE. I refactor my code as I produce it, resulting in efficient and elegant solutions – you can’t refactor code written on paper.

Reply

November 23, 2016 at 10:40 am, Don Nico said:

Companies should hire good people and teach them to code. It doesn’t take long at all. Sifting through thousands of candidates, trying to discern coding skills, requires a vast expensive infrastructure of people, processes, and things that produce no revenue. If companies need programmers, they should simply identify decent people of average intelligence, train them to the firm’s specifications, and promote them through the standard process. REM: there’s nothing dumber than a room full of smart people. Google’s junkyard is replete with failed initiatives spawned by geniuses.

Reply

November 24, 2016 at 9:06 pm, ReVeLaTeD said:

Your title needs to be rewritten.

“Is It Time To Kill The Developer Whiteboard Interview?”

That, I say yes. It’s a pointless exercise. Writing code on a physical board is silly and a waste of time.

But as currently written (which totally doesn’t match your article), I 100% disagree.

In general, the whiteboard interview is critical for many reasons.

– Can you present in front of a group of people?
– Can you explain what you’re talking about in a way people can understand?
– Can you use the whiteboard to support your argument?
– Are you able to put things into terms that a general audience can comprehend and absorb?

I demand a whiteboard exercise when I do interviews for non-developer roles. It’s the best way to identify a person who has “IT”…they can talk, they can present, they can explain, and they can visualize. All of these are critical skills in the workplace.

But more importantly, a whiteboard exercise assures that a person could not have rehearsed. They had to be ready for anything thrown at them – something that happens in real situations.

If you bomb a non-developer whiteboard exercise, you’re bottom of the list. It’s the easiest thing to be doing. And no, I don’t want to hear about “introvert” this (I’m an introvert) or “shy” that (shyness is an excuse).

Today’s successful worker has to be ready for anything to be thrown at them, at any time. If you’re not that type of person, then you need to find a different line of work.

Reply

November 24, 2016 at 11:13 pm, Jane Doe said:

Absolutely! I am a woman with over 25 years experience and I was interviewed at a company by 3 sets of 3 developers. They were more interested in impressing each other with their whiteboard questions than asking for solutions to real problems they faced at the company. It was a group of what I’ll call young white “bros.” They didn’t actually want me at this company so they put up these ridiculous questions just to see me fail. I could feel it and I just kept my composure and pushed through as a professional. One guy even punched another quy in the arm when he asked me to whiteboard his problem and said, “Good one dude! Where did you get that one from?” Anyway, I took a job at another company that didn’t ask me to whiteboard anything and I’ve been SO SUCCESSFUL there as the only programmer when the entire programming staff quit! I had no one to show me where to get the code, how to deploy the code, etc and I did it. The whiteboard exercises are just a tool for the interviewer to show off.

Reply

November 28, 2016 at 11:18 pm, J++ said:

Just go to codeeval.com and search for a good developer, there they have people that solve problems and you can see how do they code. Whiteboard is useless.

Reply

Post a Comment

Your email address will not be published.