Cracking the Coding Interview, 4 Edition - 150 Programming Interview Questions and Solutions
Cracking the Coding Interview, 4 Edition - 150 Programming Interview Questions and Solutions
Cracking the Coding Interview, 4 Edition - 150 Programming Interview Questions and Solutions
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Interview</strong> War Stories | You Can (Maybe) Count On Me<br />
You Can Count on Me, Just Not Until Early Afternoon<br />
Ahhh, 1999. The crest of <strong>the</strong> dot-com bubble, <strong>and</strong> <strong>the</strong> tightest labor market in history. Our<br />
company was racing to exp<strong>and</strong> its development team, <strong>and</strong> we would have hired a German<br />
Shepherd if it knew HTML. Instead, we wound up hiring Ian. We should’ve hired <strong>the</strong> dog.<br />
Ian was a cheerful, friendly guy who had a gift of natural charisma. He got along fantastically<br />
with all of <strong>the</strong> interviewers, <strong>and</strong> seemed very intelligent. Skill-wise, he was adequate. He<br />
hadn’t written a single line of computer code outside of his college courses, <strong>and</strong> didn’t even<br />
have his own e-mail address. When we gave Ian <strong>the</strong> chance to ask us questions at <strong>the</strong> end of<br />
<strong>the</strong> interview, he asked about flexible work hours, <strong>and</strong> how soon he could take vacation time.<br />
Instead of showing an interest in <strong>the</strong> career opportunities, or in company’s growth prospects,<br />
he asked whe<strong>the</strong>r he could take <strong>the</strong> all-you-could-drink break room soda home with him.<br />
The questions grew more bizarre from <strong>the</strong>re.<br />
Ian was very interested in our Legal Assistance benefit. He wanted to know if it covered <strong>the</strong><br />
cost of filing lawsuits, if it covered him if he got sued himself, if it applied to any lawsuits he<br />
currently was involved in, <strong>and</strong> if he could “<strong>the</strong>oretically” use it to sue <strong>the</strong> company itself. He<br />
also asked us if he could use it to help him “fix” some unpaid speeding tickets.<br />
In any o<strong>the</strong>r year, that should have been it for Ian right <strong>the</strong>re. But, in 1999, we were hiring<br />
anybody who was even remotely competent. Ian collected paychecks from us for eighteen<br />
months, <strong>and</strong> he was about as productive as a traffic cone. He usually sauntered into <strong>the</strong> office<br />
around ten-thirty with some sort of lame excuse (by my count, he had to wait for <strong>the</strong> cable<br />
guy sixteen times in a six-month period). He usually killed <strong>the</strong> morning by answering e-mail<br />
<strong>and</strong> playing ping-pong, before breaking for a two-hour lunch. After lunch, it was more pingpong,<br />
<strong>and</strong> maybe an hour of writing bad code, before bolting <strong>the</strong> office sometime around<br />
three. He was <strong>the</strong> dictionary definition of unreliable.<br />
Remember, your potential future team members need to know that <strong>the</strong>y can rely on you.<br />
And <strong>the</strong>y need to know that you won’t need constant supervision <strong>and</strong> h<strong>and</strong>-holding. They<br />
need to know that you’re able to figure things out on your own. One of <strong>the</strong> most important<br />
messages that you, as a c<strong>and</strong>idate, can convey in your interview is hiring me will make your<br />
lives easier. In fact, this is a large part of <strong>the</strong> reason for <strong>the</strong> famously difficult interview questions<br />
at places like Amazon <strong>and</strong> Google; if you can h<strong>and</strong>le that kind of unpredictable pressure<br />
in an interview, <strong>the</strong>n you st<strong>and</strong> a good chance of being useful to <strong>the</strong>m on real projects.<br />
To cite a more subtle example, once I was on a four person team that was desperately trying<br />
to recruit new members to help work on an old pile of software. It was a real mess; we'd<br />
inherited a nasty ball of spaghetti, <strong>and</strong> we needed people who could jump in, figure things<br />
out, <strong>and</strong> be part of <strong>the</strong> solution.<br />
There was one very smart fellow, Terry, who would have been a great asset for our team –<br />
but we didn’t hire him, despite his excellent technical <strong>and</strong> personal skills. It was because he<br />
1 7<br />
<strong>Cracking</strong> <strong>the</strong> <strong>Coding</strong> <strong>Interview</strong>