Typical Programmer

A glittering performance of rare perception

Popular articles
All articles

About me
Hire me

Thirteen Patterns Of Programmer Interviews

17 Sep 2007

If you’ve interviewed for programmer jobs a few times you will probably recognize some of these patterns. If you are just beginning your career as a programmer learn these patterns to prepare yourself.

“Who’s On First?”

No agenda or schedule, no conference room available. The interviewers are late or can’t be found. You wait while each interviewer reads your résumé for the first time, then you answer the same stock questions five times. The last person to interview you awkwardly walks you to the door. They will lose the interview notes and your phone number so don’t expect a call-back.

Gruesome Search For More Bodies

A huge project is late and adding more “headcount” to meet delivery dates. The staffing plan calls for ten people with your “skill set.” The project manager isn’t sure exactly what you will be doing. Interview consists of matching buzzwords in your résumé to buzzwords in vague job description. Not all of the cubicles are assembled yet. These projects are the bread-and-butter for contractors paid hourly. When studies look at why so many software projects fail these are the projects they look at.

The Free Personality Profile

The HR manager or a “career coach” administers a Myers-Briggs test or some similar nonsense. You are an INTP and that information will somehow affect the hiring process, but the test administrator can’t say how. Object on religious grounds then offer your astrological chart instead. This fluffy interview is too often followed by The Interrogation so watch out.

The DMV Driving Test

You are given a canned quiz to test your skills. The test will consist of questions like In Visual Basic 6 give an example using the mod function. The two or three candidates with the highest scores will be called back and asked when they can start. This is an interview situation where a less-experienced candidate who has never written a working program but who has memorized the Visual Basic A+ Certification Guide has the edge.

The Voigt-Kampf Test

You are asked a series of brain-teaser puzzles, starting with something like Why are manhole covers round? and leading up to How would you move Mt. Fuji? Some interviewers will pose programming problems just to get a chance to show you their amazing solution. There are “no right or wrong answers,” the idea is to test your creativity and approach to solving problems. Right. The interviewers are smug and enjoy watching you squirm.

The Play Group

You face four or more people at once, usually potential co-workers but possibly including a manager. This is the one kind of interview that you want an HR person present for. A gang of programmers one-upping each other trying to humiliate and trip you up is like hyenas circling a wounded gazelle. Try to avoid the lunch interview: if you spill food on your clothes, choke on a bite of salad, or don’t know how to eat dim sum that’s all anyone will remember about you.

The Interrogation

This interview often starts with a “good cop/bad cop routine.” An HR person will loosen you up with some chit-chat or a personality test. The real interview will be conducted by an alpha personality who has gone over your résumé with a highlighter. From the first minute you will get the impression that there’s no way you are qualified for the job. You will have to defend every job change and every career choice. Details you omitted to keep your résumé on one page will be extracted and then used against you. Be prepared for a minefield of questions designed to prove that you don’t really know any of the skills you claim you know. A variation of this pattern is the Co-Op Committee, where a group of self-important blowhards take turns telling you why you aren’t close to qualified.

The Recital

The flip-side of The Interrogation, this is what happens when the interrogator is in a good mood. Instead of making you feel small the interviewer puffs himself up by bragging about his many accomplishments and skills. Don’t let the conversation lag — you may be asked to go to the whiteboard and write code to detect a cycle in a linked list. If the interviewer stops talking for more than ten seconds ask them what kinds of interesting problems they have helped the other programmers solve recently.

The Conference Call

The interviewers can’t waste their time on in-person interviews so they want to do a lengthy phone screen first. You are expected to keep track of the voices of several people you’ve never met or talked to before. There are probably people lurking on the call that you won’t know about. This can turn into a variation of The Play Group or The Interrogation depending on mood and temperament; people find it easier to be sadistic over the phone.

The Private Audience

This is a passive-aggressive form of The Interrogation. Your interview is re-scheduled several times because the key person is too busy. When you are finally squeezed in he won’t know your name or have your résumé handy, and will only have half the time you were expecting. He will take cell phone calls and be interrupted at least once. Show respect for the interviewer’s self-importance and you may have a chance.

The Former Occupant

The person leaving the job you applied for is hanging around to help hire his replacement. The interview consists of listening to his bittersweet stories. He doesn’t want to scare you off, but he doesn’t want the job to go to just anyone. If he tells you who is cool and who to watch out for you probably have the job.

The Live-Catch Trap

The job has been open for a long time. Everyone is eager to meet you, no one asks any hard or unexpected questions. The last person who had the job left after just a few months for a better opportunity. Your future co-workers haven’t learned a new language or tool in seven years, but they are planning to take a Java class this year. If you express interest in the job you will get a call-back before you get out of the parking lot.

The Back-Stage Pass

The interview takes place in a lounge area that includes a foosball table and vintage arcade games. Every cubicle is overflowing with ironic knick-knacks. You notice paintball equipment and a unicycle. You are meant to be impressed by how fun and cool everyone is. If you are too awed they will think you are a rube; if you aren’t impressed enough they won’t think you’re worthy. The interview won’t be technically challenging but you can be tripped up by not knowing about obscure indie bands.

Real interviews may mix the patterns, or involve multiple interviews that follow different patterns. Before you start interviewing work out your strategy for the various interview patterns so you can react accordingly. Remember: People love to talk about themselves, so no matter what kind of interview you find yourself in try to get the interviewers to do most of the talking.


B Woodward, 18 September 2007 at 7:13 am

Awesome! We use several of these but the gang-bang pattern seems to be the most popular followed by the who’s on first pattern.

Not surprisingly, these patterns are not just for interviews, but also are indicative of the culture of the shop.

Chas. Owens, 18 September 2007 at 8:13 am

You left at least one style out: The Practical. You are given a real problem (like designing a small database and some simple reports) and are expected to be able to solve it. It is sort of a mix between The DMV Driving Test and The Voigt-Kampf Test.

codist, 18 September 2007 at 8:18 am

Being in this hell right now, I can add another: How Would You Solve This Nasty Problem interview, where the interviewer is trying to get you to solve something they can’t figure out themselves, hoping to get free advice.

Bob, 18 September 2007 at 11:57 am

not to mention the design interview where they ask you to come up with “a few ideas” on how you would redesign their site, or unnamed site x. Followed by them stealing your ideas and casting you aside.

Colyn, 18 September 2007 at 12:17 pm

I actually had a “Gang Bang” interview once. There were 4 guys (3 programmers and the owner of the company). The programmers were all wearing gold necklaces and watches, and reminded me of “Two Wild and Crazy Guys” acting smug about their incredible programming talent. Needless to say I didn’t get the job and I’m very thankful for that.

Brendt, 18 September 2007 at 12:43 pm

There is one more type – the “Sports Match”. In this, a group of applicants for the position are brought in and interviewed simultaneously by a group of stakeholders – IT people and people who you will be working for. In theory, this tests your ability to interact with a team, to handle multiple clients, and your ability to not be obnoxious. Depending on the circumstances, you may either be asked the same questions as all other candidates, or each candidate may get different questions.

Don’t ask.

Dino, 18 September 2007 at 2:26 pm

Spot on. What’s interesting is any of the above can be either a pattern or an anti-pattern. In most cases, they work as anti-patterns.

R Hayes, 19 September 2007 at 4:09 pm

I interview a fair number of people. I would have to say that my style resembles the interrogation more than anything else. My intent is not to terrorize, but to ask questions until the candidate no longer knows the answer. A great programmer should be comfortable in the land of “I don’t know”. They should be comfortable enough to both admit they don’t know and to talk about problem solving when you don’t have all the answers.

It does terrorize some people, which is bad. And people who are smarter than I am have left the interview feeling they wouldn’t get a call back (they did). It does keep the bullshit artists at bay.

J.T. Wenting, 2 November 2007 at 12:41 am

” A great programmer should be comfortable in the land of “I don’t know”.”

Not during a job interview. As soon as reach the situation where you don’t know the answer during a grilling you automatically assume that you’ve failed the grade. The only people who don’t get nervous and defensive when that happens are the ones who don’t even realise they’ve got the answer wrong from the interviewer’s reaction.