The whiteboard interview alternative: how to (finally) do technical interviews right
Technical interviews have long sparked outrage among software developers. They aim to assess engineering aptitude and predict future performance if hired for the job. This sounds pretty straightforward, right? Why is it then that so many tech companies, including tech giants, resort to interviewing methods developers truly hate? The whiteboard interview is by far the biggest offender.
In this article, we look at the following topics:
- What is a whiteboard interview and what is wrong with it?
- What is the aim of the technical interview?
- Do developers hate the idea of being tested? Insights from our study
- 73% of developers take a coding test sent by the recruiter
- 91.9% of developers who start taking the test finish it
- Whiteboard interview alternative a.k.a. how to structure your technical recruitment process
- Spartez technical recruitment: structure
- The whiteboard interview: conclusion
We’ve collected more tips and tricks for technical interviews in The ultimate guide to the technical interview.
What is a whiteboard interview what is wrong with it?
Whiteboard interviews are essentially tech quizzes which tell you very little about real coding skills. Candidates are asked to invert binary trees on a whiteboard or recall algorithms off the top of their head. To quote coding instructor Quincy Larson,
“Unfortunately, interviewing practices at big tech companies aren’t that scientific. The decision of whether to hire a developer usually comes down to the candidate walking up to a whiteboard and regurgitating algorithms that haven’t changed since the 1970s, like a (classically) trained monkey.”
In other words, the biggest flaw of the whiteboard interview is that it’s not realistic. It’s also not representative of one’s coding skills. As a consequence, this interview style can be stressful and intimidating for the candidate. Even skilled, experienced developers can feel intimidated by the process and even fail this type of interview.
Evidence?
Max Howell: Swift. Open Source. Futurism. Creator of Homebrew. Full-time making open source for *you*.
David Heinemeier Hansson: Creator of Ruby on Rails, Founder & CTO at Basecamp, NYT best-selling author, and Le Mans 24h class-winning racing driver.
Whiteboard testing puzzles don’t resemble the day-to-day work of developers – there are no computers, no access to reference materials. This scenario is unrealistic and as such, tells you very little about one’s real coding abilities. As Quincy Larson wrote, “The only world where you would actually need to be able to recall an algorithm would be a post-apocalyptic one, where the hard drives of all the computers connected to the internet were fried, and all copies of foundational academic papers and computer science textbooks had been reduced to ashes.”
It’s highly unlikely that your developers work in this kind of environment. To make things worse, whiteboard interviews tend to produce homogenous teams because they typically “discriminate against people who are already underrepresented in the field.“
With all the bad rep they’re getting, you’d think that whiteboard tests were a thing of the past. Sadly, they’re still very much alive. There are many resources teaching people to ace whiteboard interviews, since like we’ve said, it’s a skill of its own.
Luckily, not all is lost.
What is the aim of the technical interview?
Having established what the whiteboard interview is, let us now look at the aims of the technical interview.
- evaluate problem-solving skills
- work together to assess team and company fit
- focus on tasks specific to your company, for instance, the ones your dev team is currently working on
Let’s also take a look at the aims of the candidate who shows up for the technical interview.
- have their skills assessed in a objective way
- meet the people they could potentially be working with
- get a feeling for the company
Whiteboard-centric interviews are sometimes used instead of technical screening (sigh), which should precede any interview. With the right approach to tech skills assessment, you can cut down the number of unnecessary interviews by up to 65%. Screening programming skills early in the recruitment process allows you to focus your time, energy, and conversation on the most promising candidates. As a rule, the better the preselection process, the fewer people need to be invited to an onsite interview.
Whether they’re used before the technical interview or used as the technical interview, whiteboard interviews alone simply cannot allow for all the goals mentioned above to be reached.
RECOMMENDED READING: How to give a technical interview: 7 technical interview tips
Do developers hate the idea of being tested? Insights from our study
In the case of tech skills assessment, the devil is in the details. For developers, the idea of having their skills tested is not the problem. It’s the execution that sparks the outrage.
Evidence? We’ve recently published the DevSkiller Technical Hiring & Skills Report 2019 based on over 112K coding tests taken by candidates from over 120 countries. Having this data puts us in a great position because we can answer some important, relevant industry questions. Here are two of our findings (there’s plenty more in the report, make sure to check it out).
Test completion rate: 73% of developers take a coding test sent by the recruiter
Across all difficulty levels, the majority of developers will finish a coding test based on real work principles. This suggests that developers are open to the idea of a skill assessment. What is more, it demonstrates that they respond well to the RealLifeTestingTM methodology our platform is powered by. Interestingly, for some countries, completion rates are almost universal. These countries include Latvia, Armenia (97%), Denmark (96%), New Zealand (92%), and the UK (92%).
91.9% of developers who start taking the test finish it
The findings of our recent study suggest that not all coding skills assessments are equal. Based on our sample, almost 92% of developers who started taking a test on our platform took the time to finish and submit it.
This suggests developers are not opposing the idea of a technical skills assessment as such. What they don’t appreciate is being tested in a way which doesn’t allow their skills to shine.
Whiteboard interview alternative a.k.a. how to structure your technical recruitment process
There are many alternatives to running whiteboard interviews. Let’s look at the best setup you can use to boost your technical hiring results.
- Approvvigionamento
- Screening (with an automated solution)
- Soft skills interview and technical interview (often on the same day)
- Offer
- Hire
First of all, you need to automate your preselection procedure and filter out non-viable candidates way before the interview stage. This way, you only spend the face-to-face time of your IT team on candidates who might be a fit for the position. What happens if you don’t screen out weak candidates? Your results will likely include plenty of time wasted, unnecessary bottlenecks, frustration, productivity losses… That’s just the tip of the iceberg.
Second of all, you should follow your technical screening with a soft skills interview and a technical interview. During the soft skills interview, I strongly recommend asking these behavioral questions to ask technical candidates.
In the technical interview, you want to use coding interview tasks which meet the following criteria:
- The test is an authentic work sample
- It gives your candidate all of the resources they would normally use at work
- It bases the task on a business problem they will face when they start working for you
One of the best whiteboard interview alternatives is the CodePair feature.
You can find out more about code pairing in one of our articles: Online coding interview and how to CodePair remotely
A word of warning: even if all of the abovementioned elements are present in your process, you still have room for improvement. Let’s take a look at how Spartez boosted their developer hiring results by moving things around in their process.
Spartez technical recruitment: structure
1. Sourcing
Spartez hires approximately 20 developers annually. The tech skills they value include Java, JavaScript, .NET, and C++.
2. DevSkiller technical screening
We give everyone a chance to attempt the test. We do not assess people only by CV and years of experience, we care more about their technical skills and depth of experience.”, says Patrycja Kiljańska, Talent Acquisition Specialist at Spartez.
3. Live coding test
Those who pass the initial screening are invited to a live coding test conducted by one of their engineers. This step is optional but some companies prefer to keep it to further decrease the number of on-site interviews.
4. Technical interview
Successful candidates are then invited to a 60-minute technical interview conducted by two Spartez engineers. The interview covers the fundamentals of Java or JavaScript, as well as questions about other technical issues and tasks that Spartez developers face at work.
5. Interview with development managers/the CEO (for senior roles)
This is a typical managerial round covering communication, teamwork, motivation, and product based questions.
Of course, the structure of the technical process at Spartez is only an example of how you can set up your technical screening process.
The whiteboard interview: conclusion
In a world that runs on code, it makes sense to hire people based on the quality of their code and not other, discrete skills like rote memorization. As Nate Swanner says, “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.” I couldn’t agree more.
If you want to make a change and assess coding skills objectively, take a look at our catalogo dei test di codifica.