William Gant
Surviving the Whiteboard Interview A Developers Guide to Using Soft Skills to Get Hired
William Gant
Nashville, TN, USA
ISBN 978-1-4842-5006-8 e-ISBN 978-1-4842-5007-5
https://doi.org/10.1007/978-1-4842-5007-5
William Gant 2019
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein.
Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springer-sbm.com, or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation.
This book is dedicated to all those who stretch the definition of possible and make it not only achievable but who show the way to make it the everyday for others. I especially dedicate it to my friends Doc, Rob, James, David, and John, without whom my world would be smaller and the possibilities within it dimmer.
This book is also dedicated to my wife, who has exhibited a remarkable level of calm for one subjected first to a budding programmer, then to a budding podcaster, and finally to a budding self-marketing writer and public speaker. Thats not a thing to be underestimated.
Introduction
You might be wondering why I am qualified to write this book. Youd be right to do so. Lots of stuff is available about getting through the development interview process, some by experienced developers and others that, frankly, dont have a wide range of experience to draw from.
I, on the other hand, do have a fair bit of experience in this space. November 2018 marked a milestone for me, because that month will be the 20th anniversary of the first time I got paid for writing code, as well as the anniversary of the first time I went through the process of a development interview. That was my freshman year of college and happened after four and a half years of learning to code on my own. I later followed that up with completing my bachelors at Lipscomb University, hitting the workforce and interviewing for full-time positions in late 2002. Since then, Ive had 17 software development jobs, many of which were short-term contracts, along with numerous side projects, most of which required one or more interviews and at least half of which required getting through a whiteboard interview.
Ive not only survived numerous software development interviews from the interviewee side of the table, but I have conducted interviews as both a manager and as a lead developer. Having led and managed developers, Ive learned a lot about what a manager is looking for when conducting an interview. Knowing this has given me a lot of insight into some best practices for developers who are trying to get hired.
While not a qualification for writing this guide, Id also like to point out here that I am one of the guys on the Complete Developer Podcast ( www.CompleteDeveloperPodcast.com ). As of the writing of this book, the podcast has been going for more than 3 years and has a lot of stuff that might appeal to you if you are reading this guide. In addition, I am also one of the founders of Developer Launchpad ( www.DeveloperLaunchpad.com ), which is a meetup group focused around helping developers get ready for developer interviews by giving them practice coding exercises and real training on dealing with whiteboard interviews, so that their first experience with it isnt in an interview where the stakes are higher. I also frequently speak on the topic and have presented a talk on this topic at numerous times.
I am sharing these tactics with you in this book for a lot of reasons. For one, whiteboard interviews are unnecessarily challenging and difficult, especially for new developers who dont know the tricks and tactics to get through it. I also personally detest whiteboard interviews, as I dont think they are a particularly good way to evaluate someones skill as a developer. I hope that this guide will not only help you get through this process in a way that makes it work well for you, but that the hacks that this book contains will circulate widely enough to eventually make it a less popular interviewing method.
Developer hiring is fundamentally broken as currently constructed, and if enough people can learn to use the broken system to their advantage, we just might rid ourselves of it. In that sense, this serves as a bit of graffiti on the wall that keeps qualified people out of development when they shouldnt be. You might say that this is a bit of a personal crusade and youd be right.
Acknowledgments
Many thanks to Erin Orstrom. A question of hers during a meetup group long ago started the chain of events that culminated in this book, and she did the technical review of the code in Chapter .
Contents
About the Author
William Gant
is a software developer who has been working in the industry since 1998. He has worked with dozens of different programming languages in a wide variety of programming environments, both as an employee and as a consultant. In addition, he has owned his own business, been heavily involved in several startups, and is currently half of the Complete Developer Podcast, among numerous other things in the development space.
William Gant 2019
William Gant Surviving the Whiteboard Interview https://doi.org/10.1007/978-1-4842-5007-5_1
1. Why Software Development Interviews Are Hard
In this chapter, well start out by examining why so many of us find interviews, especially in software development, to be such a painful and difficult experience. Well start out discussing physiological responses and how to manage them. Next, well discuss some strategies for turning the psychological responses into something that is actually useful. Finally, well examine several ways to prepare for interviews that we will discuss in further detail later in the book.