editione1.0.8
Updated August 24, 2022You’re reading an excerpt of The Holloway Guide to Technical Recruiting and Hiring, a book by Osman (Ozzie) Osman and over 45 other contributors. It is the most authoritative resource on growing software engineering teams effectively, written by and for hiring managers, recruiters, interviewers, and candidates. Purchase the book to support the author and the ad-free Holloway reading experience. You get instant digital access, over 800 links and references, commentary and future updates, and a high-quality PDF download.
The purpose of the interview process is twofold:
Companies assessing candidates. Once candidates have passed through the top of the funnel, companies need to gauge candidate-company fit based on deeper skills assessment; suitability for the role, including values alignment; and the candidate’s interest in the role, team, and company. In some cases, a candidate will not be screened at the top of the funnel; this occurs most frequently with senior candidates and referrals, whom the company will get to know first through more casual interviews.
Candidates assessing companies. Interviews typically provide the best opportunity for candidates to evaluate whether the company is a good fit for them. Interviews offer the candidate’s first opportunity to interact directly with people on the team and to meet a larger part of the company or team as they progress further through the pipeline. At Google, internal research showed that interactions with interviewers are the top-mentioned factor in candidate feedback—more important than recruiter interactions, company benefits, or even type of work.
The interview process for technical roles typically involves some kind of technical skills assessment, including writing code and answering coding questions, as well as answering non-coding technical questions and nontechnical behavioral and situational questions. Much of the software industry emphasizes technical interviews—the portion of the interview process that covers practical technical skills—as the main mechanism for candidate assessment.
A technical interview is a portion of the hiring process for technical roles that assesses technical skills and thinking through coding questions and technical non-coding questions. The technical interview may take any number of forms, including technical phone screens, onsite interviews, hands-on coding interviews, take-home assignments, and prior work assessments.
confusionSome people use the term technical interview to refer to the entire interview process for technical roles, but more precise usage leads to greater clarity, especially in complex interview processes.
In the past, interviews for technical candidates rarely focused on nontechnical skills like collaboration, communication, and empathy; but today more companies embrace the importance of these skills, for all roles. Academic and industry research shows that diverse teams with people who value communication, equal participation, and good EQ outperform teams with only highly skilled or high-intelligence members.** Amanda Sopkin’s post, “Are Technical Interviews a good measure of software engineering ability?” describes the path that led the industry to focus on narrow skills assessment and the ways in which that is changing for the better. And an excerpt from Laszlo Bock’s Work Rules! explains the thinking (and data) behind Google’s eventual embrace of structured behavioral and situational interviews as a means to get the full picture of a candidate’s ability.
cautionThere’s plenty of research showing that interviews are poor predictors of on-the-job performance.*** Every interview process will filter candidates according to some criteria; a poorly designed interview process will favor candidates who are simply good at interviewing in a particular setting that does not assess fit for the role. Interviews that are too specific—covering one skill set, being prescriptive about languages, focusing on brain teasers, or not asking any behavioral questions—also fail to gather accurate or complete signal. In contrast, a well-designed and well-run process mirrors the actual work the person would do at the company, focuses on how they go about solving problems, and includes behavioral assessments that test for things like communication ability.
Interviews are noisy, and biases are often present and unaccounted for. No process can eliminate bias and noise completely, but adherence to principles and a commitment to structured interviewing will help reduce bias and get clearer signal out of interviews, while creating a better candidate experience.
importantThere is no magic formula when it comes to interviewing for technical roles. It helps to let interview and assessment formats flow from the kind of signal a company needs to gather for the role; knowing what you’re listening for can turn down the noise. The best formats for technical interviews—and the balance between technical and nontechnical interviews—also depend on candidate sourcing, what part of the funnel a candidate enters into, whether they’re hiring for a senior role, the company’s resources, values, and philosophies, and the availability of a given candidate. These differ from company to company, role to role, and, in some cases, candidate to candidate, and so the technical interview loop that works well for one company in one situation might not work at all for another.
On the whole, a well-designed and well-run interview process—consistent with our hiring principles—will:
Be predictive. Accurately assess the candidate’s fitness for performance in a specific role.
Be fair. Minimize noise and bias while not being easily faked, gamed, or manipulated.
Be respectful. Make good use of the time invested by the candidate and by everyone at the company who participates.
Be positive. Leave the candidate with a favorable experience regardless of whether they receive or accept an offer.
Interviews may not be a perfect tool, but with proper design and execution, the right mix of questions can fulfill most of these core principles.
The interview loop is the series of conversations and tests a company designs to assess a candidate’s fitness for a role. Interview loops are most effective when they are standardized—to the extent possible, the process puts every candidate for a role through the same loop. This practice helps to calibrate expectations of candidates, interviewers, recruiters, and hiring managers.*
At the outset of an interview process, the company may change some specifics of the interview loop after the first couple of candidates to account for unforeseen gaps or to adjust expectations based on how the first round of candidates perform. When hiring for roles that no one at the company has held before—for example, hiring the company’s first QA engineer—the loop may need multiple rounds of adjustments.
A company’s style and priorities inform the structure of interviews. To balance candidate experience with the signal you need to gather, traditional interview loops likely include one or two phone screens and an onsite interview. Effective interview processes increase time and effort demands on the candidate as they progress rather than being front-loaded with “hoop-jumping” exercises, and they also avoid any surprises for the candidate, which the hiring manager or recruiter can facilitate by telling the candidate what to expect from the process.