Software Engineer Interview Prep

Dan Lee's profile image
Dan LeeData & AI Lead
Last update
Software Engineer Interview Prep

The short answer: Most software engineer interviews at large tech companies follow the same arc: a recruiter call, a technical screen, then a loop of about three to six interviews covering coding, system design from mid-level up, and behavioral questions. What differs is the detail: who decides, whether your code runs, whether AI is allowed, and how much weight values carry. This guide compares ten companies stage by stage, maps their levels and posted pay, and lays out a 12-week plan. Last reviewed October 2026.

Software engineer interview: quick answers

QuestionShort answer
How many rounds?Usually a recruiter call, one or two technical screens, then three to six interviews of 45 to 60 minutes. Uber's guide lists three onsite interviews; Apple and Netflix teams can run up to eight.
What do the rounds test?Coding in every loop. System design from mid-level up. At least one behavioral round, and at Amazon behavioral questions come up in every interview.
How long does it take?Usually three to eight weeks. Google says six to eight weeks once interviews start, and Meta says two to three months.
Can I use AI tools?Usually not. Meta is the exception: many of its interviews include a built-in AI assistant you are expected to use.
Which language should I use?The one you are strongest in. Meta, Microsoft and Bloomberg all say so. Check with your recruiter for team-specific roles.
Is pseudocode accepted?Rarely. Amazon and Microsoft say no pseudocode, and Airbnb expects code that runs and passes tests.

How ten companies run the software engineer interview

The short version of each process. Each company guide has the full detail, with links to the company's own pages.

CompanyScreenMain loopTimelineAI toolsWhat stands out
GoogleOne 45-minute phone screen, a second if borderlineAbout 4 to 6 interviews of 45 minutes6 to 8 weeks once interviews startNot allowedSeparate review sets the level, then team matching
MetaOne 45-minute screen, two problems4 to 6 interviews of 45 minutes2 to 3 monthsBuilt-in assistant in many interviewsNo dynamic programming questions
AmazonOnline assessment, sometimes a phone screen4 (SDE II) or 5 (SDE III) interviews of 55 minutesResults within 5 business days of the loopNot statedBar Raiser and Leadership Principles in every interview
MicrosoftOnline assessment or technical screen2 to 4 conversationsNot publishedNot unless the interviewer says soCode compiles and runs in the interview tool
AppleOne to three technical screensAbout 4 to 8 interviews, set by the team4 to 8 weeks (candidate reports)Reported as not allowedEach team runs its own loop
NetflixRecruiter, hiring manager and technical screensAbout 4 to 8 interviewsNot publishedNot statedCulture memo in every round, director interviews
UberOne-hour screen on coding and design3 interviews of 60 minutes3 to 6 weeks (candidate reports)Only if your recruiter says soSpecialty coding round, Bar Raiser runs the debrief
Airbnb45 to 60 minute coding screenRoughly 4 to 7 rounds plus core values interviews3 to 5 weeks (candidate reports)Not statedCore values interviews can block an offer
BloombergOne or two technical interviewsHour-long rounds with two engineers eachNot publishedNot statedYou pick paper, whiteboard or laptop
StripeOne-hour practical coding screenAbout 4 to 6 rounds of 45 to 60 minutesVaries by role (Stripe)Reported as not allowedBug bash and API integration rounds

The interview, stage by stage

The names differ, but almost every loop has the same five stages. Here is what happens in each, and where companies break the pattern.

The recruiter call

The first call is 15 to 30 minutes with a recruiter, sometimes an engineer at Bloomberg. It is a fit check: your background, the kind of work you want, location, timing and, often, pay expectations.

It feels informal, but it shapes the rest of the process. The recruiter decides which level you are screened for, and at Amazon that level decides which loop you get. Ask what the loop looks like, which languages are fine and whether any round is unusual for that team.

Have a two-minute summary of your work ready. Lead with scope and results rather than a list of technologies.

The online assessment

Amazon and Microsoft often start with an online coding assessment. Google gives one to some candidates, mostly new grads and interns, and Meta to some candidates. Expect two problems in 60 to 90 minutes. Amazon's SDE II version adds system design scenarios and a work style survey, and its new grad version adds a Work Simulation of realistic Amazon situations.

Nobody watches you think here, so the code itself is the signal. Correct output on hidden test cases matters most, then clean code. Treat the work style questions seriously too: they are built on the company's values.

The technical screen

This is the first real filter. It is usually one 45 to 60 minute video call with an engineer in a shared editor. Meta asks two problems in about 35 minutes. Google uses a shared document with no code execution. Stripe gives a practical multi-part problem and lets you use your own IDE. Uber's one-hour screen covers coding and design, and Uber says it sets your starting level.

Interviewers score more than the answer. Meta lists communication, problem solving, coding and verification. Google says it cares more about how you get there than the final answer. Both point the same way: talk through your plan, write clean code and test it before saying you are done.

The interview loop

The loop, still called the onsite even when it runs over video, is three to eight interviews in one or two days. Most loops mix three kinds of round.

Coding. Two or three rounds of data structures and algorithms at medium to hard difficulty. A few companies swap one for a practical round: Stripe runs a bug bash in an unfamiliar repository and an integration round against an API, Uber's second coding round tests depth in your specialty, and Netflix and Apple teams often set problems from their own domain.

System design. One or two rounds from mid-level up. Meta splits design into Systems Design and Product Architecture Design depending on the role. Netflix candidates call design the round that carries the most weight.

Behavioral. At least one round on how you work: conflict, ownership, ambiguity and impact. Amazon asks Leadership Principle questions in every interview, Airbnb runs two core values interviews, and Uber's Collaboration and Leadership interview is one of its three.

The decision

Who decides varies more than anything else in the process. At Google, a separate review that did not interview you reads the packet and confirms your level, and you still need a team match. At Amazon, a Bar Raiser from outside the team decides with the hiring manager. At Uber, a trained Bar Raiser moderates the debrief toward a consensus. At Stripe, the panel reaches consensus from written feedback.

Some loops end early. Apple and Bloomberg teams can stop the onsite after a weak round, and a poor round with one Bloomberg team can make other teams decline to interview you.

Clearing every round is not always an offer either. Google and Meta match you to a team after the loop, and Apple also weighs your level and open headcount.

Levels across companies

Your level decides which loop you get, how hard the design round is and the pay band of the offer. Titles line up only roughly: scope and pay at the same tier can differ a lot, and Bloomberg does not publish levels. The company guides explain each ladder.

CompanyEntry / new gradMid-levelSeniorStaff
GoogleL3L4L5L6
MetaE3E4E5E6
AmazonSDE I (L4)SDE II (L5)SDE III (L6)Principal (L7)
MicrosoftIC2 (59 to 60)IC3 (61 to 62)IC4 (63 to 64)IC5 / IC6
AppleICT2ICT3ICT4ICT5
NetflixL3L4L5L6
UberL3L4L5AL5B
AirbnbG7G8G9G10
StripeL1L2L3L4

Interviews change with the level. Entry loops are mostly coding. Mid-level loops add a design round. Senior loops raise the design bar and look for ownership beyond your own code. Staff loops weigh design and leadership most, and some change format: Amazon's SDE III loop starts with a phone screen with a senior leader, and Stripe asks Staff candidates for a written one-pager.

Pay in US job postings

US base salary ranges from each company's own job postings, seen October 27, 2026. Bonus and stock come on top at every company except Netflix, which posts its full salary. Ranges are wide because one posting covers many locations and levels of experience. Each company guide links the postings.

CompanyMid-levelSeniorStaff or above
GoogleL4: $147K to $211KL5: $174K to $253KL6: $207K to $301K
AmazonSDE II: $144K to $194KSDE III: $168K to $227KPrincipal: $200K to $271K
MicrosoftIC3: $102K to $202KIC4: $120K to $235KIC5: $143K to $275K
AppleICT3: $150K to $225KICT4: $185K to $278KICT5: $216K to $325K
NetflixL4: $250K to $413KL5: $388K to $558KL6: $499K to $900K
UberL4: $171K to $190KL5A: $202K to $224KL5B: $232K to $258K
AirbnbG8: $162K to $186KG9: $196K to $230KG10: $212K to $265K
StripeNo level in title: $157K to $235KSenior: $190K to $286KStaff: $224K to $336K
BloombergNot postedSenior: $160K to $240KTeam Lead: $200K to $300K

Meta's postings list years of experience instead of levels: $154K to $217K for 5 to 6 or more years, $184K to $257K for 8 or more, and $219K to $301K for 12 or more. Microsoft's figures are its US typical ranges; the San Francisco Bay Area and New York ranges are higher. Stripe's mid-level row is a Seattle posting with no level in the title.

The coding interview

What interviewers score

Getting the right answer is necessary but not enough. Across these companies the same four things come up: whether you understood the problem before coding, whether you found a sound approach and could explain its cost, whether the code is correct and readable, and whether you tested it without being asked.

Companies differ on the tools. Microsoft's interview tool compiles and runs your code. Google's phone screen and Meta's loop do not, so you trace test cases by hand. Amazon and Microsoft rule out pseudocode, and Airbnb expects code that passes tests.

Meta's own guide says it does not ask dynamic programming questions. That is the only company here to rule out a topic in writing.

The topics that come up

Most algorithm rounds draw from a short list: arrays and hashing, two pointers, sliding windows, stacks, binary search, trees, graphs (BFS, DFS and topological sort), heaps, intervals and, outside Meta, dynamic programming. Graph problems are the single biggest group among the problems our team has tagged for these ten companies.

Practical rounds draw on different skills. Stripe, Uber and Airbnb lean toward realistic tasks: a rate limiter, a retry queue, idempotent writes, a job scheduler or debugging a broken parser. Practice reading unfamiliar code and adding tests, not only solving puzzles from a blank file.

How to run a 45-minute round

Minutes 0 to 5: clarify. Restate the problem, ask about input size, edge cases and what to return, and write one small example.

Minutes 5 to 12: plan. Say the brute force approach and its cost, then improve it. Agree on the approach with the interviewer before writing code. A hint at this stage costs much less than one later.

Minutes 12 to 32: code. Write it in clear, named pieces. Keep talking, but in short updates rather than narrating every keystroke.

Minutes 32 to 40: test. Walk your example through the code line by line, then try an empty input, one element, duplicates and the largest case. Fix bugs out loud.

Minutes 40 to 45: wrap up. State the time and space complexity and one way you would extend it. Meta asks two problems per round, so at Meta halve every block above.

A worked example

The problem: Given a list of meetings as (start, end) times, return the fewest rooms needed so that no two overlapping meetings share a room. A meeting that ends at 10 frees its room for one that starts at 10.

  1. Clarify. Are the times integers? Can the list be empty (answer 0)? Is the input sorted? Here it is not. Does end at 10 and start at 10 count as an overlap? The problem says no.
  2. Brute force. For every meeting, count how many others overlap its start time and take the maximum. That is O(n squared). It works, so say it, then improve it.
  3. Better idea. Process meetings in start order and keep the end times of the rooms in use. When a meeting starts, if the earliest-ending room is already free, reuse it; otherwise open a new room. A min-heap gives the earliest end time in O(log n).
  4. Complexity. Sorting is O(n log n) and each heap operation is O(log n), so O(n log n) time and O(n) space in the worst case, when every meeting overlaps.
  5. Test. [] gives 0. [(0, 30), (5, 10), (15, 20)] gives 2. [(1, 5), (5, 10)] gives 1, because the second meeting reuses the room. [(1, 10), (2, 3), (4, 5), (6, 7)] gives 2.
  6. Follow-ups. Interviewers often ask which room each meeting gets (store room ids in the heap with the end time), or how to handle meetings arriving as a stream (the same heap works, one meeting at a time).
import heapq

def min_rooms(meetings):
    """Fewest rooms so that no two overlapping meetings share one. End times are exclusive."""
    ends = []  # end times of the rooms in use, earliest first
    for start, end in sorted(meetings):
        if ends and ends[0] <= start:
            heapq.heapreplace(ends, end)  # the earliest room is free: reuse it
        else:
            heapq.heappush(ends, end)     # every room is busy: open a new one
    return len(ends)

The code is short. The interview is the six steps around it, so practice saying them as much as writing the code.

The system design interview

When system design starts

New grad loops are mostly coding. Design usually starts at mid-level and gets heavier with each level. Amazon includes at least one design question from SDE II, candidate guides put Meta's first design round at E4 and Google's at L5, and Stripe's design round starts at mid-level.

At staff level the format can change. Stripe replaces the integration round with a written one-pager on a past project that you present to a staff engineer, and Uber looks for leadership signal as well as design depth.

A framework for a 45-minute design round

Requirements (5 minutes). Agree on the core features, the users and the scale: requests per second, data size, read to write ratio and latency targets. Write the numbers down.

API and data model (5 to 10 minutes). Define the main endpoints and the records you store. Stripe puts extra weight on API design, so spend longer here there.

High-level design (10 minutes). Draw clients, load balancers, services, storage, caches and queues. Walk one request through the diagram end to end.

Deep dive (15 minutes). Pick the hardest part, or let the interviewer pick, and go deep: partitioning, consistency, hot keys, failure handling or how you would roll out a change.

Wrap up (5 minutes). Name the bottlenecks, what you would monitor and what you would change at ten times the scale.

What design prompts look like

Prompts tend to come from the company's own products. Our practice prompts follow the same idea: matching riders with nearby drivers for Uber, webhook delivery to merchants for Stripe, streaming live prices to terminals for Bloomberg, and a booking flow that prevents double bookings for Airbnb. Each company guide has five prompts with answer outlines.

The common failures are the same everywhere: jumping to components before agreeing on requirements, a design with no numbers behind it, and a deep dive that never gets deep. At senior levels, interviewers also expect you to bring up trade-offs before they ask.

The behavioral interview

Every company here has at least one behavioral round, and at several companies it can block an offer on its own. Each one grades against its own framework.

CompanyWhat the behavioral rounds are built on
AmazonAmazon's 16 Leadership Principles, two or three questions in every interview
GoogleA Googleyness and Leadership round: ambiguity, teamwork, conflict and leadership
MetaFive focus areas: resolving conflict, growing continuously, embracing ambiguity, driving results and communicating effectively
MicrosoftSTAR(R) answers: Situation, Task, Action, Result and Reflection
UberSeven success attributes and values such as Trip Obsessed and One Uber, in the Collaboration and Leadership interview
AirbnbTwo core values interviews on four values, often run by people outside the team
NetflixThe culture memo, raised in every round
Apple"Why Apple?" and fit with the team, which candidates say can weigh as much as coding
StripeA hiring manager round on collaboration, ownership and Stripe's operating principles
BloombergAn HR round on why Bloomberg, teamwork and conflict, plus a senior manager round

Build a story bank

Write six to eight stories from your recent work: a conflict, a failure, a decision with incomplete data, a time you led without authority, a time you raised the quality bar and your biggest result. Each story can answer several questions.

Tell each one in STAR form in about three to four minutes. Amazon's guidance is useful anywhere: say "I" rather than "we", give numbers and use different stories for different questions. Microsoft adds a Reflection at the end, which is worth copying.

Then map the stories to each company's framework. The same story about fixing a flaky release process can show Amazon's Insist on the Highest Standards, Meta's driving results and Airbnb's Be a Host, with a different emphasis each time.

Senior candidates need scope in their stories. Stripe candidates report being leveled down when their answers showed execution but not the impact expected at the target level.

AI tools in interviews

Rules on AI differ more than anything else right now, so ask your recruiter.

Meta says many of its interviews include a built-in AI assistant that candidates are expected to use, in coding and in design. Outside AI tools are not allowed. Candidate reports list letting the assistant write the whole solution as a reason for rejection, so drive it the way you would a fast junior teammate.

Google says AI tools and Google Search are not allowed. News reports describe a pilot code comprehension round on some US teams where candidates may use Gemini, but most candidates will not see it.

Uber rules out AI unless your recruiter says otherwise, and some of its technical interviews provide an AI agent in the coding environment. Microsoft says not to use outside help such as AI unless the interviewer allows it. At Stripe and Apple, candidates report that AI tools are not allowed.

Why candidates get rejected

The reasons below come up again and again in the company guides. Most are about how you work through the problem, not whether you know the answer.

  • Coding without clarifying. Google, Amazon and Microsoft all list it. Two minutes of questions saves ten minutes of rewriting.
  • Working in silence. Interviewers cannot give credit for reasoning they cannot hear, and they cannot give you hints either.
  • No testing. Correct code that was never traced reads as luck. Google's phone screen has no code execution, so hand tracing is the test.
  • Design below the level. Meta and Airbnb candidates report it as a common reason for rejection, especially above mid-level.
  • Weak values or behavioral signal. Airbnb's core values interviews and Netflix's culture rounds can sink an offer after strong technical rounds.
  • Vague stories. Rambling, "we" instead of "I", and no numbers. Amazon lists all three.
  • A generic "why us". Apple candidates name it as a red flag, and Uber asks why you want Uber beyond the brand.

A 12-week prep plan

A plan for a mid-level candidate with a full-time job, about 10 to 12 hours a week. Compress it if your interviews are sooner.

WhenFocus
Weeks 1 to 2Pick one language and stick with it. Review arrays, hashing, two pointers, stacks and binary search. Solve two or three problems a day and time each one.
Weeks 3 to 5Trees, graphs, heaps, intervals and sliding windows. Start talking out loud while you solve. Do one timed 45-minute session a week with no hints.
Weeks 6 to 7Backtracking and dynamic programming (skip most of it for Meta). Add practical problems: a rate limiter, a retry queue, debugging code you did not write.
Weeks 8 to 9System design from mid-level up: learn the building blocks, then do two full 45-minute designs a week from the company guides' prompts.
Week 10Write your six to eight behavioral stories and map them to the company's framework. Practice them out loud until each fits in four minutes.
Weeks 11 to 12Mock interviews for every round type, the company guide for each loop you have, and a last pass over your weakest topics. Taper the volume in the final week.

New grads can fold the design weeks into more coding and a stronger project story. Senior and staff candidates should start design in week 3 and run it alongside coding, since design and leadership signal decide their level.

Courses for each round

Practice questions

Coding problems our team tagged for two or more of these companies, then design, fundamentals and behavioral prompts we wrote for practice.

Coding problems tagged to several companies

From the DataInterview coding bank. Each of these is tagged for at least two of the ten companies. Open one to solve it in the code editor.

Practice more coding problems

System design practice

One practice prompt per company, from the company guides. These are our prompts, not reported interview questions. Each answer is an outline.

Design a rate limiter shared by many API servers.

MediumSystem design

Sample Answer

Compare token bucket and sliding window. Keep counters in a fast shared store keyed by client and window, accept small inaccuracy for speed, and decide what happens when the store is unavailable (fail open or closed). Mention per-tier limits and returning clear retry headers.

Practice more system design questions

Fundamentals practice

Concept questions that come up inside coding and design rounds, with short model answers.

When is a hash map the wrong choice?

MediumFundamentals

Sample Answer

When you need order (sorted iteration, range queries or the minimum), use a balanced tree or a heap. Hash maps also have worst-case O(n) lookups and poor memory locality for small data.

Review the fundamentals course

Behavioral practice

Prompts we wrote for the behavioral rounds, with what a strong answer covers.

Tell me about a time you disagreed with a teammate on a technical decision.

MediumBehavioral

Sample Answer

Show how you made the disagreement about evidence, what you did to understand their view, how it was resolved and what you would repeat. Avoid stories where you were simply right.

Practice more behavioral questions

Practice problem: which files need a rebuild?

python

A build system records imports as pairs (a, b), meaning file a imports file b. When a file changes, every file that imports it, directly or through other files, has to be rebuilt too. Given the import pairs and one changed file, return the files to rebuild (not including the changed file), sorted. Import graphs can contain cycles. Example: imports [("app", "util"), ("util", "log"), ("test", "app")], changed "log" returns ["app", "test", "util"].

Python
1from typing import List, Tuple
2
3def files_to_rebuild(imports: List[Tuple[str, str]], changed: str) -> List[str]:
4    """Return every file that depends on `changed`, directly or indirectly, sorted."""
5    pass

700+ coding problems with a live code executor.

Practice in the Engine

Are you ready for software engineer interviews?

1 / 6
Coding

Can you solve a medium problem (graphs, intervals, heaps or sliding window) in about 25 minutes while explaining your approach?

Company guides

Read the guide for each company you are interviewing with:

  • Google: phone screen, panel, a separate review of your packet and team matching.
  • Meta: two-problem screen, the full loop and the built-in AI assistant.
  • Amazon: online assessment, Leadership Principles and the Bar Raiser.
  • Microsoft: team-by-team loops, code that runs and STAR(R) answers.
  • Apple: team-owned loops and the weight of "Why Apple?".
  • Netflix: the culture memo, director interviews and the design round.
  • Uber: three onsite interviews, the specialty round and the Bar Raiser debrief.
  • Airbnb: real code only and the core values interviews.
  • Bloomberg: two engineers per round and a choice of paper, whiteboard or laptop.
  • Stripe: bug bash, integration and practical coding rounds.

Frequently Asked Questions

What rounds are in a software engineer interview?

Most companies start with a recruiter call and a technical screen, then run a loop of about three to six interviews: coding, system design from mid-level up, and behavioral. Some add an online assessment first, and some add team matching after the loop.

How long does a software engineer interview process take?

Usually three to eight weeks. Google says about six to eight weeks once interviews start, Meta says about two to three months, and Amazon gives loop results within five business days. Team matching can add weeks.

When does system design start in software engineer interviews?

Usually at mid-level. Amazon includes design from SDE II, and candidate guides put Meta's first design round at E4 and Google's at L5. New grad loops are mostly coding.

Can I use AI tools in software engineer interviews?

Usually not. Google and Microsoft say no, and Uber says no unless your recruiter says otherwise. Meta is the exception: many of its interviews include a built-in AI assistant that candidates are expected to use. Outside tools are not allowed anywhere.

Which programming language should I use?

The one you are strongest in. Meta, Microsoft and Bloomberg all say so. For team-specific roles, such as C++ at many Bloomberg teams, check with your recruiter.

How many coding problems should I practice?

Enough to recognize the common patterns quickly, which for most people is somewhere around 150 to 250 problems across the main topics. Timed practice with talking out loud matters more than the count.

Do all companies ask algorithm puzzles?

Most algorithm rounds use classic data structures and algorithms problems, but not all rounds. Stripe uses a bug bash and an API integration round, Uber has a specialty coding round, and Netflix and Apple teams often set problems from their own domain.

What is a Bar Raiser?

At Amazon, an interviewer from outside the hiring team who acts as an objective third party and decides with the hiring manager. At Uber, a trained engineer who moderates the debrief toward a consensus decision.

How much do software engineers earn at these companies?

Posted US base ranges for senior engineers fall between about $120K and $286K at these companies, before bonus and stock. Netflix posts its full salary instead, $388K to $558K for L5. The pay table above has the ranges by level.

Can I reapply after being rejected?

Usually, after a waiting period that differs by company, so ask your recruiter. Use whatever feedback you got, even if it is only which rounds went poorly.

Dan Lee's profile image

Written by

Dan Lee

Data & AI Lead

Dan is a seasoned data scientist and ML coach with 10+ years of experience at Google, PayPal, and startups. He has helped candidates land top-paying roles and offers personalized guidance to accelerate your data career.

Connect on LinkedIn