
Microsoft Interview Questions
& Process
Real candidates share what happened, how many rounds they had,
and how the experience turned out.
Based on 17,739 interview experiences · FREE TO READ
Which role are you interviewing for?
30 roles · 17,739 reportsCandidate interview experiences
First-hand accounts from people who interviewed at Microsoft.
Software Engineer
The interview process for the SWE Intern role was pretty organized and simple. It began with an online application, and after a short time a recruiter reached out to schedule the first interview. The first round was a phone or virtual interview that mainly covered basic technical questions and some behavioral questions about my background, projects, and interest in the position. After that, I advanced to a technical interview where I had to solve coding problems and walk through my thought process step by step. The interviewer focused on my problem-solving abilities, my knowledge of data structures and algorithms, and how clearly I could explain my approach. They also asked a few follow-up questions to understand how I would improve or optimize my solution.
- One of the main things they asked me to do was solve a coding problem using data structures and talk through my logic as I was working on it, and then they followed up with questions on how I would make the solution more efficient.
Technical Program Manager
I think I interviewed for a role that didn’t really exist. The hiring manager screen ended after about 10 minutes because he said he was getting pinged for “something urgent.” He still moved me forward. Looking back, I think they just needed a warm body to run through the full loop and check a box. One of the interviewers was weirdly defensive and asked me something like why I should get the role when some people, including him, had been in the same org for 10 years building things from the ground up. He also told me not to change things too fast if I got hired. It was the most bizarre 5 minutes of any interview I’ve had. I didn’t get an offer. A few weeks later that same guy updated LinkedIn saying he’d been promoted to Sr. Director. I think it might have been his role I was interviewing for and he was interviewing the candidates. Very strange and a waste of time.
- Would you like to go through an interview process for a role that isn’t actually real?
Applied Scientist
1. Interview with 2 employees, both applied scientists, 1 hour, we talked about my experience in the past. 2. three interviews, back to back, each 45 min with 15 min break in between, first one had both HR questions and some technical questions about NLP concepts, second one was a LC task medium difficulty, third one was an applied NLP problem (text summarization in my case) and he asked me how would I solve it, what architectures I would use and why and some general questions about NLP (similar to the first interview), all interviews were held in english even though the position is in Serbia and we all spoke serbian.
- no questions were listed here
Technical Consultant
Combination of culture fit and standard screening, then you get a consulting case to solve, then more behavioral. I went through 5 different people working as Technical Consultants and in other business functions there. Had 4 out of 5 tell me they'd be looking forward to seeing me there in the summer but I never ended up getting the offer.
- Why do you think you’d be a strong fit for Microsoft?
Microsoft Interview Questions
Quoted word for word from Microsoft interview reports.
“Implement a BST Iterator: init(root): initialize the iterator with the tree root (TreeNode); getNext(): return the smallest value not returned yet; hasNext(): return True if there are still values to return, False otherwise.”
Read reports →“Implement a FastArray: Init(n): initialize the FastArray to size n; Set(i, v): set index i to value v; Get(i): return the value at index i; SetAll(v): set all values to v, where calling Set after that overrides it for that index. All operations must be O(1) time complexity.”
Read reports →“Given strings s1, s2, and s3, decide if s3 is generated by an interleaving of s1 and s2. An interleaving of two strings s and t is when s and t are cut into n and m substrings, such that: s = s1 + s2 + ... + sn and t = t1 + t2 + ... + tm with |n - m| <= 1, and the interleaving order is s1 + t1 + s2 + t2 + s3 + t3 + ... or t1 + s1 + t2 + s2 + t3 + s3 + ... Here, a + b is the concatenation of strings a and b.”
Read reports →“Write a palindrome function that works with messy inputs and make it as fast as possible”
Read reports →“Given numbers N, M and X, create a new NxM matrix filled with '.', such that it has X '*' in random positions.”
Read report →“Build a HashMap implementation. given a dictionary of words, and a string made of chars, if you can split it into words from the dictionary, return the string.”
Read report →“find the contiguous (connected) subsequence of numbers in a 1D array that gives the largest possible sum, the classic problem solved efficiently with Kadane's Algorithm (Dynamic Programming/Greedy) in O(N), dealing with positive and negative numbers and returning only the sum, with variations like maximum product or 2D array versions.”
Read report →“In React, when a parent renders, will the child also render if there are no state changes in the child? (how to stop re-render, useMemo).”
Read report →“Implement a driver for a data channel that has read, write, data valid, and data signals.”
Read report →Formats, difficulty and experience
Across all 17,739 Microsoft interview reports.