The Hardest Interview Puzzle Question Ever

5 days? That sounds like something wasn’t quite right at first. Hope everyone is healthy and well now.

That must be a cultural thing.
In France, I had a boatload of job interviews (most of them unsuccessful, of course, my jobless periods happened, unsurprisingly, in crisis periods like now) and as far I as recall, I haven’t had such questions.
From time to time, I was asked some technical questions, or to find as much errors as possible in a small C program (did a good job there) or to write a small C code.

But most of the time, the job interviewers relied on resume scrutinizing, asking what I did at various periods, etc.

Now, we have a 3 months (can be extended to 6 months) period where we can be fired immediately (after this period, it takes 3 months to fire somebody), so if you are blatantly incompetent, if you had bluffed about your experience, etc., it will become obvious and out you are. A loss of time for the employer, but not so much, and I suppose most candidates are honest anyway.

how much of your favorite brand of soda is sold in this state?

I hate soda and don’t drink it. Next!

@Schmoo, thanks for letting me know about this Tim Minchen person. That was great! A lot more informative than this repetitive prattle about Mount Fuji (To put it in the modern dialect of the American teenager OMG WTF who cares?)

@WordofmouthMike: congratulations on surviving hospital, having babies is natural, going to hospital can be fatal!

The ‘natural’ mortality rate of childbirth (ie, nothing is done to prevent death of the mother) is estimated to be 15,000 in every million births. In Europe and the US, the current mortality rate is 90 in every million births. A few hundred years ago, less than 50% of women survived the birth of all of their (then standard) 5 or 6 children. But hey, who needs facts when you can just add the word natural to everything?

One of my favorite questions to ask is Did you notice anything in particular about our facility when you came in? (not applicable for phone interviews of course). Its not a pass/fail question, but it gives a little insight into how they think. Out of the 20 or so interviewees for the last opening here, the ones that didn’t notice anything also didn’t have any programming skills; the ones that said something vague (that parking was a problem) had basic skills; but the ones that pointed out specific things (like the ashtray 50 feet after the no smoking sign) had some l33t skilz.

This is so fucking full of bullshit i’m very happy i don’t work in your company… Can you make a difference between attention to useless details and ability to grasp detail when you actually NEED it. Actually, forget it, this is worse than that. I could basically say the total opposite, a lot of programmers i know don’t notice shit about this kind of things unless they actually need to, because they’re using their mind on more important matters.

I so hate those tricky shits about how to be the best hirer anyway …

@Raph, I agree. That is just pretentious drivel. The kinds of comments I see about hiring programmers are always so strange, moronic, stereotypical, and nonsensical.

The first square you click on a Windows minesweeper board is certain to be empty.

Doh! I guess I don’t get the job.

The Soda question is easy …

I live and work in the UK …

Soda is called either a fizzy drink or cola not Soda
There are no States in the UK
So the answer is : None

Do I get extra points for lateral thinking …

@WordofmouthMike: congratulations on surviving hospital, having babies is natural, going to hospital can be fatal!

@Schmoo: The ‘natural’ mortality rate of childbirth (ie, nothing is done to prevent death of the mother) is estimated to be 15,000 in every million births. In Europe and the US, the current mortality rate is 90 in every million births. A few hundred years ago, less than 50% of women survived the birth of all of their (then standard) 5 or 6 children. But hey, who needs facts when you can just add the word natural to everything?

Facts: Women are screened for possible complications for the 8-9 months leading up to the birth, have a fully trained midwife on hand with a complete portable medical kit, and you only an emergency call and a short journey away from a modern hospital (or they would recommend a hospital birth), so a home birth is once again an option…

A few hundred years ago women had no screening, no medically trained midwife, no medical kit, no phone, and no access to hospital… and were often malnourished, a large number died after the birth not during it …


Jaster said : There are no States in the UK
The UK IS a state.

From Wikipedia : The United Kingdom is a unitary state consisting of four countries: England, Northern Ireland, Scotland and Wales.

So … I guess you don’t get the job.

The simplest way to figure out if someone can program is to ask them to write a small program. During the intervew.

Say: Here’s a PC (not connected to the internet), I want you to write a program to (pick one):

a. convert a string to an integer without using the library routine that does it for you.
b. backup every file in a given directory and that directories’ children to another directory.

In one book I read, back in the days when I was reading books about how to run a development team, the author said something like the way most of us hire programmers is like hiring a juggler without actually asking him to juggle in front of you before you hire him.

Other techniques I’ve used with success include asking a programmer to bring in a program or part of a program she wrote that she was proud of and discuss briefly what it was that she found most interesting. One candidate brought a 1,000 page print out and couldn’t tell me anything about it. She didn’t get the job.

My wife and I also just birthed our first kid at Alta Bates (your photo of the footprint blanket is the giveaway) and I must agree that the constant flux of nurses is ridiculous. They even send in head nurses just to ask you questions about how good a job the other nurses are doing! You can imagine I had some fun coming up with the answers that I didn’t give them.

And I have an unrelated question based on the same post. (Reading your segueways between disparate topics is always fun and has often reminded me of William Poundstone, which is really funny because today is also the first time I’ve seen you mention one of his books…!)

The question is about your interview process. My favorite interview is to ask the candidate about a recent project. (No prep time, but also no audience other than me.) I then make up a way to enhance the product he tells me about, and ask him how he’d build that enhancement. It’s a new feature, or an optimization, or a public API for the product, or whatever. This seems like a logical extension of your favorite type of interview, so the question is, have you done that before and was it informative?

By the way, the company I know that asks puzzle questions is full of very smart geeks and they ask puzzle questions simply to gauge whether the personality fits – not to gauge software skills.

Congratulations on your new son and on making my work partners laugh when I showed them his hello world message.

A little bit OT, but relating to interviews – well, to job postings that might lead to interviews…

My primary coding language is C#. When coding web functionality, I also use ASP.NET, JavaScript, HTML, and CSS. Many job postings, however, require .NET programming experience. From the context, it appears employers, or at least the HR departments, think of .NET programming as something other than C#, VB.NET, and ASP.NET. They seem to think that my years of experience with C# and ASP.NET aren’t relevant to .NET programming, even though the job description says, Create and enhance company web site, or create/update company application to foobar widgets.

So, what does .NET programming experience really mean?


I feel asking puzzle questions is a good way to judge candidates with no prior experience. Jeff’s method will probably work for experienced programmers. That’s how I go about it.

I guess I think a little differently than most developers.

The question about moving a mountain made me think about a couple of Zen parables. In one, the wise man answers on bucket at a time. This is probably a variation on the story of a monk who comes upon an empty well at the foot of a mountain and, having only a spoon, starts trekking up and down the mountain to bring melted snow to the well, a spoonful at a time. In either case, the story prmpts consideration of the nobility (or foolishness) in pursuing the futile cause. In the another parable, the ultimate answer to the question is walk away from the mountain. You can’t actually move a mountain, but by moving yourself, you can achieve the same practical result.

The are many other references to moving a mountain in various cultures. Faith can move a mountain. If the mountain won’t come to Mohammed, Mohammed must go to the mountain. In each, the mountain symbolizes the impossible, and the lesson of the story is found in the value of attempting the impossible.

There are many things that a software developer could learn from contemplating moving the mountain. The least of these is how to actually move a mountain. We do that all the time these days, though seldom to any good effect in the end. Admittedly, I have a bias toward mountain meadows and against strip mines. To my way of thinking, the only valid answer to this question is in the question posed by another, Why would you move mount Fuji.

I have to go now. It is Saturday, and I am spending my weekend getting a website ready for a demo on Tuesday. The site is the product of a two year old project that has meandered through a series of developers without any architectural direction, coding discipline, documented requirements or design, or meaningful software development process of any sort. I joined the project in January. How do you refactor a mess like that? One spoonful at a time…

Interviewers, by and large, seem to be a bunch of useless, unintelligent people, at least the ones who ask these sort of questions. They are trying to look for an easy way out. I have thought about this problem, and come up with the same solution as you have. Ask them about a project they have worked on recently, and tailor your questions to that. Ask what they think went right, what went wrong, what they would do better. Ask about the technologies used, and how they could have used other technologies. Maybe this requires more from the interviewer, they might have to actually think about it, rather than reading something from their printouts. But it might actually stop them getting too bored.

These questions can betray more about the company, especially if it is some small shop.

Puzzle questions suck…

I usually swap puzzle questions with ones that require an answer that can actually be applied to real solutions.

For my team is better to hire a developer with great social skills and good technical experience, than to hire the genius jerk. I have seen projects collapse and sink because of genius-rotten-apple-jerks.

In the end you have to spend more time with coworkers that you spend with your own family. Making sure those guys are likable people is critical for everyone in long therm. Being likable also covers the communication part. Experience has thought us that the main issue in communication matters has to do with trust and not natural communication skills. People how trust each other tend to communicate better regardless of their natural communication skills.

Faith can move a mountain.

Actually Faith would have some difficulty moving a mountain all by herself but her friend Michelle probably could, she’s a rather, um, big girl.

If I wanted to move a mountain I’d do it the easy way, just move a molehill and then stand back while my wife made a mountain out of it.