Flip The Interview
Test the Person, Not the Skills

­

Coding challenges were always a bad idea, but in today's world they're just plain stupid. Let's see what to do instead.

­
­

Hire For the Skills You Want

­

Dave Thomas

­
­

Jan turns up at her 12th interview. The interviewer hands her a marker and points to the whiteboard. "Go ahead and write out the code to calculate the weight of minimum spanning tree of a connected, weighted, and undirected graph." Jan sighs: third time this month. She sets to work.

­

In my opinion, she shouldn't get the job, however practiced the answer.

­

For me, a good candidate would put the pen down and ask, "Could you give me the context for this, because I'd hope you'd want programmers to use an AI (or a library) to handle this kind of problem. I was looking for a job that lets me do things your AIs can't do."

­

Challenge-based coding interviews were always a bad idea: they put the focus on the least important skill of a potential hire, memory. Let's list some of the more important skills that the challenge interview doesn't test:

­
  • communication skills, including the ability to question authority in a polite, productive way;
  • context building skills: framing a problem in its larger setting before blindly coding;
  • knowledge of a spectrum of available approaches to solving a problem, and the tradeoffs between them;
  • the ability to work in a team;
  • and so on.
­

Flip The Iuʇǝɹıǝʍ

Some secondary schools run a flipped curriculum. Rather than learning in the classroom and practicing at home with homework, they ask the student to study the material at home and then come in with questions, prepared to try some examples in class, where help is at hand. 

­

That sounds like a great model for job interviews. Send the candidate a real problem that they are likely to encounter in the first six months of their job. Express it in the way that a team member would normally be given a task. Tell them you don't want a solution. Instead, when they come in, they'll be sitting in a room with you and a couple of team members. Their task is to ask questions that will lead them to enough of an understanding to be able to start attacking the problem. When they are satisfied, ask what their plan would be to implement it. Make sure they're incorporating small steps and feedback. Finally, tell them that, two weeks into coding, the requirement X has changed to Y. What impact will that have? For more senior candidates, make the requirements change something that is clearly a bad idea and see if they push back.

­

Hire The Person, Not The Skills

­

Today, basic coding skills can he recruited by buying more AI tokens. You shouldn't be hiring based on that.

­

But AI does not (currently) have the higher level, more global skills that people have. An AI is less likely to remember that Joe in fulfillment once mentioned that you should never schedule deliveries to Topeka on a Wednesday

­

You're hiring a person. Make sure the process evaluates candidates appropriately.

­
­

Photo charles deluvio" on Unsplash

Solve Problems, not Challenges

­

The gerbils tell me I have to mention some of our titles. Fortunately, we have a great list of books about being a developer, and not an algorithm writer.

­

Click below to see the full list.

­
Only at PragProg.com
­

This email was sent to {{ contact.EMAIL }}  

You received this email because you are registered with Pragmatic Programmers, LLC
 
Replies to this email will be sent to an unmonitored email account.
 

Unsubscribe here

Pragmatic Programmers, LLC
PO Box 271356
Flower Mound TX 75027

­
­

©  2024 Pragmatic Programmers, LLC