Within our profession, we have developed an apt process for interviewing potential hires. Our current process typically involves a whiteboard, a candidate, stoic stares, and a palpable, mounting, tension that threatens to suffocate all who occupy the room. This, when coupled with tedious, extraneous, or overtly abstract questions, will always bring out the best of those who are subjected to it. While few admit it, it also grants a wonderful feeling of power, holding the answer to the question the candidate may struggle to find. Especially when the poor soul can’t seem to grasp an exquisitely nebulous, or entrapping, question.
While all the above mentioned have served us well, I believe I have produced several ideas to elevate our process from apt, to extraordinary. I will go on to give a brief outline of them below. I suggest all tests be done on the same day, in rapid succession. This will allow one to gauge the new hire’s ability to work the long, grueling, and mental devastating hours we should expect of our developers.
First, a Multitasking Aptitude Test, or MAT henceforth. Prior to the whiteboard interview, we must simulate, and judge performance in the optimal development environment. Give your candidate a moderately difficult problem to solve. Place near him or her: a phone set to ring once a minute, a second monitor with an open email and team chat application, an empty chair. The candidate must answer any incoming communications. If at any point your candidate seems to enter a “flow” state, send in an associate to sit in the empty share and ask an unrelated question, or six. If your candidate does not finish the task ahead of your expectations, deduct points.
Second, a physical fitness test. We all know that excellent exercise habits lead to long term health. Therefore, a candidate who is not fit will almost certainly not be able to handle the physical stress of repeated crunch times and midnight fire drills. Quite simple this one.
Third, the Pivot Quickly Within Allocated Timeframe Test, or P-QWATT henceforth. The P-QWATT is designed to judge the candidate’s ability to never, ever, work on one issue or feature at a time. On a second monitor, open a support ticket app. Allow the candidate to begin a moderately difficult challenge. Just as the candidate reaches his or her “Eureka!” moment, send a support ticket. The candidate must answer the ticket and solve the new problem. Just as candidate begins his original problem anew, re-enter the room and propose a new problem. Tell him or her it may be completed after the original problem. After a momentary wait, inform the candidate that, after further thought, the new problem is more important. As with the MAT, if your candidate does not finish the task earlier than you expected, deduct points.
Fourth, and finally, be sure to quiz your candidate on easily searchable, trivial questions. One should expect a dictionary-like knowledge of all aspects of whatever language is being used in your stack. A sign of a truly great developer is one that knows the ins and outs of your favorite language.
I hope my fellow hiring managers agree with my modest, yet wonderful, proposal. I firmly believe that these will be of great benefit. After all, if we truly believe in the whiteboard tradition, we must also hold firm, true to, and interview for, all the traditions of our past.