Microsoft

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

Microsoft Software Development Engineer Interview Questions & Reviews

Updated Aug 17, 2014
All Interviews Received Offers

Getting an Interview  

67%
13%
7%

Interview Experience  

55%
31%
12%

Interview Difficulty  

Average Difficulty
508 candidate interviews Back to all interview questions
Relevance Date Difficulty
in
4 people found this helpful

Accepted Offer

Positive Experience

Difficult Interview

Software Development Engineer Interview

Software Development Engineer

I applied through an employee referral and the process took 2+ weeks - interviewed at Microsoft in May 2011.

Interview Details – couple of phone interviews. After I cleared them, they scheduled the main interview. Had five rounds in the main interview. All of them involved algorithms, data structures and coding. I did four of them pretty well and one not so good.

Interview Question – You have an existing set of words. You are then given two words (word1 and word2) as input. Can you provide and algorithm to transform word1 to word2 in several steps such that the intermediate word generated in each step belongs to the existing set of words. At each step, you are allowed to only modifying one character, or add one character or delete one character. If you feel such an algorithm can exist, can you also provide me an algorithm which can transform word1 into word2 in minimum number of steps.   Answer Question


No Offer

Negative Experience

Average Interview

Software Development Engineer Interview

Software Development Engineer

Interviewed at Microsoft

Interview Details – Questions were not asked clearly. He didn't care at all to clarify questions and even sounded rude on that, when I asked for further clarification, he just repeated the question, never tried to even rephrase it!

Interview Question – Memory allocation   View Answer


No Offer

Neutral Experience

Average Interview

Software Development Engineer Interview

Software Development Engineer

I applied through college or university and the process took 6+ months - interviewed at Microsoft.

Interview Details – I got in contact through a fair at college. After I gave them my resume there, they reached out for a phone interview. The phone interview was relatively average. After the phone interview, they sent me an email saying I got past the phone round and they wanted me to go to Redmond, but they had no positions available anymore, so I could try again next year and bypass the phone round.

The next year I went to Redmond and toured campus and interviewed with 4 or 5 people. Each asked different questions. Two of the interviews were technical and the rest were just discussion.

Interview Question – They asked my to create a minesweeper game.   Answer Question


8 people found this helpful

Accepted Offer

Positive Experience

Average Interview

Software Development Engineer Interview

Software Development Engineer
Redmond, WA

I applied online and the process took 3 months - interviewed at Microsoft.

Interview Details – Applied online and after a month or so heard back and was invited to attend a back to back interview on campus, one with a recruiter, one with an engineer. Both were really pleasant, the engineering interview was a simple programming task done on a laptop: write a function which given a string will return if it contains correctly matched open and closed parentheses. Expanded to include other types of brackets and return if all were correctly matched.

I heard back very quickly informing me I had made it through to the final round on site assessment day. Couldn't make the first couple of interview dates offered so was eventually invited to travel to Redmond for an interview day at the main offices. Organizing travel was very easy and everyone involved was incredibly helpful.

On the day, arrived at building 111 for mid morning. Was guided around campus and taken to the commons for a free lunch. We visited the visitors center and the company store and were invited to buy up to $120 of discount merch.

We then returned to 111 for the interviews. We were each allocated a division we'd be interviewing for (this was not shared before the first interview). We were each interviewed by four interviewers who asked a variety of question covering fundamentals of computer science and some advanced material. We had a ten minute gap between each interview in which the examiners compared notes before we were launched into the next one.

Asked technical questions on a number of topics, sorting algorithms and their time and space complexities, binary trees and binary search trees, low level computer scheduling and atomicity of operations, and an abstract data type question. I've provided examples of a small number of questions below.

These were mixed in among other behavioral questions, attitudes, what do you do for fun, what's important when implementing software, how to interact with team members etc.

It was generally very broad with lots of interesting questions; I wouldn't say especially hard but thats all relative... If you know the field and are well prepared you shouldn't find anything too tough...

Don't worry about making mistakes, I know I sure made a couple, the key is checking back over your solutions as you go, work with test cases and when you identify a shortcoming, work out how you can fix it. TALK OUT LOUD! They don't care if you get stuck in a circle as long as they can see your thought process and why it's happening. If you've overlooked something they will happily drop a hint and see if you can rectify.

My biggest tip would be friendly and relaxed, make it more of a conversation than a rigid interview. I almost got the feeling they were more interested in my personality than what I wrote on the board, so make it easy for them to like you: At the end of the day the big question they're asking themselves is, 'would I like to work alongside this person', not just 'can he do the work'.

Overall, my interview was incredibly positive, everyone was super friendly and did their best to make you feel comfortable and relaxed. The company was very generous with arranging travel, accommodation etc and first and foremost Microsoft seemed an incredible place to work. Go for it, give it your best shot, what is there to lose?

Interview Questions

  • Given a binary tree, write a function which will check if it's a binary search tree   View Answer
  • Given a node of a binary search tree, return the node immediately bigger than it. Convert this from recursive to iterative. What's the difference between the two?   View Answer
  • You are working for a new ancestry.com style website, what data structure would you use to hold the relationships? Why? Are there any alternatives? What programming language would you use? Why? Would scale of website and development time impact your choices?   Answer Question

Negotiation Details – Didn't seem any room for negotiation really but the compensation and benefits were already far and above what I had even been expecting having researched Microsoft


Accepted Offer

Positive Experience

Difficult Interview

Software Development Engineer Interview

Software Development Engineer
Cambridge, MA

I applied through college or university and the process took 4+ weeks - interviewed at Microsoft in May 2010.

Interview Details – 1 Phone Interview, I in person interview with 5 interviewers. 1 brain teaser to demonstrate thought process, several coding questions and 1 design question.

Interview Question – A disc is spinning on a spindle - you don't know which way. You are given a set of pins - describe how you would use them to determine which way the disc is spinning.   View Answers (4)


Accepted Offer

Positive Experience

Easy Interview

Software Development Engineer Interview

Software Development Engineer

I applied through college or university and the process took 4+ weeks - interviewed at Microsoft.

Interview Details – On-campus interview first, and then flew to Redmond for an on-site interview

Interview Question – A huge graphics-related recursive question. I had to think about each base case very carefully.   Answer Question

Negotiation Details – For summer intern, it's not negotiable.


No Offer

Neutral Experience

Easy Interview

Software Development Engineer Interview

Software Development Engineer

I applied through college or university and interviewed at Microsoft.

Interview Details – Submitted my resume at on-campus recruit for any projects related to User Experience. Heard back in 2 weeks for a software developer position. Phone interview in the following week.

Interview Question – 1)Design your own alarm clock. 2) If you're manufacturing a keyboard, how would you make it and what would you change? How would you check the final quality of the product? 3) You have three baskets. The first one only has apples, the second only has oranges, and the third one is mixed. To determine which basket has which fruits just by picking up one fruit from only one basket, from which should you pick up the fruit? explain? 4) What is your primary programming? 5) Which one do you prefer, cpp or java? 5) Other basic resume-based questions   Answer Question


No Offer

Positive Experience

Average Interview

Software Development Engineer Interview

Software Development Engineer

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

Interview Details – Applied at campus career fair. Contacted one day later. On-campus interview. Discussed project experience. Asked to solve a simple technical problem.

Interview Question – How to eliminate duplicates in a string.   Answer Question


No Offer

Positive Experience

Average Interview

Software Development Engineer Interview

Software Development Engineer

I applied through college or university and interviewed at Microsoft.

Interview Details – I applied for the internship program through my University recruiting process. The first interview took place on campus. It was about an hour long and pretty straightforward. After about a month I got an email asking me to fly to Redmond for a day of onsite interviews. I gladly flew to Redmond. Treatment and process was really good. Everything went smoothly and they even gave money to spend on food and exploring Seattle. As for the actual interviews there were 4 back to back interviews. The first 3 were more based on coding on a white board and typical behavioral questions. The 4th one was a design based interview. Overall the interviews weren't too hard, but sadly I didn't prepare enough for them.

Interview Question – Implement Dijkstra's algorithm. I knew the algorithm but messed up on coding it.   Answer Question


No Offer

Neutral Experience

Average Interview

Software Development Engineer Interview

Software Development Engineer
University Of, FL

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

Interview Details – It was the second round of on-campus interviews for SDE position. 45 minutes in length. The first one had gone fine. Was asked on BST in the first one.

Interview Question – I was asked to code semaphores and implement locks and race conditions. Shared reader-writer model. There is a shared data structure, and multiple processes access it. If there is a reader, another process can read it, but no process can write to it. If there is a writer, no process can read. A reader count needs to be maintained, and only if all the readers are done reading, can any process write to the shared data structure.   View Answer

See What Microsoft Employees Are Saying

 Current Senior Software Development Engineer In Test (SDET) in Redmond, WA

Pros: “Opportunities to work on almost anything you love. Pay is good, benefits too (though shrinking). Tons of resources to apply to any tough, interesting problem.” 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.