← Back to Directory

Microsoft interview notes, page 53 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

Jun 2026
Microsoft SWE interview with a string parsing problem that looks straightforward until you start thinking about edge cases. The state machine discussion at the end was the part I wasn't prepared for.
  • Given a string of C++ source code, remove all comments (both single-line '//' and block '/* */' variants, including multi-line blocks) and drop any lines that become empty as a result. Comment markers inside string literals should be treated as regular characters.

“I started with a naive approach scanning for '//' and '/*' substrings and immediately ran into trouble with overlapping cases.”

View Post

Microsoft·Machine Learning Engineer·Technical Phone Screen

Jun 2026
Microsoft ML engineer coding round, basically a PyTorch implementation exercise where you fill in blanks to build a tiny next-token prediction model. Pretty hands-on, less theory and more 'can you actually write the code.'
  • Implement a small next-token prediction model in PyTorch using the architecture: Embedding -> Linear -> ReLU -> Linear. Fill in the missing pieces including the DataLoader setup, model layer definitions, and the forward method.
  • Given a batch of sequences, how do you prepare the inputs and targets for next-token prediction before passing them into the model?
  • After slicing inputs and targets from the sequence batch, how do you reshape them so all token positions are treated as a single flat batch before computing the loss?
  • Complete a training loop: run the forward pass, compute CrossEntropyLoss, backpropagate, and step the Adam optimizer.

“The architecture itself wasn't the hard part.”

View Post

Microsoft·Software Engineer·Technical Phone Screen

Jun 2026
Microsoft coding interview, one question about arrays and sums. Pretty short session, nothing too crazy but the problem has some tricky edge cases if you're not warmed up.
  • Given an array of integers and a target sum, find the longest contiguous sub-array whose elements add up to that sum.

“Went with a sliding window first, then realized that only works cleanly for positive numbers.”

View Post

Microsoft·Software Engineer·Onsite - System Design / Architecture

Jun 2026
System design round at Microsoft for a software engineering role. One meaty question about centralized logging that took up the whole session. Came out feeling okay but unsure if I covered enough on the reliability side.
  • Design a centralized logging system for a large company where many services and batch jobs across multiple hosts need to emit logs. The system should handle ingestion at scale, durable storage with retention policies, querying by time range, service, host, log level, and trace ID, burst tolerance, partial outage resilience, and multi-tenant access control per team or environment.

“I started with the data flow, which felt like the right move.”

View Post

Microsoft·Software Engineer·Onsite - System Design / Architecture

Jun 2026
Microsoft SWE system design round, URL shortener question. Pretty classic prompt but the depth they expected on the key generation side caught me off guard. Walked away unsure if I covered enough of the low-level stuff.
  • Design a URL shortening service like TinyURL or Bitly, covering both the high-level architecture and the low-level design.
  • What clarifying questions would you ask before designing this system, and why do those questions matter?
  • Compare different short-code generation strategies: hashing the long URL, using a global counter, or a pre-generated key service. What are the tradeoffs?
  • How do you calculate the minimum short code length needed to support your expected scale using a base-62 character set?
  • Should redirects return a 301 or 302 status code, and what are the implications of each choice?
  • How would you add per-link click analytics without adding latency to the redirect path?
  • How do you handle sharding the datastore as it grows, and how does your key generation scheme interact with that decision?

“I started with capacity math which felt right, 500M writes a month, 100:1 read ratio, worked out to something like 20k redirects per second average.”

View Post

Microsoft·Software Engineer·Technical Phone Screen

Jun 2026
Microsoft SWE interview with a classic linked list reversal problem. Nothing too wild, but the follow-up asking for both iterative and recursive solutions is where things got interesting.
  • Given the head of a singly linked list, reverse it and return the new head. Then solve it both iteratively and recursively.

“The iterative version came out fine, three pointers, prev/curr/next, pretty mechanical once you've done it a few times.”

View Post

Microsoft·Software Engineer·Onsite - Coding / Algorithms

Jun 2026
Coding round at Microsoft was rough. The question itself was manageable but the CSV parsing requirement ate up most of my time and I never really recovered from it.
  • Implement an in-memory SQL engine that accepts table data as a CSV string (including a hand-written CSV parser), then solve a series of follow-up extensions on top of it.

“The CSV parsing part wrecked me.”

View Post

Microsoft·Software Engineer·Technical Phone Screen

Jun 2026
Microsoft coding round, one algorithmic problem about palindromes. Pretty standard stuff but the edge cases are where it gets annoying.
  • Given a non-negative integer n, find the smallest palindromic integer that is strictly greater than n.

“The basic idea clicked fast: mirror the left half onto the right.”

View Post

Microsoft·Software Engineer·Onsite - Coding / Algorithms

Jun 2026
Microsoft SWE coding rounds, all implementation-heavy. Four problems across data structures, concurrency, and debugging. The bar felt high and the questions weren't the kind you can wing.
  • Implement an LRU cache supporting get and put in O(1) time, then explain how you'd make it thread-safe for concurrent access.
  • Build a hash map from scratch with put, get, and remove, then extend it to handle concurrent reads and writes correctly.
  • Implement a quadtree for 2D points or rectangles with support for spatial range queries.
  • Review a C++20 producer-consumer program built around a message queue. Find correctness bugs, race conditions, synchronization issues, and any API or performance problems.

“The base implementation was fine, doubly linked list plus a hash map, pretty standard.”

View Post

Microsoft·Data Scientist·Technical Phone Screen

Jun 2026
Microsoft Data Scientist interview split into a heavy concepts section and a coding section. The concepts part covered CNNs vs RNNs in real depth and the coding part was a full K-means implementation from scratch. Felt more like a grad school exam than a typical industry loop.
  • Compare CNNs and RNNs for processing images versus variable-length text. Cover inductive biases like translation equivariance and temporal ordering, parameter sharing, how receptive fields grow, and which architecture handles long-range dependencies better.
  • For LSTMs specifically: write out the gate equations, explain how the cell state helps avoid vanishing gradients, and compute the output shapes for a batch of 32, sequence length 100, and 64 features with hidden size 128, both unidirectional and bidirectional.
  • Implement K-means from scratch including k-means++ initialization, vectorized assignment and update steps, and a convergence check based on objective decrease.
  • Walk through the time and memory complexity of K-means, how you'd handle empty clusters, why feature scaling matters, and how you'd choose k using methods like silhouette score, elbow method, or BIC.
  • Prove that the K-means objective is non-increasing across iterations, then propose a mini-batch variant and describe when you'd prefer it over standard K-means.

“This question is broader than it sounds.”

View Post