This interview process was for an SDE position at Redmond, though the initial application was made in Mexico.
I attended a college recruiting event where a technical screening problem was presented. Once I finished, I was asked to explain my solution and any test cases I would apply. Following this, I was scheduled for an on-campus interview.
The interview focused on my personal and school projects, and any prior experience demonstrating a passion for technology. Two technical questions were asked: receiving two strings and printing unique characters in order, and implementing atoi.
At the end, the interviewer advised me to wait up to three weeks for a response.
I was contacted about a week later to set up details for an interview in Mexico City. I was informed I would be interviewing with three to four people. The interview took place about a month later.
Microsoft covered my travel expenses to Mexico City. There, I had three interviews, each with a different team. I was told I would not be interviewing for a specific team or position, but that interviews with different teams would provide them with valuable insight. Each interview lasted approximately 45-50 minutes.
The first interviewer spent a few minutes asking about my previous projects. He mentioned he was on the Embedded Windows team. He then asked two technical questions (telephone keypad and the angle between the minute and hour hands on a clock) and a brain teaser. He seemed more interested in my thinking process than the actual solution.
The second interviewer focused primarily on behavioral questions and past experience. He stated he was in the Operating Systems group, specializing in security. He appeared to follow a rigid interview script, not allowing discussion on other topics.
The questions were as follows:
He then asked two technical questions: displaying odd numbers from 1 to N, and a function to swap variables.
This interviewer did not allow questions during the technical problem-solving phase. He seemed uninterested in my thought process while solving the problem and preferred his own solutions.
A string is received, which contains from 0 to N numbers. Print all possible combinations of valid words, mapping each number in the string to a character on the telephone keypad.
Assume no 0s or 1s are provided, as they do not have corresponding characters. A function bool isValid(string) is provided, so you may know whether a word is considered valid.
Write a function which receives an hour and minute from an analog clock and calculates the inner angle between them.
Write a for loop which prints the odd numbers from 0 to N.
Write a function that receives two pointers and swaps the values between them.
Implement a function that returns (or prints) a Fibonacci sequence. The function will receive two integers: an index (idx) and the number of results (N). The function should return the Fibonacci sequence starting from idx and up to N results.
Example: The Fibonacci sequence is as follows: 0, 1, 1, 2, 3, 5, 8, 13, ... The sequence is supposed to be viewed as an array, so if index 6 was provided, calculations should start from the number 8. Suppose index 3 is provided and 3 results must be returned. The result should be: 2, 3, 5.
The following metrics were computed from 5 interview experiences for the Microsoft Software Development Engineer role in Ciudad de Mexico, Mexico.
Microsoft's interview process for their Software Development Engineer roles in Ciudad de Mexico, Mexico is fairly selective, failing a large portion of engineers who go through it.
Candidates reported having very good feelings for Microsoft's Software Development Engineer interview process in Ciudad de Mexico, Mexico.