Microsoft

  www.microsoft.com
Work in HR? Unlock Free Profile

Microsoft Software Engineer Interview Questions & Reviews

Updated Jul 26, 2014
All Interviews Received Offers

Getting an Interview  

35%
16%
12%

Interview Experience  

60%
28%
10%

Interview Difficulty  

Average Difficulty
1,449 candidate interviews Back to all interview questions
Relevance Date Difficulty
in

No Offer

Positive Experience

Difficult Interview

Software Development Engineer (SDE) Interview

Software Development Engineer (SDE)
Redmond, WA

I applied through college or university and the process took 2 weeks - interviewed at Microsoft in May 2014.

Interview Details – Contacted by recruiter through school. Had a simple HR screening interview before onsite. Onsite had 4 interviews, questions were mostly algorithmic.
Interview questions:
1. Given an unsorted array of numbers from 1-n with a number missing, find the missing number.
2. Given a dictionary and a function that returns if a work is in the dictionary, create a function that takes a non-space delimited string and outputs the same string with words separated by spaces.
3. I forget the 3rd one.
4. Given a matrix of 1s and 0s, replace every value in a column or row with 0 if 0 is in it.

Interview Question – Given a dictionary and a function that returns if a work is in the dictionary, create a function that takes a non-space delimited string and outputs the same string with words separated by spaces.   View Answer


No Offer

Neutral Experience

Difficult Interview

Software Development Engineer Interview

Software Development Engineer
Madison, WI

I applied online and the process took 3 weeks - interviewed at Microsoft in May 2014.

Interview Details – 1. Given two tree. To judge one tree is another tree's subtree.
2. Given a maze (2D matrix have some block at some position), start position and end position. To find a path.
3. Given a binary tree. Find the length of the path with maximum path sum, the path may start and end at any node.

Interview Question – Too nervous to get a solution quickly and bug free.   View Answer


No Offer

Positive Experience

Difficult Interview

Software Development Engineer In Test (SDET) Interview

Software Development Engineer In Test (SDET)

I applied through college or university and interviewed at Microsoft.

Interview Details – Interview on college campus through University Recruiting. First interview was nice and consisted of single technical coding question. Second round interviews in Redmond were more difficult and focused on data structures. Hard bu fair questions.

Interview Questions

  • First round interview asked to write program that took a file of text, and then counted and stored all words from file.   View Answer
  • Given a array of integers, write code to find the max possible sum of sub-arrays. Use arithmetic progression.   View Answer
  • Given any two nodes in a binary tree, develop program that determined their highest common ancestor.   View Answer


No Offer

Neutral Experience

Average Interview

Software Development Engineer I Interview

Software Development Engineer I

I applied through college or university and the process took a day - interviewed at Microsoft in March 2013.

Interview Details – This was through a college recruitment. Phone interview to assess for a technical internship. Mostly behavioral type of questions. Asked some questions about my preferences in language; details about projects, what they did, any team mates that I worked with. I had to . Then a small brain teaser about dividing up some sticks.

Interview Question – Silly brainteasers that depend mostly on how well the interviewer can communicate with you. My question was paying workers with gold bar segments and you can only cut it 2 times.   Answer Question


No Offer

Positive Experience

Average Interview

Software Development Engineer II Interview

Software Development Engineer II
Research Triangle Park, NC

I applied through a recruiter and the process took 2 weeks - interviewed at Microsoft in June 2014.

Interview Details – The interview process first started with a recruiter who asked several questions about my current employment and what I was looking for in a job. She also gave me a high level description of the job.

Second, she arranged for a developer to call me to have a discussion which lasted in hour. During the conversation, the developer asked about my technical background and gave me 2 computer programs to write over the phone.

Next I heard from Microsoft that the phone interview went well, so they wanted to see me in person. A scheduler contacted me by email to setup the face to face interviews. The interview went from 12PM to 4PM.

I arrived at the reception and the first developer quickly took me to his office where he questioned me for 1 hour and asked me to solve a computer program on the board. I interviewed with two other developers in the same manner. I was supposed to interview with a manager, but he was on vacation

Interview Question – Describe the most challenging problem you've had and how you solved it?   View Answer


1 person found this helpful

Accepted Offer

Positive Experience

Average Interview

Software Development Engineer In Test (SDET) Interview

Software Development Engineer In Test (SDET)
Redmond, WA

I applied through an employee referral and the process took 2 weeks - interviewed at Microsoft in April 2010.

Interview Details – Initial Call:
I was referred to a (techincal) manager internally who contacted me directly. After a a casual chat he sussed out that I would need to brush up on data structure / algorithms and would call me back in 2 weeks. I picked up my algo/datastructures textbook and read through it and worked through writing simple algorithms on paper during my commute.

Official Screener:
During my official technical screening (figuring out whether they'll fly you out to redmond or not) they asked me the standard linked list question - detect if there's a loop, etc. and then asked me to create a system to organize a bunch of objects with different classifications. I ended up coming up with a dewey decimal system. I was also asked finding the common ancestor in a binary trees.

On Campus:
I got setup with somebody from HR as my first interview. I was told I could ask her anything to help me through my interview process. I asked her some random questions like " should i not mention that my last project was using google apis". To which she replied that Microsoft respects any good technology so just because they're competing, don't be afraid to talk about it.

Tech Interviews:
1. Write a function to list all prime numbers up to a maximum. Finished it in 15 minutes and then was asked to write test cases for it. I filled up one whiteboard.
2. Non-coding - was asked to test a webpage with a single inputbox and a button.
3. Remove a character from a string. Test it.
4. Walk a binary tree, breadth first. Test it. (I ran out of time with this one)
5. My as-appropriate asked me a technical question because i didn't do so well on my last question. He asked to merge two link lists. I answered it with no troubles.

My As-appropriate walked me out and waited for a shuttle with me while telling me all the seattle spots to hit up.

HR got back to me a few days later, gave me an offer and laid out the benefits of the job.

Advice:
The interviewers are interested in solving the problem, but they're very interested in "how" you solve the problem. Talk out loud. Make sure you understand the question. Walk through an example first. Write out psuedo code, then code it for real. Organize your test cases in categories.

Interview Question – Walking the binary tree. I wasn't expecting this question and should have brushed up on my trees a bit more.   Answer Question

Negotiation Details – no negotiation.


Accepted Offer

Neutral Experience

Software Development Engineer In Test (SDET) Interview

Software Development Engineer In Test (SDET)

I applied through college or university and interviewed at Microsoft.

Interview Details – good hiring process ,very planned and hospitable.
well organized and paid for all the expenses ,communication was good and prompt and no hassle.
one phone ,one on campus and 6 onsite interviews.

Interview Question – Technical coding question   Answer Question


Accepted Offer

Positive Experience

Average Interview

Software Engineer Interview

Software Engineer
Seattle, WA

I applied online and the process took 2+ weeks - interviewed at Microsoft in November 2011.

Interview Details – There is phone interview first. It helps people in each side to know other better. Candidate also gets chance to ask about details about the work.

Then there is onsite interview with 3-4 rounds. Candidates are asked about algorithm, coding, design questions. Algorithms are not so hard, but need some thinking to come out good solution. Candidates are asked about understanding about programming language and database.

If everything goes good, candidates will see the hire manage at last. Then wait for 1 - 2 weeks for the offer.

Interview Question – Challenging algorithm question.   Answer Question


No Offer

Positive Experience

Difficult Interview

Software Development Engineer Interview

Software Development Engineer
Arlington, TX

I applied through college or university and the process took 1 week - interviewed at Microsoft in October 2013.

Interview Details – I was initially screened at my college career fair. My work in Computer Vision piqued the interest of an employee at the MS booth (they were all former students from my Uni). I was then set up for an on-campus screen.

On-campus screen: The interviewer introduced himself and eventually jumped into a coding question. I did badly and I was rejected as I very well expected

Interview Question – Make an exact copy of a linked list which has an additional 'random' node apart from usual the next node.   Answer Question


1 person found this helpful

Accepted Offer

Positive Experience

Difficult Interview

Software Development Engineer Interview

Software Development Engineer
Seattle, WA

I applied through other source and the process took 3 weeks - interviewed at Microsoft.

Interview Details – I attended a conference and noted down the presenter's email id as I was really impressed with the work they were doing. When looking for full time, I contacted the person for any openings in their team. Fortunately, I heard back from them and got a phone screen schedule within one week.

Phone Screen was easy and mainly focused on the projects i wrote in my resume and some algorithmic problems related with those projects.

Within one week, I heard back from them that I was through first round and need to come to Seattle for face to face interview. They were really helpful in scheduling the interview according to my convenience.

Microsoft takes care of their their employees and potential employees as well in my case. Wonderful and systematic scheduling. I landed in Seattle.

Whole day was set aside for interviews, I had 5 in total including the famous 5th interview which is a positive sign as mentioned by many here. First interview, little variation on the level order traversal which i was able to code it with some help from the recruiter who was really nice. You will have to write the code on board so I would suggest do some "Actual" coding preferably on some IDE which shows only syntactical errors and runs the program. Eclipse is sometimes too helpful which let's us forget minor mistakes.

Second round was a real life project problem related with quick ip lookup, for which I have default solution, Tries. I told each and every pros and cons of using tries and the interviewer was satisfied. I stumbled a little while implementing it but eventually was able to do that with of course the help of interviewer.

Oh yeah one more thing each interview is approximately 45 mins to 60 mins long and lunch time discussion is also part of the recruiting process. So don't lose your head thinking that it's not part of the process.

3rd interview which included the lunch discussion as i mentioned above. I was not aware of it but since interviewer only discussed my projects on resume, i was happy to talk about them. But was really thinking why the lunch is so much work. Later i realised when interviewer said, let's go back to the office and continue the discussion. This was the toughest round as interviewer went in to very specific details about my projects so one tip do remember some of the tools names, just to name drop them ;)

4th round was a short one as the 3rd one went for one and half hours. This one was comparatively lighter and mainly focused on design problems.

Then came, the nerve wrecking wait as they told me to wait so that they all can discuss how i performed and decide on the last interview with the 2nd line manager. Thankfully manager came soon and ask me to wait for 2nd line manager. That discussion was very informal sort as he was selling me Microsoft and why I should come and work there. Happy sign always ! :)

Then I came back to my awesome hotel as I had my flight back same day in the evening.

Almost next day itself the HR contacted me and I missed her call. I really thought I did'nt get through but thankfully Hr called me back next day and told me I am through !!

Only advice I can give you is "CODE" ! there is no way around it! If you want to work as SDE you need to know Algorithms and Data Structures ! Language is no issue but you must know how to implement it. At least able to discuss why to us and why not to use a particular data structure.

Interview Question – Very Detailed discussion on most interesting project in your career   Answer Question

Negotiation Details – It's Microsoft, they take care of it very well. Didnt negotiate as the offer was above market trend.

See What Microsoft Employees Are Saying

 Former Product Manager in Bellevue, WA

Pros: “Lots of areas to dabble in, good campus, annual company meetings are lots of fun.” Full Review

Worked for Microsoft? Contribute to the Community!

The difficulty rating is the average interview difficulty rating across all interview candidates.

The interview experience is the percentage of all interview candidates that said their interview experience was positive, neutral, or negative.

Your response will be removed from the review – this cannot be undone.