Microsoft SDE2 Interview Experience

microsoft logo
microsoft
SDE IIRejected
March 10, 202531 reads

Summary

I recently had my third interview attempt for an SDE2 position at Microsoft. I successfully navigated the coding challenges in the initial two rounds, which covered DSA and a design question, but ultimately received a rejection due to my low-level design skills for a Chess game in the subsequent rounds.

Full Experience

This was my third opportunity to interview with Microsoft.

Round 1

This round commenced with an introduction, followed by two Data Structures and Algorithms questions.
  1. The first question was Spiral Matrix.
  2. The second question involved processing a stream of characters to continuously identify the first non-repeating character.
I was able to implement a working solution for both problems.

Round 2

This round focused on a single design question. I was tasked with designing the undo and redo functionality for a text editor. This problem came with several follow-up questions, including considerations for a multi-user environment, similar to collaborative platforms like Google Docs. I successfully coded my approach for this as well.

Round 3 & Round 4

In these final two rounds, I was asked the same question: the Low-Level Design (LLD) of Chess. While I managed to define classes and outline various functions required, my overall design approach and skills were not considered up to par. This is where I believe I struggled the most, leading to my eventual rejection.

Interview Questions (4)

Q1
Spiral Matrix
Data Structures & Algorithms

Given an m x n matrix, return all elements of the matrix in spiral order.

Q2
First Non-Repeating Character in a Stream
Data Structures & Algorithms

A stream of characters is continuously arriving. You need to design a system that, at any point, can tell the first non-repeating character encountered in the stream so far.

Q3
Design Undo/Redo Functionality for Text Editor
System Design

Design the undo and redo functionality for a text editor. This included multiple follow-up questions, specifically exploring how this design would handle scenarios with two users collaborating, similar to Google Docs.

Q4
Low-Level Design (LLD) of Chess
System Design

Design the Low-Level Design (LLD) for a Chess game. This involved creating appropriate classes and defining their respective functions and interactions to implement the game logic.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!