Taro Logo

Software Development Engineer Interview Experience

October 1, 2008
Positive ExperienceGot Offer

Process

It started with a referral from a friend. I was contacted by a recruiter and offered a phone interview, which I accepted. The phone interview took place within a week.

The interviewer seemed technically capable of analyzing my answers. The phone interview questions varied between high-level design questions and low-level technical questions. Overall, she was cordial and happy to answer any questions I had.

I was contacted within a couple of days with an offer for the in-person interview. Apparently, they were trying out a new interview format where they brought in about 30 candidates at a time, all to be interviewed on the same day. The interviews were still one-on-one, but all were conducted simultaneously.

The interviews were conducted at 45-minute intervals, with 15-minute breaks in between. It was a little different, but it allowed us to socialize with each other and relax a bit before our next interview.

After all interviews were finished, we sat through a couple of product presentations, selling us on the products we might be working on. This occurred while the interviewers were making their decisions. We were told that all decisions would be made before we left, which was awesome. After the presentations, I was called out to a separate room along with a small group of other people. We were all given offers; I'm not sure about what happened to the others.

I got to meet the manager of the group I was hired for (who also happened to be one of my interviewers), and we talked about various teams that I could choose to work with. All of the recruiters were very nice and happy to help out. All of the interviewers did their best to sell their teams to me. Overall, it was a great experience.

Questions

Phone interview question: Describe how you would implement the C standard library function atoi.

Phone interview question: In C, why is it considered bad form for a function to return a pointer to a stack-allocated variable? What happens if you do it anyway?

Phone interview question: What happens when the "new" operator in C++ fails?

Count the number of words in a string, where a word is defined to be a contiguous sequence of non-space characters.

Determine whether a given binary tree is fully populated, where "fully populated" means that every internal node has exactly two children, and all terminal nodes are at the same depth.

Was this helpful?

Interview Statistics

The following metrics were computed from 634 interview experiences for the Microsoft Software Development Engineer role in United States.

Success Rate

29%
Pass Rate

Microsoft's interview process for their Software Development Engineer roles in the United States is very selective, failing most engineers who go through it.

Experience Rating

Positive57%
Neutral32%
Negative11%

Candidates reported having very good feelings for Microsoft's Software Development Engineer interview process in United States.

Microsoft Work Experiences