Home

Published

- 3 min read

How I prepared for Microsoft on campus rounds

img of How I prepared for Microsoft on campus rounds

How to Prepare for Microsoft On-Campus Rounds

This is written for students in their final year or pre-final year, for whom Microsoft visits on campus. This is based on my experience of cracking Microsoft in 2023, but since then a lot has happened in tech, the biggest being ChatGPT able to solve most LC questions. So, I feel the level of DSA might have increased, but I feel the crux of it remains the same.

Note: For internships, they only ask on DSA and some OOPs. This guide is for FTE (Full-Time Employment) roles, not internships.

Unlike the majority of Big Tech, Microsoft is a company that not only focuses on DSA, but also on Core Computer Science concepts and your previous experience. So, I would structure the preparation in three phases:

  1. DSA
  2. Computing Fundamentals
  3. Internships & Projects

DSA

Microsoft loves strings, greedy questions on strings, dynamic programming on strings, etc. Also, have a good grasp of questions that require forming a character array of alphabets and complexity is O(26N), like this Longest Repeating Character Replacement - LeetCode.

Their other favorite topics are:

  • DP
  • Two pointers
  • Sliding window
  • Graphs (learn DSU)

Solve all the jump games, buy and sell stocks, palindrome partitioning questions on LeetCode. It doesn’t mean other topics are less important, but these were the most frequent.

You can find the most frequently asked OA questions here: Microsoft Online Assessment Questions 2021.

For Dynamic Programming, you can refer to: Dynamic Programming Playlist | Interview Questions | Recursion | Tabulation | Striver | C++ | Java | DSA | Placements - YouTube (Solve all the questions in this playlist, especially the string DP ones).

Other than that, while interviewing, focus on writing clean code, proper variable naming, etc. You can refer to the feedback given by Clem to Keerti in the mock interview: Google Coding Interview With A Normal Software Engineer.

Computer Science Fundamentals

Cloud

Cloud consists of three things:

  1. Storage
  2. Compute
  3. Networking

Storage

Learn about all three. For Storage, learn about Databases, SQL, and Database Management Systems. The best place to learn the concepts behind databases is this course by CMU. Trust me, Andy will make you fall in love with databases: CMU Intro to Database Systems (15-445/645 - Fall 2024) - YouTube. Go through the first few lectures, the entire course is not required.

Compute

For Operating Systems, Lakshay has a great video series for placement purposes: Operating Systems for Placements 2022 - YouTube. If you want to dive deeper, refer to the “Dinosaur Book”: Operating System Concepts - Google Books.

Networking

For computer networking, learn the OSI model thoroughly, and read blogs on it.

OOPs

Object-Oriented Programming (OOPs) comes in handy. Learn the OOPs principles and their implementation in any language. For CPP, you can refer to this video series: C++ Object-Oriented Programming - YouTube.

Internships and Projects

Before the interview, prepare a one-pager on your internships that you have worked on. Include:

  • What did you learn?
  • How did you show a growth mindset?
  • What did you do that helped improve the project?
  • Your tech stack, design principles, etc.

Spend some time on this, as it is important. Mostly, we forget what we have done a month ago, and answering on the spot is difficult. So, prepare the write-up and have it through.

If you have not done any internships, do a good project where two or more services interact with one another. Do a crash course on system design and learn about Redis (caching), Kafka (message queues), etc.