Remote first hiring knowledge & best practices straight to your inbox!

Introducing Virtual Whiteboarding for System Design Interviews

System design skills are a core prerequisite for most senior developer roles. Roles like back-end developer, cloud engineer, and more require system design skills for success on the job.

The best way to conduct a system design interview has always been through an onsite whiteboarding session. Using only a marker, an eraser, and a whiteboard, the candidate collaborates with the interviewer to solve design problems through visuals. It’s a great way to evaluate a developer’s system design skills.

But evaluating system design skills is significantly more challenging in a remote interview. Designing scalable, complex systems—and visualizing them—isn’t something that can be explained on the phone, or through a snippet of code. And freehand online drawing tools are, for the most part, equally impractical.

So to make it easier to conduct system design interviews from afar, we’re introducing a new feature to CodePair*: the virtual whiteboard. It’s an intuitive, collaborative online whiteboard that makes remote system design interviews as natural as an on-site whiteboarding session.

Introducing the CodePair* virtual whiteboard

The CodePair* whiteboard is a shared virtual whiteboard that candidates and interviewers can use to draw and collaborate during a real-time interview.

The virtual whiteboard provides quick-draw tools and an endless, infinite drawing space to sketch and visualize their thoughts. The result is a collaborative environment where candidates and interviewers can easily discuss and design simultaneously—just like they would in an on-site environment.

Why (and how) we built this

As our customers made the transition to remote hiring, we heard one persistent challenge: they needed a virtual replacement for the whiteboard interview. But existing online whiteboards relied on freehand drawing. It worked well with a tablet and stylus; but most candidates didn’t have a tablet to use for the interview. And freehand drawing with a mouse or trackpad was slow, clunky, and sometimes difficult to read.

So we scoured the web in search of a virtual whiteboard that was just as intuitive as a physical whiteboard, using only a mouse and keyboard. We investigated, iterated, and reviewed until we found the best fit: Excalidraw.

Spurred by the rise of remote work, Excalidraw is an open-source whiteboard tool that’s become an internet hit in a short span of time. Its hand-drawn look, combined with pre-created shapes, and keyboard shortcuts make it easy to draw quickly (and neatly) in ways that are borderline impossible to achieve freehand via mouse. And its simple interface makes it easy to focus on drawing—not toolbar options.

Animated comparison of drawing a design using quick-draw tools vs. a freehand drawing tool on a virtual whiteboard

Drawing a simple diagram using a virtual whiteboard with quick-draw tools vs. freehand tools (sped up 4x). 

In our internal tests, we’ve been able to create charts in Excalidraw roughly 10x faster than we could with a freehand tool and a mouse. It’s become a day-to-day staple on our team—just one more reason that we’re excited to continue to grow this capability with other open source contributors on GitHub.

By integrating Excalidraw into CodePair*, we’ve produced a practical virtual whiteboard that perfectly complements our existing remote interview capabilities—something we’re proud to share with our customers.

Using the virtual whiteboard for system design interviews

The whiteboard is now embedded directly into every CodePair* session by default. You can also add a new whiteboard in the same way you’d add a new coding question by creating a new tab in the interview. Participants can easily swap from the IDE, to the whiteboard, and back again. It makes it easy to toggle between evaluating big-picture system design skills and more granular coding skills.

When it comes to remote whiteboard interviews, collaboration is key. With this in mind, we designed our virtual whiteboard to be as collaborative as possible.

GIF showing an interviewer and candidate collaborating on a virtual whiteboard during a system design interview

The virtual whiteboard does this by showing real-time updates as the other participant draws—as though you’re drawing on the same board in person. Labeled cursors show each participant’s mouse movements, making it easy to see who’s drawing, and to emphasize different sections of the whiteboard as you work.

At the end of the interview, the interviewer will get a copy of the whiteboard in the candidate’s CodePair* report. This makes it easy to share with other panelists for smoother review and deliberation.

Conducting system design interviews remotely

Assessing system design skills from afar isn’t easy—but using CodePair’s* virtual whiteboard alongside its built-in IDE, candidates can visualize and address system design questions from big-picture diagrams to more granular coded solutions.

The virtual whiteboard within CodePair* is available for HackerRank customers now. Open a sample session here, or start a new CodePair* interview to try it for yourself today.

*Disclaimer: This blog post contains messaging around the "CodePair" and "CodeScreen" features which are now called "Interview" within the HackerRank product as of 10/06/20.


Photo of Raghav Gopalakrishnan, Product Manager at HackerRank

As a product manager at HackerRank, Raghav Gopalakrishnan is committed to creating great interview experiences for candidates and interviewers alike. Overseeing both CodePair* and developer experience, Raghav leverages his background in engineering to empower customers to create more effective, candidate-friendly technical interviews. He’s passionate about building intuitive and impactful products.

Would you like to receive similar articles straight to your inbox?