Microsoft Intern Software Developer interview questions
based on 209 ratings - Updated Jun 20, 2026
Averageinterview difficulty
Very positiveinterview experience
How others got an interview
57%
Applied online
Applied online
27%
Campus Recruiting
Campus Recruiting
10%
Employee Referral
Employee Referral
3%
Recruiter
Recruiter
1%
Other
Other
1%
In Person
In Person
Interview search
209 interviews
Viewing 16 - 20 of 209 Interviews
Microsoft interviews FAQs
Intern Software Developer applicants have rated the interview process at Microsoft with 3 out of 5 (where 5 is the highest level of difficulty) and assessed their interview experience as 100% positive. To compare, the company-average is 67.6% positive. This is according to Glassdoor user ratings.
Common stages of the interview process at Microsoft as a Intern Software Developer according to 1 Glassdoor interviews include:
Presentation: 33%
Phone interview: 33%
One on one interview: 33%
Here are the most commonly searched roles for interview reports -
The technical interview lasted about 50 minute. The first question was find the square root of a number and the second question was check if a binary tree is a BST
Interview questions [1]
Question 1
The first question was find the square root of a number and the second question was check if a binary tree is a BST
I applied online. I interviewed at Microsoft (Redmond, WA)
Interview
I took an online assessment and then completed a two, forty-five minute Super day. During the super day, each meeting was a one on one with a new engineer. Was not asked any behavioral questions.
I applied through college or university. The process took 4 weeks. I interviewed at Microsoft (Israel) in Oct 2025
Interview
First, I got home assignment, which they gave 2 hours to complete (I think). After that, there were 3 Interviews via Microsoft Teams, each of them 75 minutes, all at the same day.
Interview questions [1]
Question 1
I needed to implement the following methods, all in O(1) time complexity:
get(i) - return the value of key i
set(i, v) - set key i to have value v
setAll(v) - set all keys to have value v