When software engineers, data scientists, and data engineers apply for jobs, the interview process assesses their technical knowledge.
Technical interviews at the really big tech companies (Google/Alphabet, Apple, Facebook, Amazon, Microsoft, Netflix) are “designed to be extremely hard,” writes Ashmita Roy at Interview Kickstart, “because the cost of hiring a lousy engineer is significantly higher than the cost of rejecting an excellent one.”
Let’s dive into the technical interview questions you can expect and how best to answer them.
What is a technical interview?
Technical interviews are structured to assess a job seeker’s technical ability and are typically used when companies are hiring for roles in engineering, information technology, or science. You’ll see them used for jobs in the high-tech industry, but they are also common for technology departments in other industries, including health care, manufacturing, and security.
The questions will be different depending on the position you’re applying for, and what the company does. In other words, questions related to medical device R&D will be very different from those you might be asked at Amazon.
That said, the manner of your response should be similar.
In her tip on LinkedIn, Amazon technical recruiter Markeen Caine writes: “Surface level detail is not enough when you are interviewing at Amazon. Be able to use data to explain decision-making and reasoning. We want to see your involvement in projects, how you influence the team, how you think BIG as an engineer. Your answers should NOT lack detail, you should be able to dive deep into stories/technical abilities.”
How are technical interviews different from other kinds?
Technical interviews focus on different questions than those in behavioral interviews (with “what did you do when” questions), competency-based interviews, and situational interviews (with “what would you do if” questions).
The answers you give to technical interview questions should prove your technical ability to the employer.
Still even in a technical interview, you can expect to answer questions other than those that indicate your level of technical competence. Employers are interested in your soft skills too, like the way you work in a team, your communication and leadership abilities, and whether your approach fits in with the company culture, its mission, and its goals.
Before you begin
Before you start answering job ads or preparing for interviews, here are a couple of opinions from people in the field.
Be careful of time wasters, like too-vague job requirements
WordPress website developer Andrea La-Rosa Jiménez says tech recruiters should know “what *specific* tech stack is required for the role. Not nice-to-haves; we're talking dealbreakers that disqualify candidates outright.”
Job seekers can use that advice. If the job ad or recruiter is at all vague, make sure to confirm the exact platform or engineering experience that are must-haves for the job you’re interested in. Otherwise, you risk wasting time and effort applying and interviewing for a role you’ll never get, and never should have applied for in the first place.
How to think differently about whiteboard-based interview questions
Many engineers hate being asked to solve technical questions on a whiteboard, which is a common part of software engineering interviews. While there are certainly cons to whiteboarding, software engineer Sun-Li Beatteay says it can actually be advantageous to the job seeker.
“Part of the reason I like whiteboarding is due to the leniency,” he writes. “No one is going to run your written function through a compiler. As long as the interviewer understands what you’re thinking and the writing looks good enough, you get full credit.”
Frequently asked questions in technical interviews and how to answer them
Because technical interview questions are extremely specific to the job and industry, it’s difficult to give a roundup of frequently asked questions (except for the more general ones).
What’s usually pretty common, though, is the three main categories of questions you can expect in a technical interview, says programmer Kevin J. Dolan, who is chief technical officer at startup studio and incubator Metric Collective. They are: quizzes, experience questions, and hypotheticals.
Quizzes are questions about specific technologies or general concepts in computer science. If you’re not familiar with the concept, Dolan says talk about those you’re familiar with that are “adjacent” to the one being asked about. Remember that interviewers want you to succeed and will explain the idea if asked, he notes.
In his video, Richard McMunn, founder of PassMyInterview, has sample answers for non-specific questions you may be asked in a technical interview—and explains the reason you’re being asked seemingly irrelevant questions. These include:
What would you consider when describing something technical to a non-technical person?
How many golf balls can you fit into a school bus?
Tell me how future technology advances might impact on your job?
How do you handle tight deadlines while working on technical-based projects?
How do you keep your technical knowledge up to date?
How many streetlights are there in this country?
Below are some industry- or company-specific Q&A samples with resources.
Microsoft technical interviews
In their video, software engineer Daisy Isibor and Ellen Thorley, a university recruiter, discuss how to prepare for Microsoft technical interviews. The first round 30-minute interviews gauge what you know and evaluate how you think and solve problems. This is when the interviewer is trying to see what it might be like working with you.
As you proceed through the process, it can be pretty gruelling: Final rounds can be as many as five 45-minute interviews in one day.
There are three types of questions you’ll be asked: behavioral, technical, and resume-based. Isibor and Thorley say to think out loud and ask clarifying questions. You can also expect lots of group-based questions because you’ll always be working in a team at Microsoft.
There’s a Microsoft mock interview here.
Read more: How to Answer: Why Do You Want This Job?
SQL interview questions and answers for beginners
Data analyst Alex Freberg, who specializes in Structured Query Language (SQL), Python, and Microsoft applications, goes through SQL interview questions in his video for entry-level data analyst jobs. He says phone interview questions are generally broader while in-person interview questions tend to be more technical and specific.
A broad question might be: “Are you familiar with any cloud platforms?”
An entry-level technical question might be: “How would you write a query that would remove duplicate records?”
An intermediate-level technical question might be: “What is a subquery and can you describe how you would write that?”
HelpDesk and desktop support interview questions and answers
This video from SkillsBuildTraining, an IT training platform offering certification courses, goes through 40 questions including:
You receive a ticket in which a user’s monitor is not working. How will you solve this problem?
What is safe mode?
A user complains that their computer clock resets every time they restart their PC. How would you solve this problem?
What is Active Directory?
What is PTR (Pointer Record)?
How do you get the MAC address for a specific NIC?
How does a VPN work?
You are asked by the company CEO to make sure that no employee in the company is able to open Facebook. How will you implement this policy?
Read more: Do You Need an Interview Coach?
The ability to write good code is the most important component of a technical interview for a programming job. Expect questions regarding data structures and algorithms, says Caelan Urquhart at AI-powered code completion plugin Kite. So, before the interview, practice your sorting algorithms, which include: SelectionSort, InsertionSort, BubbleSort, MergeSort, and QuickSort.
For an in-depth look at common algorithm concepts in Python and how to solve algorithm challenges you may encounter in technical interviews, this video from FreeCodeCamp.org is extremely helpful.
You can also practice a few coding interview questions at AlgoExpert. One in each of the Easy, Medium, and Hard categories (all with hints) is free: Validate Subsequence; River Sizes; and Shift Linked List. Paid premium access provides 120 questions with video explanations and written code solutions in nine languages.
Practice technical interviews
Interviewing.io, cofounded by Aline Lerner, is a platform where you can practice interviewing with engineers. There’s a free practice tier, with premium interviews costing between $100–$200. You can listen to recordings of technical mock interviews with engineers from Google, Amazon, Walmart, Wurl, and Microsoft here.
According to their FAQ: “The interviews focus on CS fundamentals, data structures, algorithms, and systems design. Questions will be similar, both in subject matter and difficulty, to the kinds of questions you’d see in a real technical interview at a top company for a backend or full-stack role.”
Interview Cake offers free practice programming interview questions to land jobs at companies like Google, Facebook, LinkedIn, Oracle, PayPal, and more. One sample coding question is: “Simulate a five-sided die.”
Another resource you can use when looking for Q&A practice is Reddit. Some useful threads include:
A user in this discussion suggests also looking at Hardware.FYI for interview help for both mechanical and electrical engineering.
In this thread, users discuss how job applicants may be given a toy app and asked to write a bug report or given a simple system diagram and ask what can be tested.
One Reddit thread discusses the best technical interview question for a network analyst in order to gauge applicants’ network knowledge in layer 3, Firewall and VPN. Poster Matt Buford says he looks for networking tinkerers, whose response mentions TTL. The reason?
“Practical knowledge and the ability to look up what you don't know is more important than having tables memorized from a book,” he explains. “Knowing traceroute is done with TTL is something that isn't really that obscure in a fundamental practical knowledge of how networking works, but it isn't the sort of thing that books or school usually covers.”
Interview prep sheets
Software engineer Gayle McDowell, author of Cracking the Tech Career, has a series of helpful interview preparation sheets for soft skills, coding skills, and product manager skills at her site Cracking The Coding Interview. Other useful resources on her site include scalability fundamentals, a description of an SRE interview experience, and an SDET/QA engineer checklist.