Tech Interviewing is (Still) Broken…and Some Ideas

Tech interviewing has been kind of terrible for a long time now. Some people ‘get it’ and try newer, or original techniques. Unfortunately, the bulk of companies hold on to this terrible, old model.

How Do You Know?

You may be wondering how I know, or why I care. First, I care very deeply about the tech industry. All of it. Software really is eating the world, and the tech industry touches everything we do. We can’t get paid from work, or interact with our bank without technology. Outside of rare instances, you can’t go shopping without technology. You can’t get food from the farm to your table without technology. Everything is an information system. The work that people perform in the technology industry is important, if not downright critical.

With regards to interviewing, that means it’s important to have the right people in place. Of course we need smart people. But also compassionate people. People from different backgrounds. People that represent those without a voice. People that represent different ability levels. They all need to be a part of the conversation. That’s why I care. So, how do I know?

I’ve been around a while, and have been both the interviewer, and interviewee over the course of two decades. Over this time, I have watched the industry arc. This arc did start from a place of looking for passion. Over time, though, it shifted to seeing if you, as a candidate, could be outsmarted. Some companies have gotten back to looking for passion, and a general view of what you, as a candidate bring to the table. Too many, though, hang on to trying to outwit you. What does this look like?

The crappy interview

The useless interview basically consists of a panel of people—4, 5, maybe even 6—all in one day. You sit in a room, and see each interviewer sequentially. The interviews are generally of two types: general puzzles, and “coding”.

In the puzzle interview, each interviewer comes into the room with a secret that you have to guess, and can somewhat resemble the “tapping game”. This is an incredible impedance mismatch. You’ll often hear an interviewer say something like, “I’ll be the terminal. You tell me what you’d type, and I’ll relay everything to you.” It turns out that this is absolutely nothing like actually sitting at a terminal.

Effectively, they may as well just drop you into an escape room for an hour and see how you do.

Part of this broken model hinges on questions that interviewers have been passing down from generation to generation, with new interviewers not even fully understanding why they’re asking a particular question, and what they’re testing.

The Respectful Interview

I’ve been really happy with a few interviews I’ve been on recently. The best ones are like sitting and chatting with friends.

A respectful interview treats the interviewee like a person. A real person. (A note to interviewers here: I’m not saying that you owe anyone a job because of their personal circumstances. However, do remember that people on an interview are out of their element, likely a little nervous, and that even very competent people can slip up under the conditions of an interview.)

A respectful interview asks questions that the interviewee will actually perform in the course of work. (The next time someone asks you to write a sort algorithm, ask them the last time they hand coded a sort. Perhaps a better question would be which sort algorithm is the most appropriate for a given data set.) A respectful interview stops asking age-old questions, that people either know, or don’t, with no real way of figuring it out. Seriously: stop asking how traceroute works.

A respectful interview allows the interviewee to back up their answer with why they think that answer is the right approach.

How It Could Work

An ideal path into a company is through internships. The company gets to test you out, while you get to test them out. If both parties are happy at the end of it, the intern converts to full time (presuming there is head count, etc.).

Of course, not everyone joining a company is fresh out of school or going to be an intern. In that case, they’ve been working somewhere. They have a body of work to show for it (or talk about). Have some meetings in person, and try your best to see if it seems like a good fit. From there, just get on with it.

There’s one other case that is worth taking into account: people changing careers. I’ve seen people make all manner of moves from one profession to another, and that includes coming into tech from elsewhere. (I think some of the best tech people I’ve ever encountered came from “outside” of the traditional pipeline.) In this case, again, meet up, make sure the person is a fit. Find out why they want to switch to this field. Ask about their studies. Do they have sample projects to show? Again, I’d say if it feels good, do it. Make the hire.

Notice that none of this involves the mind games and grilling that the tech interview has come to be defined by. We don’t need it.

(Yes in most cases there are a few more wrinkles to it all. This is a thought exercise, not an official guidebook.)

Get On With It

Technology is the easy part. (Really!) People are the tough part, and if you genuinely think you’ve found a match, take that leap. The tech industry is desperate for people outside of the traditional pipeline, whether the industry knows it or not.