← Back to Directory

Microsoft interview notes, page 4 of 60

FAANG / Big Tech

Most of these Microsoft write-ups come from Software Engineers (372), then Product Managers (124) and Machine Learning Engineers (53). The most reported rounds are the technical phone screen (255), the product sense round (111), the system design round (93) and the behavioral / leadership round (49).

597 interview notes · updated Oct 2026

Microsoft·Software Engineer·Technical Phone Screen

Apr 2026
Microsoft SWE interview that mixed a coding problem into the behavioral portion, which threw me off a bit. The coding section was short, maybe 15-20 minutes, but the question itself had enough wrinkles to keep it interesting.
  • Given a list of business candidates each with a score, distance, and open/closed status, return the top-K entries sorted by score descending, breaking ties by distance ascending.

“The sorting logic itself is straightforward but I second-guessed the tie-breaking for a minute.”

View Post

Microsoft·Product Manager·Onsite - Behavioral / Leadership

Apr 2026
Interviewed for a PM role at Microsoft, just one behavioral question about a success story. Pretty standard but I fumbled the delivery more than I expected.
  • Tell me about a time you succeeded as a product manager.

“I had a story ready but somehow made it sound more like a team win than anything I drove.”

View Post

Microsoft·Software Engineer·Technical Phone Screen

Apr 2026
Microsoft SWE interview with a clean algorithmic problem. Nothing too wild, but the binary search piece required you to actually think through the setup rather than just pattern-match.
  • You're given a sorted (non-decreasing) array of item prices and a list of queries. Each query gives you a starting index and a budget. For each query, return the maximum number of items you can purchase starting from that index without going over budget.

“Prefix sums clicked pretty fast for me, but I fumbled the binary search part initially.”

View Post

Microsoft·Software Engineer·Hiring Manager Screen

Apr 2026
Hiring manager chat for a software engineering role at Microsoft. Pretty much a deep resume walkthrough where they pick apart each project you've listed and ask follow-up after follow-up until they're satisfied you actually did what you claim.
  • Walk me through your resume. For each role or project, what was the scope, what did you specifically contribute, what technical decisions did you make, and what were the outcomes?

“This is the whole interview basically.”

View Post

Microsoft·Software Engineer·Technical Phone Screen

Apr 2026
Microsoft SWE technical phone screen, one meaty graph problem that took up basically the whole session. Not what I expected going in.
  • You're given a list of DNA fragments, each with two tags and a payload string. Fragments are undirected (either tag can connect to a matching tag on another fragment). Find an ordering that uses every fragment exactly once and concatenate their payloads in traversal order.

“This is basically an Eulerian path problem dressed up in biology clothing, and I almost missed that.”

View Post

Microsoft·Software Engineer·Onsite - System Design / Architecture

Apr 2026
Microsoft system design round for a software engineer role, pretty deep in the weeds on LLM inference infrastructure. The whole session was basically one big question about building ChatGPT, and they pushed hard on the low-level details.
  • How many GPUs would you need to serve a 400B-parameter model in bf16 precision, and how do you think about memory requirements across weights, activations, and KV cache?
  • When serving a large model, how do you decide between replicating model shards for throughput versus sharding across more GPUs for capacity?
  • If you offload the KV cache to Redis instead of keeping it in GPU memory, how does the inference service interact with Redis? Walk through the key design, eviction policy, latency budget, and how you maintain consistency across turns in a multi-turn conversation.
  • What are the trade-offs between keeping the KV cache in GPU memory versus storing it remotely?

“I knew the weight math going in: 400B params times 2 bytes per bf16 parameter gets you around 800GB just for weights, so you're already looking at 10+ A100s before you even think about activations or KV cache.”

View Post

Microsoft·Software Engineer·Onsite - Coding / Algorithms

Apr 2026
Microsoft design round focused on a stock price tracker problem. Pretty standard for this kind of interview but the min/max part had more moving pieces than I expected.
  • Design a data structure that supports stock price updates (with the ability to correct past entries) and can return the current price, the maximum price, and the minimum price at any time.

“The update-with-correction part is what trips you up if you jump straight to an array or sorted list.”

View Post

Microsoft·Software Engineer·Technical Phone Screen

Apr 2026
Microsoft SWE coding round, one tree DP problem the whole time. Pretty standard session, nothing fancy, but the problem had enough depth to keep you on your toes if you hadn't seen the pattern before.
  • Given the root of a binary tree where each node holds a non-negative integer, return the maximum sum you can collect such that no two directly connected nodes (parent and child) are both included.

“I knew this was a tree DP problem pretty quickly, which helped.”

View Post

Microsoft·Software Engineer·Hiring Manager Screen

Apr 2026
Interviewed for a PMM role at Microsoft, one question about how you approach understanding your customers or target audience. Short and focused, nothing wild.
  • What strategies or methods do you use to understand your customers or core audience?

“I rambled a bit here.”

View Post

Microsoft·Software Engineer·Onsite - Coding / Algorithms

Apr 2026
Microsoft SWE interview with a graph partitioning problem that's basically NP-hard territory. They wanted you to reason through heuristics and then actually implement something, which is a lot to ask in one sitting.
  • You have a graph where nodes are GPUs and edges represent links between them. Partition all nodes into exactly X balanced groups (each group has either floor(N/X) or ceil(N/X) members) such that the number of edges whose both endpoints are in the same group is maximized. Walk through possible approaches and implement one.

“This is a follow-up to an earlier GPU grouping question, so if you haven't seen the first part you're already behind.”

View Post