Just ended recently Microsoft The interview process of SDE-II starts from receiving the recruiter in mid-July to receiving the offer at the end of August. The whole process is not particularly fast-paced, but the experience is complete and representative. I compiled this review mainly to give students who are looking for jobs in North America a more "down-to-earth" reference, especially the state of writing questions, submitting resumes, and worrying about visas. I have also experienced it myself.

Background and delivery
I graduated with a master's degree in CS and worked as a backend in North America for two years. This time I applied for SDE-II for job hopping. I submitted it through LinkedIn + the official website, and the recruiter contacted me within a week.
There is a very obvious feeling here: Microsoft recruiter follow-up is really active, the timeline is very clear, and it will not "disappear" in the middle. This is a plus when you’re interviewing with multiple companies at the same time.
Round 1: Online Coding Assessment (105 minutes)
This is the first level, two questions, and the total score needs to be more than 50% to pass. The platform is HackerRank which allows mainstream languages like Python/Java/C++.
Question 1: Variation on the best times to buy and sell stocks. The original title is a combination of LeetCode 121/122/123, with transaction fee and cooldown period restrictions added. I used the dynamic programming (DP) + state machine idea to define several state variables (hold, not_hold, cooldown), quickly wrote and passed all test cases, and got 100%.
Question 2: Bit sequence addition (Big Integer addition variant).
The question gives two vector, each element is 0 or 1, representing a binary sequence of two large integers (note the signed bit). It is required to return the shortest binary sequence after addition, without excess leading zeros.
Example:
A -> 011001011101011 (corresponds to decimal 5730)
B -> 00100111101 (corresponds to -2396)
Output the bit sequence corresponding to A+B.
This question examines string/array simulation + carry processing + symbol judgment. I add starting from the lowest bit, handle the carry, and then remove the leading zeros when finished. After writing it, I found that negative number processing and boundary cases (all zeros, different lengths) were not completely covered, and only 75% was covered. However, the overall performance was adequate and we successfully entered the next round.
Suggestion: There is a time difference between North American time and domestic time. It is recommended to take a 105-minute mock test at a fixed time every day one week in advance. Be sure to finish the Microsoft high-frequency questions in the Company Tag of LeetCode Premium, especially Bit Manipulation, Array and DP.
Round 2: DSA Round (60 minutes)
The first 8-10 minutes of this round are self-introduction + project discussion. I prepared a 2-minute version of the elevator pitch, focusing on how to scale a high-concurrency service in the current project, the technology stack used (Spring Boot / Kafka / PostgreSQL) and the quantitative results achieved (QPS increased by 3 times, etc.).
Question 1: Repair circular doubly linked list.
Given an almost correct circular doubly linked list, only one node's next/prev points to an error, requiring the broken link to be found and repaired. The interviewer drew a schematic diagram on the spot: 1 2 –> 3 4 –> 5, and asked to repair it into a complete ring.
I first use O(1) extra space traversal to find the node that does not satisfy next->prev == current, and then adjust the pointer. Edge cases (only two nodes, completely broken linked lists, etc.) are discussed. The interviewer asked about the time complexity. I answered O(N) and explained why it couldn't be better. He expressed satisfaction.
Question 2: Construct a BST given an inorder sequence and then print it in level order.
This question is relatively friendly. I used recursion + queue to implement it quickly.
This round feels like chatting with a senior engineer. He will give you hints at the right time and will not let you get stuck. North American international students often worry about speaking. It is very important to practice "thinking aloud" more in this round - explaining ideas while writing code will score higher than just writing correct code.
Round 3: System Design
This is the round that I prepared the most carefully, and it is also the round that best reflects my SDE-II level. The interviewer said directly: "We are not pursuing perfect answers, but we want to see your tradeoff thinking and communication skills."
Topic:Design an Alarm System.
Core needs:
- User CRUD alarm (single, repeating, custom repeating such as working days)
- Trigger push (email, push notification, SMS) on time
- Support time zone (North American international students know this pain point best!)
- Highly available and scalable, considering millions of users
I follow the classic four steps:
- Clarify Requirements(Functional + non-functional): daily alarm peak, delay tolerance (<30s), consistency requirements, etc.
- High Level Design: Draw Client → API Gateway → Alarm Service (using Spring Cloud / .NET) → Scheduler (Redis Sorted Set + time wheel or Quartz cluster) → Notification Service (Kafka decoupling).
- Deep Dive: Focused on how Scheduler prevents single points, how to do failover, and data consistency (SQL stores metadata, Redis does hot cache).
- API Design & Scale: Key REST/gRPC API pseudocode is given, and rate limiting and idempotency are discussed.
The interviewer asked practical questions such as "What to do if the user sets repeated alarms across time zones" and "How to scale during the peak time (7 a.m.)". I answered based on my previous project experience, and he nodded frequently.
As far as I know, someone in the same batch was asked to Design a Coding Contest Platform (one million submissions during peak period). The core is also task scheduling and question queue. There is no standard answer to design questions. The key is structured thinking + alignment with the interviewer.
Tips
Watch more Microsoft Design videos on Grok / YouTube, recommend ByteByteGo and System Design Interview channels. Master the classic questions like Uber, Instagram, and Ticketmaster. Microsoft's questions are often variations of them.
Round 4: Hiring Manager Round (60 minutes)
This round is the most "North American" - half technology, half behavioral + culture fit.
In-depth discussion of databases in the first 30 minutes:
- The core differences between SQL vs NoSQL and understanding of the CAP theorem.
- Which database to choose for payment scenarios (receiving payment)? Why? (I choose SQL + proper separation of reading and writing, emphasizing the importance of ACID)
- When is NoSQL necessary (high throughput logging, user profiling, etc.).
- How to add columns to GB-level SQL tables (online schema change, pt-online-schema-change tools).
- SQL question: query the employee table for employees who live in Bangalore, have worked for >3 years, and have top 5 income. The RANK() OVER() window function is used.
The next 30 minutes are all BQ:
- Tell me about a project where you influenced the team’s decision-making (STAR method)
- How to deal with disagreements with seniors
- Why did you leave your current company? Why Microsoft?
- How do you help junior engineers grow?
I prepared 4-5 stories covering Leadership, Conflict, Failure, and Success, each with quantified results. The interviewer finally asked me to ask questions. I asked about the team’s tech debt situation, on-call frequency and 1-year goal, and he answered very transparently.
Final results and review
The whole process took more than 3 weeks, and all four rounds were passed. HR quickly issued an offer. The salary package in SDE-II is above average (base + stock + bonus) and is friendly to international students.
Some sincere advice for new grad students:
- Time management: When applying to Amazon, Google, and Meta at the same time during the fall recruitment period, priority should be given to completing Microsoft’s Online Assessment as soon as possible, don’t delay.
- Acculturation: Microsoft emphasizes "growth mindset" and "customer obsession", and reflects these when answering BQ.
- Resume optimization: Bullet points Let data speak for themselves (“improved latency by 45%”). North American HR is very fond of this.
- Mock Interview: Find partners in Pramp, interviewing.io or the North American Chinese student group to mock design and BQ.
- Mentality: It’s normal to be nervous during interviews. I was also a little out of shape in the first round due to jet lag. Take a deep breath and think of it as a technical discussion with a senior.
If you are currently interviewing Amazon, Google, and Microsoft at the same time and are extremely pressed for time. You study questions until early in the morning every day but still feel unsure about Design and BQ. I strongly recommend that you look into professional interview assistance services such as Programhelp.
What many students (including friends around me) lack most during the sprint phase is not basic knowledge, but practical training. The core advantages of Programhelp lie in three points:
- Continuously updated high-frequency OA + real test question bank (the original test questions that have appeared in Microsoft, Amazon, and Google in the past six months are very comprehensive and can help you quickly cover the key points);
- Real-time voice assistance: During a real interview, you are most afraid of suddenly getting stuck in your ideas, unclear tradeoff, or chaotic rhythm. They can give you a low-pitched reminder or structured guidance within the critical 30 seconds to help you stabilize your performance;
- High Quality Mock Interview: Especially System Design and Behavioral Questions, which are conducted one-on-one by instructors with backgrounds as interviewers in major companies, and are highly targeted.
To be honest, it's not that you can't do the questions now, but that "soft power" problems such as stuck ideas, vague expressions, and loss of rhythm during the interview are the most likely to lose the offer. Practicing by yourself in front of the mirror will have limited effect. Having an experienced person polish it with you in real time will significantly improve your efficiency and confidence.
Finally, I wish all students who are submitting applications to get their favorite offers as soon as possible! If you have any interview questions from Microsoft or other major companies, please feel free to share them in the comment area. Let’s work hard together to make the path of finding a job in CS in North America smoother.