Verified

Verified by Software Engineer at Microsoft

Microsoft Software Engineer Interview Guide

Interview Guide Nov 04

The role of a Microsoft Software Engineer

Microsoft is an American multinational engaged in building software, electronics, and personal computers.

Software engineers at Microsoft are responsible for designing, developing, deploying, testing, and maintaining company software by using software engineering principles and techniques.

The responsibilities of a Software Engineer at Microsoft

  • Understanding the requirements of the customer and delivering the required software.
  • Writing clean and good quality code which can be understood and maintained easily by future developers.  
  • Following the Software Development, Life Cycle to plan projects and execute them. 
  • Writing valid test cases to ensure that the software meets the requirements of the customer, and ​​resolving the problems faced.
  • Creating designs that suit the needs of the customer. 
  • Work closely with product managers and program managers. 

Qualifications Required

  • Degree in computer science or any other related field
  • Knowledge of object-oriented programming
  • Strong analytical and problem-solving skills
  • Effective communication and collaborative skills

Average Salary of a Microsoft Software Engineer

The average salary of a Microsoft Software Engineer is $ 136,877 annually. The average base salary is $ 121,962, and the bonus is $14,915 annually.

Interview Overview

The Microsoft Software Engineering interview process consists of 3 rounds.

  • Recruiter Phone Screening

A general discussion about yourself and a resume walkthrough

  • Technical Phone Screening

This round is to test basic technical concepts such as DBMS and OOPs, and coding skills.

  • Microsoft Super Day or the Onsite Round

It will consist of 3-5 interviews, out of which 3-4 will be technical and 1 will be an HR interview.

Schedule a mock interview with a Microsoft recruiter to increase your chances of cracking the interview.

Schedule Now
Relevant Guides

Recruiter Phone Screen

Overview

The first round of the Microsoft Software Engineer interview is the Recruiter Phone Screen interview. It is a 30-minute call with a recruiter and will include a discussion about you, your experiences, and your role at the company.

There may be an online coding assessment, that will be conducted on a platform such as Hackerrank. It will have three-four questions and you will get 90 minutes to complete them. Topics that will be tested are - 

  • String manipulation
  • Arrays
  • Trees
  • Recursion
  • Data Structures

Interview Questions

  1. Tell me about yourself.
  2. Why are you applying for this position?
  3. Why this role?
  4. Talk about a project you are proud of.
  5. What value would you add to Microsoft?
  6. Why Microsoft?
Watch these videos

Technical Phone Screen

Overview

This is the second interview in the Microsoft Software Engineer interview process. It will be a 45-minute interview with a software engineer(s). You will be asked some technical questions and will be asked to present a code for one question. 

Questions will be based on the following topics - 

  • Data Structures 
  • Object-Oriented Programming concepts
  • DBMS
  • Programming language-based knowledge
  • Project experiences

The above-mentioned topics may change depending on the role and the team to which you have applied. Hence, you should prepare well for domain-based questions.

Tips

  • Talk to the interviewer when you are solving the question so that the interviewer knows your thought process. Many interviewers give small hints and provide greater clarity to the question in case of any confusion

Interview Questions

  1. What are storage classes in C++?
  2. When do we use the ‘volatile’ keyword in C++?
  3. What is an SQL trigger?
  4. What is the difference between a procedure and a function in DBMS?

For coding questions, you can refer to the technical questions mentioned under Round 3.

Note - SQL queries based on a given order table can also be asked. 

You can also refer to the article 7 Tips on How to Approach and Solve Coding Problems Successfully

Read these articles

Super Day - Onsite Round

Overview

The final round of the Microsoft Software Engineering process is the Onsite round, commonly known as the Super Day. It consists of 3-5 technical interviews and 1 HR round, conducted by professionals of various teams of the company. Each interview will be 45 minutes long.

1. Technical Interviews

In the technical interviews, you will be tested on concepts such as - 

  • Computer Science basics
  • Operating Systems
  • Machine Learning
  • Objected Oriented Programming
  • Data Structures 
  • Networks
  • Questions based on Java

Technical questions related to your experiences may also be asked. Many recruiters give about 15-20 minutes of the interview to discuss the projects on your resume and then continue with the technical part.

2. HR Round - 

The last round in the recruitment process is the HR round. It helps the interviewer understand whether you are a good fit for the job or not by judging your strengths, weaknesses, communication skills, and capability of handling the role.

Tips

  • We recommend that you answer questions using the STARR Framework - Situation, Task, Action, Result, Reflection. It will help you explain the situations in a clear and precise manner. Remember to focus most on the result.

Interview Questions

Microsoft Technical Interview Questions -

  1. Given an array, find its equilibrium index.
  2. Write a code for the Minesweeper game.
  3. How would you explain recursion to someone having a non-tech background?
  4. What procedure do you follow while debugging your code?
  5. What is the difference between good code and great code? 
  6. How can recursion be used to search in a tree?
  7. Use DFS to search for the given number in the graph.
  8. Write a code that finds whether a number is a power of 2.
  9. Write a program that determines if a string is a palindrome.
  10. Write a code to explain how a ternary search tree works. 
  11. Given an integer, write a function that represents its hexadecimal form.
  12. How will you implement a stack using a queue?
  13. Given a string, check whether it is a Pangram or not. (A pangram is a sentence that contains every letter in the English alphabet).
  14. How can we deserialize a binary tree?
  15. Given an integer array, find the contiguous subarray having the largest sum.
  16. Write a code to determine whether a Sudoku board is valid or not. 
  17. Write an algorithm to determine if a given number n is happy.
  18. How would you write a code that implements Tic Tac Toe?
  19. Given an array, find the subset with the maximum product.
  20. Given a matrix with only 1’s and 0’s, find the largest square containing only 0s and find its area.

Behavioral Interview Questions - 

  1. What is a piece of recent news you have heard about Microsoft and what is your opinion on it?
  2. What project do you feel was your biggest success?
  3. Is there any project that you regret working on?
  4. How will you handle a crisis?
  5. How would you describe your optimal work environment?

Practice more interview questions with a peer interviewing for the same role for free.

Schedule Now

Conclusion

That's it for this interview guide. Follow the tips and tricks we mentioned in the guide, and we are sure you will ace your interview. You can also check out interview guides of other organizations for the same role.