How To Interview Senior Software Engineers

Brandon Thompson
5 min readApr 15, 2022

I’ve been on both sides of this table. Throughout my 20+ year career, I have endured my share of nonsensical “what does this have to do with the actual job?” type questions. I’ve also made my share of mistakes as an interviewer who should know better.

As an interviewer trying to fill a senior engineering role, your job is twofold: Know what you are looking for and be ready to recognize it when you find it.

What Are You Looking For?

Some people interview very well. That’s not a bad thing (nor is it particularly good). The problem is the Venn diagram for interview skills vs senior engineering skills does not always have a lot of overlap.

So, if you don’t know what you’re looking for, then you are leaving yourself open to a skilled interviewee defining the narrative and writing themself in as the hero in your team’s story. Instead, you must remain focused on the goals for the role.

Different teams have different things that they need from their senior staff. Conduct your interviews in a format that will let someone shine if they align with those needs.

Mentoring

If you have some junior staff that needs technical leadership and oversight, one of the skills you might be particularly keen on is mentoring. Instead of relying on their resume, or worse yet, an anecdotal response to a “tell me about your mentoring experience” question, do something different. Have the candidate teach you something. Ask them to pick from anything in their technical toolbelt and have them give you a five minute crash course.

This particular question solves for a lot of common interview problems. It removes the “unknown tech stack” anxiety from the candidate because they get to talk about what they already know and love. It gives a glimpse into “culture fit” as you observe how the candidate communicates. It also provides a non-adversarial way to get a feel for their actual tech skills.

Problem Solving

Your organization might be faced with new technological challenges that current staff don’t yet have the capacity to solve. You need someone to solve big, tricky problems. Similar to the mentoring approach, have the candidate explain a recent project, what the problem was and how they solved it. Be sure to scratch beneath surface to tease out what their team did versus what they accomplished personally.

Even at this point, a skilled interviewee can convincingly recount the path to an elusive solution by a team and over-sell their role in the process. That is why it important to be able to take the conversation just one or two steps further and identify a change in scope or a possible gap and have them solve for that. That one extra step will typically shake out the overly vocal team player from the true solution leaders.

Culture Fit

Almost every company these days will tell you that culture fit is at the top of their list when hiring. Unfortunately, many of those same companies are unable to define the culture to which they subscribe or aspire. If you are going to tell a candidate that this is a priority for the company as a whole and the role in particular, be able to articulate exactly what the values are.

However, don’t just list your values; talk about them. Ask the candidate which one they feel is most important and have a dialog about why. When values are properly aligned, there will be an unmistakable enthusiasm that goes well beyond a rote “yes, I value those things too.”

What To Avoid

The approaches outlined above are a great foundation for a productive interview session with a senior engineer. However, I’d be remiss if I did not call out some things to avoid.

Many companies do not even get the chance to interview truly senior engineers because their process subliminally repels the most highly qualified candidates.

Unknown Scope

Do not be cryptic about your process, expectations or agenda. The interview process is the first task that the candidate and your team accomplish together. It will be a reflection of future collaborations if it results in an accepted offer. A savvy candidate that has no idea what is expected of them or what the timeline should be will quickly look elsewhere because they know that they would likely be walking into a poorly defined role with little chance for measurable success.

“Hacker Rank” Tests and Take Home Coding Projects

For a junior or entry-level role, this is open for debate (I still lean against it, but for someone with little or no industry experience, it might be their only opportunity to express what they can do). Senior engineers are a different story. To have risen to the level of senior, a candidate should be able to articulate their skillsets in different ways for a variety of audiences. Coding challenges are just an insult to the voice they have developed over their tenure in the industry. Moreover, it is an indication that the company does not value the time of the candidate. Worse yet, it can often indicate that the KPIs for the role might revolve more around lines of code written instead of actual business value.

Whiteboard Sessions

This is a corollary of the admonition against coding challenges. The basis of your conversation should never be an algorithmic puzzle thrust in front of your candidate on the fly. Whiteboarding and puzzle-solving is a specific skill that unfortunately has little direct correlation to the day-to-day issues confronted by today’s senior software engineers. So again, don’t start on the whiteboard as a way to drive the conversation. Instead, let the conversation drive you to the whiteboard. If you are asking the right questions, the answers will often be most easily expressed as pseudocode or napkin sketch diagrams.

Be Ready To Recognize The Right Candidate

For most, interviewing is one of the more stressful activities because it revolves around an extremely important decision. If you are one of those interviewers that thrives on artificially induced stress and trick questions, then what you are telling the candidate is that they should expect the same from the role. The best candidates will quickly and rightly opt themselves out.

Part of your job as the interviewer is to mitigate the inherent interview stress such that you are getting to meet the best possible version of the candidate. Give them the opportunity to shine in each of the tasks or skills that are most important for the role and everything else will work itself out.

--

--