# The 7 Interview Types Every Software Engineer Should Know

Learn these common interview types for software engineers

Software engineers are in high demand, which means that the interview process is also more rigorous than before. While there are many different types of interviews, it can be hard to think of what to expect! This article will give you a list of the 10 most common types of interviews that software engineers go through.

# Phone screens and onsite interviews

Let's start off by clarifying that phone screens and onsite interviews are not types of interviews (🙅‍♀️) but simply stages in the hiring process, which can be made up of different interview types.

... phone screens and onsite interviews are not types of interviews, but simply stages in the hiring process ...

Many tech companies will pre-screen qualified candidates with 1 or 2 phone interviews before proceeding to a more thorough onsite interview made up of 3 - 6 different interview rounds.

Phone interviews are fairly short and looks more like a screening process for technical questions. The best thing about these types of interviews is that they allow the interviewer to quickly weed out any candidate who does not meet the minimum technical requirements.

Onsite interviews are typically conducted at the company offices, or virtually during the pandemic. These types of interviews will often require a half or full day, where you might meet 3 - 6 different people - some higher-level managers, other engineers, and sometimes HR representatives or Product Managers.

Now that we've got that out of the way, let's take a look at the 7 most common interview types for engineers, starting with the most common ones.

# 1. Coding

;tldr
- most common interview type for both phone screen and onsites
- can be either Leetcode style or more practical coding examples
- tests your software fundamentals like data structures, algorithms, and code style

Coding rounds are the most common interview type. They can be conducted using an online platform like Codility (opens new window) or HackerRank (opens new window), or as pseudo-code written out on a whiteboard.

Coding rounds are common as a phone screen, and many larger tech companies will have 1 - 3 coding rounds during their onsite stages too.

The interviewer will ask the candidate to solve problems related to data structures, algorithms, recursion, and so on - each coding round usually consists of 1 - 2 problems within a 60 minute interview. If you want to practice for coding interviews in general, check out LeetCode’s Interview Questions (opens new window).

While this more theoretical problem solving approach (ie "Leetcode style") has become prevalent particularly among Silicon Valley hiring companies, some companies prefer more practical coding rounds where you may be asked to write something more common like a csv parser or a small text-based game.

Both styles will test your fundamentals, although the former tends to focus more on algorithms and data structures, while the latter examines coding style and organization.

# 2. System Design

;tldr
- often used only for more senior engineers
- you should expect at least 1 system design round in your onsite
- tests your ability to build resilient, fault-tolerant distributed systems

System design rounds test your ability to build a high-level solution to a given problem. You are expected to discuss traffic patterns, infrastructure components, and tradeoffs rather than specific lines of code.

This type of interview is common at large companies like Facebook and Google that have dozens of engineers working on the same system. They want to see how you think through complex problems and arrive at solutions with many stakeholders.

You may not have any system design questions when you first start your career, but especially at the more senior engineering levels you should expect at least 1 system design round during your onsite interviews.

Some recomended reading to ace this interview include the system design primer (opens new window) and grokking system design (opens new window).

# 3. Hiring Manager

;tldr
- used either as an initial phone screen or as a dedicated interview round during your onsite
- seeking to understand your motivations and assess your fit with the team

You'll often have an interview round with the hiring manager for your team too. They are looking to understand your motivations and career aspirations, and whether you'll be a good fit for their team and role. This may be in the form of an initial phone screen or as a dedicated interview round during an onsite.

A round with the hiring manager is a great way to gauge your interest in the position. Many companies have these interviews, and they're usually structured very similarly to traditional interviews. They typically consist of a conversation where you can learn about the day-to-day work that the team does, as well as the company's history and goals for the future.

There's not much you need to do to prepare for these interviews, but it helps if you have formed an understanding of your own goals as well as what the team and company are working on.

# 4. Values

;tldr
- usually either a separate onsite round or sprinkled throughout your other interview rounds
- typically a series of scenarios with discussion on how you did or would handle different situations

Sometimes referred to as behavioral rounds, values interviews are similar to traditional interviews, with a few key differences.

The interviewer will typically prepare a series of questions that they’ll ask you — usually a few curveballs, and some behavioral-type interview questions. These usually discuss either hypothetical situations or dive into the interpersonal aspects of your previous work experience.

You may be asked to go through a series of scenarios that will reveal how you did or would handle different situations. It can be anywhere from 2-5 questions with each question being 5-10 minutes in length. For instance, if your coworker is consistently disagreeing with your recommendations, the interviewer might ask you what steps you take to address the problem.

Answers are expected to be short, direct, and concise. You’ll also want to have some key examples or anecdotes ready for showing how you would handle these situations.

The better your answers reflect the company's values, the more likely you'll score well on this interview type. So if you are interviewing at a company that takes this very seriously, take the time to review their state values - for example, Amazon's leadership principles (opens new window) or Netflix's Culture statement (opens new window).

# 5. Prior experience

;tldr
- less common, but may be an onsite round
- you may be asked to describe past projects in detail, and to explain particular decisions

In a previous experience interview, you should be prepared to talk about yourself and the projects that you have been involved in. It is important to highlight how your experience has contributed to the growth of your company and skill set.

This is a common interview type, so practice answering this question with a friend or in front of a mirror. You'll usually be asked to describe what went well, what could be improved, how would you handle things differently, and what did you learn from the experience.

Although this may sound similar to the Values interview type, the emphasis for these rounds are usually more on understanding how you approached particular problems and what you learnt out of them.

# 6. Task-based

;tldr
- not as common, but can be either a take home project for a phone screen or as an onsite round
- you may be asked to work on a specific task, which should be achievable within 1 - 5 hours 
- great for testing an engineer's thought process in a more relaxed environment, outside of the typical interviewing pressure

Task-based interviews are not the typical interview type, but I think they are one of the most valuable.

One of the main advantages of task-based interviews is that companies are able to assess candidates' skills in a more realistic environment, where they are given more space for creativity and less pressure.

These are often presented as a take-home project in a phone screen or an onsite round where you are given a set amount of time to work undisturbed by yourself, being discussing your solution in a debrief.

The task you are asked to work on will usually be relatively well-defined and able to be completed within 1 - 5 hours. Some examples might be parsing or ingesting a csv file, or writing a simple text-based game.

# 7. Code review

;tldr
- quite rare, but sometimes selected as an onsite round
- you may be presented with some existing code and asked to either provide feedback or improve it

These are a rarer interview type, but used by a few companies as an onsite round.

Particularly for senior engineers who will typically be responsible for reviewing code from other engineers, in this interview you may be asked to provide feedback or improve on some existing code which is presented to you.

For experienced engineers this should be relatively straightforward, but you should be looking for things like:

  • any logical or syntax errors
  • opportunities to refactor into common helper methods and classes
  • possible algorithmic improvements to improve performance
  • potential refactors to improve readability or maintainability

# In conclusion

We've covered the 7 most common types of interviews facing software engineers today, particularly if they are interviewing for larger tech companies who are either US-based or with a US headquarters.

We haven't covered other interview types for Engineering Managers (ie Product sense, People Management, Technical Leadership, etc), but maybe that's an opportunity for another future post 🤔

Good luck with your interviewing!

Last Updated: 10/16/2021, 7:15:31 AM