Giter VIP home page Giter VIP logo

whiteboard-pairing's Introduction

Whiteboard Pairing

In order to get you guys more practice whiteboarding, we're going to have you pair up with a partner each day and have you both swap between being an interviewer and an interviewee. This ensures that each student gets in at least one live whiteboard practice session a day.

This is how it's going to work. At the end of the previous week, you'll be a assigned a problem. This will be the problem that you will pose to your interviewee when it's your turn to be interviewer. You're being assigned the problem at the end of the previous week because it's very important that you get familiar with your assigned problem. In order to be an effective interviewer, you need to know the problem you're asking inside and out.

A working reference solution will be given to you, but you should figure out other ways to solve the problem because everyone thinks about problems differently. What's important here for you as an interviewer is be familiar with multiple approaches to solving your given problem, as well as the tradeoffs between working solutions. Your interviewee may very well come up with a solution to the problem that is very different from the reference solution or your own preferred solution, but that doesn't mean they are wrong. At that point, it will be your job as their interviewer to discuss with them the tradeoffs between their solution and yours.

Additionally, the working reference solution you've been provided with will be in JavaScript, but we don't want to limit interviewees to having to whiteboard in JavaScript. Some of them may wish to go with Python (or even C if they're really brave). You should be able to effectively act as their interviewer regardless of the language they choose to implement their solution in. So part of your preparation time should be spent on implementing the solution to your assigned problem in multiple languages.

Tips on How to be a Good Interviewer

As an interviewer, you hold a lot of power in your hand over your interviewee. You can make life pretty straightforward (though this doesn't necessarily mean easy) for them, or you can absolutely ruin their day. It goes without saying that we're aiming for as much of the former as possible.

For the purposes of this whiteboard pairing exercise, your job as an interviewer is to set up your interviewee for success as much as you possibly can. While the question that you pose to your interviewee may itself be challenging, we want everything else to be lined up such that your interviewee has every chance of succeeding.

This means that your interviewee should not have to deal with vague instructions, unclear expectations, or the mind games of trying to guess "what does the interviewer actually want?". This is why it's of the utmost importance that you, the interviewer, review the instructions of your assigned problem and make sure that the instructions and expectations of the problem much as much sense as possible. If they don't, then they need to be cleared up. Better for you to figure these things out beforehand than for your interviewee to have to suffer through it in the moment.

Additionally, another very important function of interviewers is to provide constructive feedback to your interviewee. This is very important, since the whole point of this exercise is to get you all more comfortable and better prepared for whiteboarding in a real-world interview setting. Tell your interviewee what and how they could have done better. If they weren't able to solve your problem to completion, give them pointers on how to improve, for example, "When seeing a problem like this, your first thought should be to use this data structure because of x, y, and z."

Don't ever put your interviewee down. Everyone is here to learn. Don't forget that, and always try to be patient with your interviewee.

A Note on Googling

Googling during a whiteboarding pairing session is not forbidden. That being said, Googling should be done within reason. Obviously don't allow your interviewee to just google a solution to the problem. However, checking MDN for a useful method is acceptable, as well as checking Wikipedia for a definition. Use your best judgment as an interviewer.

whiteboard-pairing's People

Contributors

seanchen1991 avatar dragonrydrz avatar

Watchers

James Cloos avatar Mason Morrow avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.