Microsoft Corporation

4.3
microsoft.com
43 Years Old
Washington, USA
Unknown
10000+
Public

Microsoft Corporation Interview Questions & tips

1 - 10 of 127 InterviewsSort By: Popularity  |  Latest

Interview Process

Test → programming round → case study round → Technical Interview → HR Interview

Test

No. of Questions

30 MCQs questions

Experience

Some companies don’t make any strict regulations regarding the language in question, but Microsoft always goes with C/C++. The questions are similar to what you would find in books like “Let us C”. Questions regarding pointer manipulation, predicting the output, pre-order postorder increment decrement, structures, arrays formed the majority. · These are their favourite areas of computer science that they choose to focus on. That being said the questions asked in this section were quite few. Maybe 5 or less than that. Questions regarding like memory allocation in OS, preferred data structure for a particular application, properties of database management systems made it in

programming round

Experience

Once you clear the aptitude you become eligible for the programming round. This round has two questions meant to be solved in C. The focus is on the following aspects and in this particular order:CorrectnessOutput is correct for the given test cases Completeness Output is correct for all the test cases Time Complexity The program has the specified time complexity or less Space Complexity The program does not occupy too much excess space
You don’t have to write the entire programs just the necessary functions to perform the tasks given. The results were declared after a few days when Microsoft visited.
Question1 - Find an element in a rotated sorted array in O(log n) time. For ex. Find 4 in 7 8 9 1 2 4 5 
Question2 - With a parent pointer in every node of a binary tree, find the in order successor of a given node. I solved both of these questions, yet my solution for the first one used some amortized amount of time (amortized time is time that is not significant enough to affect the order, that is log n, but it is not too insignificant to be ignored as constant) more than the required time constraint which had me worried a little

case study round

Experience

People who barely managed to get their output right in the last round were eligible for this round. I don’t have details about how this round was conducted since I wasn’t part of it but it is pretty standard procedure, the same kind of GD or case study that happens in most companies

Technical Interview

Interview Experience

Keep it real. Say stuff that is good about you AND makes you a good candidate for the job. You never have more than 3-4 minutes for such questions so focus on conveying what is most important. After general introductions, I talked about how passionate I am about programming and technology in general, how I didn’t just see it as a subject or a career option but something that I enjoyed doing and have successfully used in my daily life. Talk about what values and work ethics you believe in. End it with what qualities you have as a person or as a possible employee. Please note that you should not leave the interviewer on just your words to believe on. Give short descriptive examples to support what you are saying but don’t go on telling long boring stories I gave the required answers. I am not elaborating on this part since this is something that you can answer just by knowing your stuff. It was nothing out of the ordinary but it wasn’t all that easy. DSA and DBMS were among my favourite subjects so I did pretty well.  I wrote the code since I had actually made the application. This is an important question where he was testing whether I told the truth or not earlier. So whatever happens do not lie or make up even a single detail while explaining something, you never know what might come back to haunt you Write code for designing the ADT (Abstract Data Type) for all the classes that might be required to represent the game of chess Me: This was the kind of question that I wasn’t expecting. Also the reason I got this question was that I had mentioned chess in my hobbies. So keep in mind every small thing you put in your resume matters a lot. He allowed me to choose my language of choice so I began with Java and then I did the important part

HR Interview

Interview Experience

Why Microsoft?- Give some answer that is well thought and prepared beforehand.
You left Barclays for Microsoft? -Basically what they wanted to know here is that I don’t have the same plans for Microsoft. I told them Barclays was an investment bank and while I was fortunate to get a chance to work in that great environment I want to start my career in a product based company so Microsoft (Microsoft is becoming a service based company now BTW) Note: If you have done internship somewhere else and have rejected an offer from there, say only good things about your previous employer. Anything else will reflect badly on you.   
What makes you better than you colleagues? - Whatever nice things you can say about yourself, everything comes here. Don’t, however mention the negative points of your colleagues, in hopes of making yourself look good. It will only make you look bad. 
Write the artificial intelligence logic in code for your Chess representation- Now the fact that this question was asked in HR rather than Tech should give you an idea about the real purpose of this question. When this question was asked we didn’t even have AI as a subject yet. The interviewer knew beforehand that I could not code this. He wanted to see how I would handle it. So after thinking for a few minutes I decided to draw flow charts and map out scenarios

33.9k views

33.9k views


Interview Details

I was interviewed on Dec, 2016.

Skills Tested

Coding Skills

Communication And Confidence

Ability To Cope Up With Stress

Logical And Structured Thinking

Interview Process

Test → Test → Technical Interview → Technical Interview → Technical + HR Interview

Test

Duration

1 Hours 30 Minutes

No. of Questions

3 questions

Test Sections

Coding

Experience

The test had 3 questions as follows :
Q1. Rainwater Collection - Dynamic programming
Q2. DP / Memoization question
Q3. BFS Matrix Question

Test

Duration

45 Minutes

No. of Questions

2 questions

Test Sections

Coding

Experience

Both questions were based on implementation of puzzles and problems.

Technical Interview

Interview Experience

The interviewer asked me about my previous internships while in college and made me explain the work I did. Later on he asked me in detail about the projects I did in college.

Technical Interview

Interview Experience

I was first asked a coding question related to finding similarity in two words and I had to define the terms of similarity on my own which I did by normalizing length of LCS by the total length of the string. Then I was faced with stress checking. They tried proving me wrong even though when I was right and checked my reaction under stress.

Technical + HR Interview

Read more

19.2k views

19.2k views


Interview Details

I was interviewed on Dec, 2015.

Interview Process

Test → Group fly round → Technical Interview → Technical Interview → Technical + HR Interview

Test

Duration

1 Hours 30 Minutes

No. of Questions

3 questions

Test Sections

Coding round

Experience

3 questions were given
1. Rain water collection problem
2. Matrix DFS problem
3. DP problem

Group fly round

Experience

2 questions were given
1. Convert number into words. Eg. 389 to Three hundred and eighty nine. Input 1-999999
2. A 2-D matrix nxn consisting of numbers is spirally sorted in decreasing order. So given a number we have to insert into the matrix so that the matrix is still sorted spirally. Write a function.

Technical Interview

Technical Interview

Interview Experience

I asked about the definition of similarity wrt the question. He replied to define it myself. So, I told him that I would find the LCS of the 2 strings and then define a threshold below/above which "we" could say them to be dissimilar/similar. There was a confusion there. I realised my mistake and stated it to be Longest Common Subsequence. He asked me to write the code. After I was done. He told me that the code was incorrect. I went through the code thrice and then I told him whether he could point out the mistakes. There were none. He was trying to see how I reacted. I didn't get too defensive. He was happy with it. Then he asked me to optimize the code. I said that for letters that didn't match in both the strings, we could define some similarity score between individual letters. He said yes it is definitely a good optimization but can you think of something simpler. I then told him that we need to normalize the LCS. He was happy that I could work on the hints he provided.

Read more

1.7k views

1.7k views


Interview Details

I was interviewed on Dec, 2016.

Skills Tested

Coding Skills

Ability To Cope Up With Stress

Communication And Confidence

Logical And Structured Thinking

Data Structures

Interview Process

Test → Test → Technical Interview → Technical Interview → Technical + HR Interview

Test

Duration

1 Hours 30 Minutes

No. of Questions

3 questions

Test Sections

Coding

Experience

The test had 3 questions as follows :
Q1. Rainwater Collection - Dynamic programming
Q2. DP / Memoization question
Q3. BFS Matrix Question

Test

Duration

45 Minutes

No. of Questions

2 questions

Test Sections

Coding

Experience

Both questions were based on implementation of puzzles and problems.

Technical Interview

Interview Experience

The interviewer asked me about my previous internships while in college and made me explain the work I did. Later on he asked me in detail about the projects I did in college.

Technical Interview

Interview Experience

I was first asked a coding question related to finding similarity in two words and I had to define the terms of similarity on my own which I did by normalizing length of LCS by the total length of the string. Then I was faced with stress checking. They tried proving me wrong even though when I was right and checked my reaction under stress.

Technical + HR Interview

Read more

16.5k views

16.5k views


Interview Details

I was interviewed on Apr, 2017.

Skills Tested

Problem Solving Abilties

Algorithmic Approach To Problem Solving

Data Structures

Interview Process

Technical Interview → Technical Interview → Technical + HR Interview

Technical Interview

Interview Experience

We dicussed what can be the various approaches for string compression and then I was asked to code the encoding and decoding functions for the same.

Technical Interview

Interview Experience

Again, it was a coding round.We discussed the approach, then I wrote the code and further discussions on optimisation.

Technical + HR Interview

Interview Experience

It was a short HR round but it was technical. Projects mentioned in the resume were discussed. Ideas, approach and concepts behind it were asked.

Read more

10k views

10k views


Interview Details

I was interviewed on Aug, 2016.

Interview Process

Test → Technical Interview → Technical Interview → HR Interview → Technical Interview → Technical Interview

Test

Duration

1 Hours 30 Minutes

No. of Questions

60 questions

Test Sections

Quantitative Analysis | Analytical Reasoning | Computer Science

Experience

Computer Science Section has questions based on Networking, Database, Microprocessors, Software Engineering

Technical Interview

Read more

3k views

3k views


Interview Process

Test → Technical Interview

Test

Duration

3 Hours

No. of Questions

3 questions

Test Sections

Coding

Experience

3 coding questions involving trees, stack and queues. Solving 2 was a qualifier for the next round.

Read more

16.1k views

16.1k views


Interview Details

I was interviewed on Aug, 2016.

Interview Process

Test → Technical Interview → Technical Interview → HR Interview → Technical Interview

Test

Duration

1 Hours 30 Minutes

No. of Questions

60 questions

Test Sections

Quantitative Analysis | Analytical Reasoning | Computer Science

Read more

3.1k views

3.1k views


Interview Process

Test → Technical Interview

Test

Duration

1 Hours

Test Sections

Analytical Reasoning | Quantitative Analysis | Computer Science Related

Experience

This was an Online Test. The Computer Science Section had all topics included like networking, database, Software Engineering, Microprocessors.

Read more

3k views

3k views


Skills Tested

Object Oriented Programming (OOP) Basics

Basic C/C++

C Programming

Algorithms And Data Structures

Interview Process

Test → Test → Test → Technical Interview → Technical Interview → Other Interview

Test

Duration

30 Minutes

No. of Questions

15 questions

Experience

The MCQs were based on C.C++,Java and some Operating System questions. Around 200+ from our college sat for this round.

Test

Duration

90 Minutes

No. of Questions

2 questions

Experience

After the first round around 100 (consisting of the internship students as well) students were shortlisted for the second round
Everyone got different sets of questions. The questions I got were :
Given two arrays were digits of one array represent a number,maximize the number by replacing it with elements of second array.
eg:
arr={3,1,4,5,6}
rep={1,9,5,2,3}

after replacement
arr={9,5,4,5,6}
one digit of rep can be used to replace only once.
For this almost everyone who got this question used a brute force method.But I had used a different approach .I constructed a max heap of rep array.And ran a loop checking if the max element of rep was greater than the element in arr and then replaced it in arr and deleted the same from the maxheap.

Given a matrix ,where each cell represents a value of strength.The value could be positive negative or zero. At each cell the strength value is added.You have to reach from point (0,0) to point (m-1,n-1) if at any point the strength becomes zero or negative then you cant proceed further.Find the minimum strength required before starting to reach the end of the matrix.
eg . {{ 1,-3,0},
{-2,1,-1}} Ans: 2 ( (2+1+(-2)+1+(-1)=1 path taken )
I gave a DP solution but was unable to pass a few test cases in this question

Test

Experience

Around 30 students consisting of students from other colleges as well were called On-site. This was a written round.Everyone was given around 45 mins and 1 question.
Given the root to a binary tree, a value n and k.Find the sum of nodes at distance k from node with value n.
This is similar to this question on geeks ->http://www.geeksforgeeks.org/print-nodes-distance-k-given-node-binary-tree/
I was able to do this quite quickly :D I even explained my answer to the HR and he asked me to write different types of test cases to exhaustively check if my code works on all of them.
After this round around 14 people were shortlisted

Technical Interview

Interview Experience

These were fairly easy questions . I knew the solutions and explained it to the interviewer.He asked a few questions on them , seemed satisfied.Asked me if I had any questions for him . So I asked him about the different technologies that a new SDE would work on and things like that. I had a pretty good discussion with him he told me many things from his end too.
I made it to the next round then :D

Technical Interview

Interview Experience

He told me to take my time and give the solution. I gave him a solution of considering the text as a linked list of words . Where each node in the linked list contained the word string and an index .And for every node in the linked list I will have Trie structure. I used trie for efficient search.What I suggested was that I use the trie whenever the user enters a word and insert it into the trie and the leaf of that word will contain the index of that word plus the pointer to that node in the linked list . If suppose the trie already has the word then i increase the word count in the leaf and the leaf will contain a vector that has the list of indexes where the word has occurred and the list of pointers where the word is present in the list.I wrote the code and explained how it can handle all corner cases . We discussed the the solution and he asked me certain questions on different test cases . My approach handled them well. He seemed satisfied . He added to the question that the search query could contain words or phrases . So my use of indexes could handle the phrase search :) . I also suggested that instead of Trie data structure we could use a Ternary Search Tree as that would be more space efficient

Other Interview

Interview Experience

This was a HR+Technical Interview

The interviewer was quite experienced and very pleasant. He asked me how my previous rounds went.He was going through my performance review from the previous rounds. He took a glance though my CV and asked me about the projects I did. He saw that I had interned at IITB so he asked me a lot on that project. He also asked me some basic HR questions like Why should Microsoft hire you ? Where do you see yourself in the next 5 years ?.He was very impressed with my academic record and my AIEEE rank. Asked me how I handled my 12th board exams and entrances.He made it very comfortable and was almost chatting and getting to know about me.
Question 1:
Thankfully I was just going through this question just before this round :D . I suggested the solution using Trie and Min Heap.
Similar to -> http://www.geeksforgeeks.org/find-the-k-most-frequent-words-from-a-file/
Question 2 :
First I gave him the brute force approach . Similar to ->http://www.geeksforgeeks.org/root-to-leaf-path-sum-equal-to-a-given-number/
But I knew it wasnt using the fact that we have a Binary Search tree . So the interviewer gave me some hints - like what is main criteria of a BST . I immediately figured out that the minimum path will always be on the right side of the node because it has the larger value. I told him the solution he seemed satisfied.
He then asked if I has any questions for him . So I asked him about where I can improve myself , he said I didnt need any improvement I am doing very well and that I should jus keep doing what I am doing :D That certainly made my day :) I asked a couple more questions about Microsoft and then left.

Finally after a week the results came I received the mail that I had been shortlisted for a Full Time Position :D

Overall Experience

Be confident in the interview . Have a smiling face and be adaptable to the question . The interviewer can anytime change or twist the question just to confuse you.
The interviewers are very helpful , if you feel stuck communicate with them ..explain your approach they will give you hints.
When the interviewer gives the question listen to it carefully do not immediately rush to writing the code .. ask him about the different criteria and restrictions pertaining to the question.
Lastly , hard work goes a long way ! Never loose hope. I got placed in Oracle Applications and Microsoft after being rejected by almost 6 companies :) And believe me those interviews also taught me a lot .
Learn from your failures and don't lose hope :)

Read more

59.8k views

59.8k views


Interview Details

I was interviewed on Mar, 2017.

Interview Process

Test → Technical Interview

Test

Duration

30 Minutes

No. of Questions

20 questions

Experience

Basically, a logical aptitude test

Technical Interview

Read more

9.9k views

9.9k views


Load more

Help us understand. What's wrong with this review?

Any other reason? Mention here (Optional)

SignUp/Login
1-Step Login | Get unlimited access!

x