There were two stages rounds 1 and 2. The first round is conducted on the university campus, where they get to know you and assess your skills. I applied after a coding competition held on campus. This interview involved one technical question and some questions about my history. The interviewer simply wanted me to gush about who I am and what I'm proud of.

Round 2 was a very different experience. This round they bring you to the Redmond campus for a set of interviews, I was flown out from Ottawa. There will be 3-5 interviews, depending on constraints. The interviewers all ask at least 1 technical question, and generally these questions cover your entire skillset. It's difficult if you're nervous, but if you go in with a good mood and no expectations you can get through fine.

Design a function that takes in 2 strings representing numbers and adds them together as if they are numbers, and outputs the result as a string. You cannot assume the number is any containable size (i.e. the value represented could be larger than long long long long etc.).
Reverse a linked list
Encode/decode two strings into one string, and back to two
Design a notification system to be used by clients to deliver content to customers.