Interview tests
#238 Henry, Thursday, 09 April 2015 3:58 PM (Category: Work)
(Tags: programmer interview)

We have an aging programmer problem here at work. One 70 year old, one 60 year old, and two others nudging 60. Management are fretting about the transition to the younger generation. Young programmers have been hired to learn from the 70 year old, and that seems to be going well. They've found a lean and hungry programmer in his late 30s who is willing to tolerate old man loquacity.

Now they are trying to hire someone to work with me and Doug, so when we go, there is someone who knows how our system works. We wrote the requirements for the job. Need someone with Unix skills, trouble-shooting skills, forensic skills, debugging skills, familiar with at least one language (don't care what), willing to work devops, willing to learn Python, must like non-popular music. We'll train the rest.

We've got a candidate and we'll be interviewing him next week. Our candidate's resume is all about his leadership skills, and what he wants in a career path. That's not so good. I had been considering trying out the Fizz Buzz test, but came across another sobering blog post today. This guy interviewed a bunch of candidates, and asked them to talk about one thing they didn't like at their current or last job, and then asked them to do a small programming test. I was intrigued by this programming test.

Basically, you get the programmer to print 100 to 1, but you have to start with

for (i = 0;

Two other small catches - can't write anything before the for loop, and no double loops. He found a positive correlation between how much time they spent whining about their current/previous job, and how much time they spent writing a solution.

Okay, let's do this. I thought about things I don't like here. Tricky. Flexible hours, good pay, no dress code, play music at work, office to myself, choose the language to suit the problem, all code goes live and solves problems, it's a pretty good gig. I really don't have anything to whine about. Sure there are occasional incidents that get us all grumbly, but they are minor and go away. We have autonomy and trust to do the right thing and keep the company moving. That's a really good thing. So nothing I would grumble about in a job interview. Looked at the programming puzzle, wrote the for loop, wrote one more line and it's done. Took more time to open an xterm and open the editor than to write the code. Good. Guess I can program.

Will I do this next week in the job interview with our candidate? I don't know. Maybe. I would be most gratified if I asked the candidate that, and he replied "I read that blog entry last week and I wrote 20 versions of it, all working, in 20 different languages" and then discussed programmers who like their craft and read about their craft and try to keep up. It would be nice to get a programmer like that. But I'll take one who can write a little two-liner to solve the problem.