Status: New Grad (MSc)
Experience: 0 FTE YOE
8 months SDE internship at MSFT
Location: Europe, Remote
Recruiter Call (15 min):
- Standard Questions / Motivation
Technical phone screen with 2 engineers (1.5 hours):
- Talk 15-20 minutes about a project
- Trivia questions:
- What happens if you type a URL in your browser
- Complexity and use cases of a tree and hashmap
- If a request is slow, how would you investigate the root cause?
- Coding:
- Is Palindrome
- 2 largest elements
- K largest elements
Recruiter prep call for Digital Onsite
Onsite (4 rounds)
I think I got exactly the same questions as described in this thread, so I'll just add some other details that I remember.
-
System Design
- Design a server that uploads images corresponding to a playlist. You need to use a Mural board on which the requirements (around 10(!)) are already stated along with a playlist server that you need to incorporate in your design.
-
Coding
- Code some functions related to playlist, e.g. to sort playlists and retrieve most played songs. Use a heap.
-
Case Study (debugging)
- Problem in a server. First ask for telemetry data about CPU/Memory usage etc. or list which programs consume a lot of CPU (e.g. the output of 'top'). Then observe that the malfunction is either in EU or US servers. Then ask for more data about CPU/IOPS/Requests/Memory. In my case, the HTTP requests suddently increased causing a high CPU usage. Then reason: where do these requests come from? Answer: from the servers that are forwarding requests to the broken server, which is the only option. Look at the source code in these forwarding servers. There you will find that the servers are being ping'ed infinitely since the program is stuck in a infinite while-loop due to an error.
-
Behavioral
- Basic Behavioral questions. Tell me about a time when you had to figure out a solution on your own, what are you most proud of, did you ever had an argument with a colleague and how did you deal with it etc.
Result:
The interviews were quite embarrasing for me at the time since I was not really familiar with coding interviews as I transferred internally from non-engineering to engineering in my previous intership, but I learned a lot :) So no surprise when I was rejected the day after. Recruiter was super nice and gave feedback that I did not do well enough on the coding and the debugging rounds. Overall the people from Spotify that I met during interviews were very nice!
Good luck!