What this guide does:
- Walks you from the recruiter call to signing the offer, built around what Microsoft actually tests in 2026.
- Names the one thing each round is scored on, so you spend your prep where it moves the needle.
- Gives you the exact behaviors that separate a hire from a no-hire on identical final code.
The loop at a glance
Five rounds, one bar. Everything below is how you clear each one.
- Online Assessment. 2-3 auto-graded DSA problems (campus and some roles). It tests whether your code is correct on every edge case, not whether it is clever.
- Phone screen. One live coding problem, almost always a clean Medium. It tests whether you can code and talk at the same time.
- Onsite coding (x2). Medium-to-Hard DSA with working code and correct complexity. It tests whether you recognize the pattern fast and ship a tested solution.
- Design round. System design for seniors, LLD/OOD for juniors. It tests trade-off awareness, the single biggest senior signal.
- Behavioral plus AA. Growth mindset with real STAR stories, plus a bar-raiser deep dive. The bar is "coachable, owns outcomes, learns out loud."
1Snapshot, read this first#
| Item | Details |
|---|---|
| Roles | SWE / SWE II (IC2), Senior SWE (IC3+), with new-grad and intern tracks |
| Levels | 59-60 (new grad/SWE), 61-62 (SWE II), 63-64 (Senior), 65+ (Principal) |
| Process length | Typically 3-6 weeks end to end; faster for campus hiring |
| Rounds | OA (campus/some teams) -> phone/tech screen -> onsite loop of 4-5 rounds incl. "As Appropriate" (AA) round |
| What wins | Clean working code, clear communication, correct complexity analysis, honest "I don't know but here's how I'd find out" |
| What fails | Silent coding, buggy code you never test, ignoring interviewer hints, no concrete behavioral stories |
| India comp (SWE II) | Roughly INR 35-55 LPA total: base ~22-32 LPA + stock + ~10-20% target bonus |
| US comp (SWE II / IC2-3) | Roughly $180k-$260k total: base ~$140k-$180k + RSUs + ~10-15% bonus |
The one thing to understand about Microsoft:
- The bar is real but humane. No exotic puzzles, no obscure algorithm from a paper.
- They want correct, maintainable code and trade-offs reasoned out loud.
- Satya Nadella's "learn-it-all over know-it-all" culture is not wall art. "Coachability" and "handles feedback" are literal lines on the scorecard.
- The practical read: curiosity and adjusting to a hint score higher than a confident wrong answer defended to the end.
Every round rolls up to one question: would I want this person reviewing my pull requests? That is why narration, clean naming, and taking a hint well matter as much as the final code. Correct-but-silent loses to correct-and-communicative almost every time.
2Getting the call (the part most guides skip)#
Microsoft hires through three main doors, and one of them is quietly the fastest.
The three doors:
- Campus recruiting: through university placement cells and events like the Microsoft Engineering Excellence drives.
- Off-campus / online: applications at careers.microsoft.com.
- Referrals: the one most people underrate.
Why referrals matter more than people admit:
- A referral routes your resume to a recruiter's shortlist instead of the general pool.
- In practice it turns a two-week silence into a reply inside a few days.
- The internal referral tool takes an employee about two minutes: they paste your resume and the req ID. It is a small favor to ask, so ask.
Your resume gets about 10 seconds of human attention and an ATS scan before that. Make every line earn its place:
- Lead with impact and numbers, not responsibilities.
- Bad: "Worked on backend APIs for the payments team."
- Good: "Redesigned payment-reconciliation API in C#/.NET, cutting p99 latency from 1.2s to 310ms and removing a nightly batch job, saving ~6 engineer-hours/week."
Why that bullet works:
- It names a language Microsoft uses heavily (C#/.NET), a measurable result, and clear ownership.
- The shape is repeatable: verb, what you built, the before-and-after number, the business win.
Mirror the job description's keywords, honestly:
- If the role lists Azure, Kubernetes, distributed systems, or specific languages and you have real experience, name them with the exact spelling the posting uses.
- The ATS matches on literal strings, so "K8s" will not always match "Kubernetes."
- Do not stuff keywords you cannot defend. That gap gets exposed in round one.
Door-specific tactics:
- New grads in India: watch for Microsoft's campus and online coding challenges (often Codility or HackerRank, sometimes via Microsoft Engage/Learn). Register the moment the invite lands, because the links are time-boxed and usually expire inside 48-72 hours.
- Experienced hires: keep LinkedIn current and set to "open to work." Microsoft sourcers run Boolean searches for people already shipping on relevant stacks (.NET, Azure, TypeScript, distributed storage), and a matching headline is often what triggers the first message.
3The loop at a glance#
| Round | Length | What it tests |
|---|---|---|
| Online Assessment (campus/some roles) | 60-90 min | 2-3 DSA problems, auto-graded correctness and edge cases |
| Phone / technical screen | 45-60 min | One coding problem live, communication, basic CS fundamentals |
| Onsite 1, Coding | ~60 min | Medium-Hard DSA, working code, complexity |
| Onsite 2, Coding / problem solving | ~60 min | A second algorithmic problem or a design-lite problem |
| Onsite 3, System design (senior) or LLD/OOD (junior) | ~60 min | Architecture, trade-offs, scaling, or clean object modeling |
| Onsite 4, Behavioral + "As Appropriate" (AA) | ~60 min | Culture fit, growth mindset, plus a senior "bar-raiser" style deep dive |
Why it is called the "as-appropriate loop":
- The last interviewer slot bends to the signal the earlier rounds left behind.
- The AA round is run by a senior interviewer from outside the hiring team (often a hiring manager's peer or a principal) who acts as the final check on the bar.
- They can steer technical or behavioral depending on where you looked weak, and their write-up carries extra weight in the debrief.
- Treat it as the most important round, not a cool-down chat.
4The coding / technical rounds, patterns, not problems#
Microsoft reuses a well-known set of patterns. Master these and most questions become recognizable the moment you read them:
- Arrays & two pointers / sliding window: subarray sums, longest-substring-without-repeat variants, container-with-most-water, trapping rain water.
- Hashing: frequency maps, grouping anagrams, two-sum family, first-unique-character, subarray-sum-equals-k.
- Strings: parsing, in-place edits, string-to-integer (atoi-style), reverse words, minimum-window-substring.
- Linked lists: reverse, detect/remove cycle (Floyd's), merge k sorted lists, reorder, copy-list-with-random-pointer. Microsoft historically loves linked-list manipulation, so expect at least one in a full loop.
- Trees & BSTs: traversals, lowest common ancestor, serialize/deserialize, validate BST, level-order, right-side view, diameter.
- Graphs: BFS/DFS, topological sort (course schedule), connected components, grid/island problems, shortest path with Dijkstra or 0-1 BFS.
- Recursion & backtracking: subsets, permutations, combination sum, word search, N-queens, generate-parentheses.
- Dynamic programming: coin change, longest increasing subsequence, edit distance, grid paths, house robber, 0/1 knapsack.
- Heaps / intervals: top-k frequent, kth largest, merge intervals, meeting rooms II, task scheduler.
Where the difficulty sits:
- Overall: LeetCode Medium with a couple of Hard across the loop.
- Phone screen: almost always a clean Medium.
- Onsite coding rounds: the ones that reach into Hard, usually a graph, a DP, or a trickier two-pointer.
How to practice so it sticks:
- Drill by pattern, not by random count. Do ~10 problems per pattern until the approach is automatic and you can start coding within a minute of recognizing the shape.
- Then run timed mixed sets of 2 problems in 45 minutes to rehearse the real clock.
How to win the round. This is often what separates a hire from a no-hire on identical final code:
- Clarify first. Restate the problem in your own words, confirm input ranges and types, and ask about edge cases out loud: empty input, duplicates, negatives, a single element, N up to 10^5 or 10^9. Thirty seconds here stops you from solving the wrong problem and shows the interviewer you think before you type.
- Think out loud. State your brute-force idea first, give its complexity, then say how you will improve it and why. The interviewer scores your reasoning, not just the final code. Silence for more than a few seconds reads as "stuck," so narrate even when you are thinking.
- State complexity before and after you code: "brute force is O(n^2) time and O(1) space; with a hash map I can get time down to O(n) at the cost of O(n) space." Being precise about the trade-off is a signal in itself.
- Write clean code. Descriptive names, small helper functions, no magic numbers, early returns over deep nesting. Microsoft weighs maintainability, and a reviewer imagining your pull request is part of the scorecard.
- Test it yourself. Walk a small example line by line, then a deliberate edge case. Catching and fixing your own bug is a strong positive signal. The interviewer catching it first is not, and it costs you more than the bug itself.
- Take hints gracefully. If they nudge you, say "good point" and actually change course. Clinging to your first idea after a clear hint is the fastest way to fail an otherwise solid round, because coachability is explicitly on the sheet.
I am scoring you from the first sentence, before a line of code exists. Restate the problem, name the edge cases, and give me a brute force with its complexity, and I have already got positive signal on the board. Jump straight to typing and I am waiting to see if you solved the wrong problem.
Reveal the answer
5System design (seniors) and LLD / OOD (juniors)#
For Senior (IC3+) roles you get a full high-level design round. Use a repeatable framework so you never freeze on the blank whiteboard:
- Requirements: separate functional from non-functional. Pin down scale (QPS, daily active users, data size), the read/write ratio, latency targets, and consistency needs before you draw a single box.
- Estimates: back-of-envelope traffic, storage, and bandwidth. If writes are 10k/s and each record is 1 KB, that is 10 MB/s and ~860 GB/day, which tells you sharding is not optional.
- API design: the key endpoints and their contracts, request/response shapes, idempotency keys where writes retry.
- High-level diagram: clients, load balancer, stateless services, data stores, caches, queues.
- Data model: SQL vs NoSQL and the real reason why; schema or key design; the sharding/partitioning key and what happens to it under a hot tenant.
- Deep dive: pick the genuinely hard part (hot keys, read-vs-write consistency, fan-out on write vs read) and go deep instead of staying shallow across everything.
- Scale & reliability: caching layers and invalidation, replication and failover, CDNs, rate limiting, backpressure, monitoring and alerting.
- Trade-offs: name out loud what you gave up (CAP choice, cost vs latency, eventual vs strong consistency). Trade-off awareness is the single biggest senior signal, and a design with zero stated trade-offs reads as junior no matter how many boxes it has.
Classic Microsoft-flavored prompts:
- A URL shortener, a rate limiter, a notification/pub-sub service, a distributed key-value store.
- A file-storage service like OneDrive, a collaborative document editor, an autocomplete/typeahead, a telemetry ingestion pipeline.
On Azure-native grounding:
- Bonus points for grounding choices in real Azure patterns: Cosmos DB for globally distributed low-latency reads, Service Bus for durable queues, blob storage for large objects.
- Name-drop only what you can defend. A follow-up on Cosmos DB consistency levels will come.
For new grad / SWE II roles the design round is usually Low-Level Design / OOD:
- Model a parking lot, an elevator system, a vending machine, a card game, or an in-memory cache with LRU eviction.
- They want clean classes with clear responsibilities, correct use of interfaces and inheritance, SOLID applied visibly, and the right pattern (strategy, factory, observer, state) chosen for a real reason, not sprinkled on.
- Over-engineering a parking lot into a microservice mesh is a red flag. Match the complexity to the prompt.
Keep CS fundamentals sharp either way. Expect quick fired-off questions:
- OS: processes vs threads, deadlock and its four conditions, paging and virtual memory.
- DBMS: B-tree indexes, transactions, ACID vs BASE, normalization vs denormalization for reads.
- Networking: TCP vs UDP, what actually happens when you type a URL and hit enter, HTTP vs HTTPS and the TLS handshake.
- OOP principles, used as warm-ups or tie-breakers. A crisp answer buys goodwill for the coding part.
Drawing ten boxes and never saying what you traded away. A silent diagram reads as a memorized answer, not an engineer's call. Say the CAP choice, say what breaks at 10x, say why this store over that one. A design with zero stated trade-offs is a junior signal no matter how clean the arrows are.
6Behavioral & culture fit#
Microsoft's culture runs on a few explicit ideas you should be able to demonstrate with stories, not slogans:
- Growth mindset: "learn-it-all, not know-it-all." Show a time you were wrong, learned from it, and changed how you work.
- Customer obsession: decisions grounded in a real user need, with evidence you talked to or measured the user.
- Diverse and inclusive: you make teammates better and actively invite views that differ from yours.
- One Microsoft: collaboration across team boundaries over personal credit.
- Making others successful: especially important for senior roles, where mentoring and lifting the team is the point of the level.
How to build your story bank:
- Write 6-8 STAR stories from real experience covering: a failure you learned from, a conflict with a teammate, an ambiguous project you drove to clarity, a time you influenced without authority, and your proudest technical win.
- Reuse them across questions, since one strong story can answer three different prompts.
- Always close with a measurable result and a short reflection on what you learned. The reflection is where the growth-mindset signal lives.
One full worked STAR example:
- Situation: Our team's nightly data pipeline was failing roughly twice a week, and each failure meant someone was paged at 3 a.m. and the morning dashboards were stale for business users.
- Task: As the owner of the ingestion service, I needed to make the pipeline reliable without the full rewrite we had no time for that quarter.
- Action: I instrumented the pipeline to find the real failure point instead of guessing, an unretried timeout against a flaky downstream API. I added structured logging, confirmed that 80% of failures came from that one dependency, and implemented idempotent retries with exponential backoff plus a dead-letter queue for the cases that still failed. I wrote a short design doc and got review from a senior engineer who flagged a race condition in my retry logic that I had missed, and I fixed it before shipping.
- Result: Pipeline failures dropped from ~2/week to fewer than 1/month, on-call pages for this service fell by ~90%, and dashboards were reliably ready by 6 a.m. The bigger lesson: taking the review feedback seriously caught a bug my own testing would have missed, which is exactly the growth mindset Microsoft looks for.
Why that example lands:
- The result carries numbers, so the outcome is verifiable rather than vibes.
- The reflection shows coachability (a senior caught a bug, I took it, I shipped it fixed).
- That combination is what interviewers actually write down in the debrief, so build every story to land both.
7Your prep plan#
4-week plan
- Week 1: Re-learn core patterns (arrays, hashing, strings, linked lists). 3-4 problems/day. Refresh CS fundamentals 30 min/day.
- Week 2: Trees, graphs, recursion/backtracking. Start timed 2-problem sessions twice this week.
- Week 3: DP, heaps, intervals. Begin system design (HLD) or LLD depending on your level, one design/day using the framework.
- Week 4: Mixed mock interviews (with a friend or a platform), write and rehearse 6-8 STAR stories, review weak patterns, light practice the last two days.
2-week plan
- Days 1-4: Arrays, hashing, strings, linked lists, trees, pattern drills.
- Days 5-8: Graphs, recursion, DP, heaps/intervals.
- Days 9-11: System design or LLD framework + 4-5 classic prompts.
- Days 12-14: Two full mock loops, STAR stories, rest before the loop.
2-day crash plan
- Day 1 (morning): Re-solve 2 problems each from BFS/DFS, DP, and hashing, the highest-frequency patterns. (Afternoon): One design prompt with the framework; skim CS fundamentals.
- Day 2 (morning): Write 5 STAR stories and say them aloud until they flow without reading. (Afternoon): One timed mock, then review the "how to win the round" checklist. Sleep well, because a rested brain beats one more problem at midnight.
8Why people get rejected at Microsoft#
- Silent coding. Strong solution, zero narration, so the interviewer cannot score reasoning and defaults the "communication" line to a no.
- Untested code. Writing something that looks right and declaring "done" without tracing one example and one edge case by hand.
- Ignoring hints. The interviewer nudges you toward a better approach and you keep pushing your original idea. It reads as uncoachable, a direct hit on growth mindset, and it sinks rounds where the code was otherwise fine.
- No trade-off talk in design. Drawing boxes without explaining why this database, why this cache, and what breaks at 10x scale. A silent diagram looks like a memorized answer.
- Vague behavioral answers. "We worked hard and shipped it." No situation, no your specific action, no number, no "we" turned into "I." Senior candidates especially get dinged here, because the level expects you to own outcomes.
- Overclaiming. Listing skills you cannot back up, or bluffing an answer instead of saying "I'm not sure, here's how I'd figure it out." Honesty scores higher than a confident wrong guess every time, and interviewers probe exactly the things you listed.
9The offer, comp & negotiation#
Microsoft comp has three parts:
- Base salary.
- Annual stock: RSUs vesting over ~4 years, often front- or back-loaded depending on team and grant type.
- Target cash bonus: roughly 10-20% depending on level.
- Senior levels shift more of the package into stock, so the higher the level, the more the equity grant drives your real number.
The ranges:
- India (SWE II): roughly INR 35-55 LPA total, base ~22-32 LPA, plus RSUs and bonus. Senior roles push well past this.
- US (SWE II / IC2-3): roughly $180k-$260k total, base ~$140k-$180k, plus RSUs and ~10-15% bonus. Senior (IC4) commonly lands $300k+.
Negotiation tips tuned to Microsoft:
- Negotiate on stock and signing bonus, not just base. Microsoft base has fairly tight bands per level, so a recruiter has little room to move it. The RSU grant and the one-time signing bonus are where the real flexibility sits, so aim your ask there.
- Use competing offers as data, not threats. Share them factually with the numbers broken out, and recruiters can often match or improve the equity and signing portion when there is a credible alternative on the table.
- Confirm the level. The difference between IC2 and IC3 compounds over every future refresh and promotion, so it is worth far more than any single-year cash bump. If your experience justifies a higher level, make that case with specifics before the number conversation starts, because moving level after the offer is much harder.
10FAQ#
Q: How much DSA is enough? A: Comfort with LeetCode Medium and the ability to push into a Hard with a hint or two. Depth on the core patterns beats a huge solved count, so 150 well-understood problems beat 500 half-remembered ones.
Q: Which language should I use? A: Any mainstream one you are fluent in. C#, Java, C++, and Python are all fine, and no interviewer penalizes your choice. Fluency and clean, idiomatic code matter more than the language itself, so pick the one whose standard library you know cold.
Q: Do they ask Microsoft-product trivia? A: No. They may ask Azure design patterns in senior HLD rounds, but you are hired for engineering ability, not product memorization. Do not spend prep time cramming feature lists.
Q: What is the AA round exactly? A: The "As Appropriate" round, run by a senior interviewer from outside the team who acts as a bar-raiser and probes wherever earlier rounds left a gap, technical or behavioral. You will not know in advance which way it goes, so prepare both.
Q: How long until I hear back? A: Usually a few days to two weeks after the loop. A debrief meeting aligns all interviewers on a single recommendation before the recruiter calls with a decision, which is why the exact timing depends on getting everyone in one room.
"Your solution works. Can you make it faster?"
"Why did you pick this database for the design?"
"You have a hint but you disagree with it. What now?"
"Tell me about a time you failed."
"Can we negotiate the offer?"
What you can now explain in the room
- Why the referral door is faster than the general pool, and how to make a resume bullet pass the ATS and the 10-second human scan.
- What each of the five rounds is actually scored on, and why the AA round carries extra weight in the debrief.
- The six behaviors that win a coding round on identical final code: clarify, narrate, state complexity, write clean, test, take hints.
- The eight-step HLD framework and why a design with no stated trade-offs reads as junior.
- How to build a STAR story that lands both a number and a coachability reflection, the pair interviewers write down.
- Where Microsoft comp bends in negotiation (stock and signing, not base) and why confirming the level matters most.
Want this turned into a personalized, dated study plan that counts down to your interview? Tell me your target date and current level, and I'll map your weeks for you.
Get a prep plan built around your Microsoft interview
Tell us the role and your interview date. We will send back a dated, day by day plan. Free.