My experience:
YOE: 3.5 years at Fortune 100 company
B.S degree in Computer Science from a state university
Leetcode - Problems solved (600+ , 360 - Easy, 250 - Med, 40 - Hard)
Did all the Blind 75, Top 100 Liked Questions, Top Interview Questions. Helped to solve all the Microsoft top questions.
Recruiter found me on Linkedin and I went ahead and did the codility - online assesstment
Passed all 3 tasks on the codility - Leetcode Easy and Medium and a small debug session. Not too hard at all
Rounds listed below in random order
Round A)
Started off with behavorial questions like what were your responsibilities in your last role and small introduction abour ourselves.
Followed by the technical question -
https://leetcode.com/problems/basic-calculator-ii/
I demonstarted my thought process well with a stack and did it in O(n) space and time.
Interviewer wanted the O(n) time and O(1) space - but I couldn't solve it until after I saw the Leetcode solution after the interview.
I couldn't run my code and if you've done this problem before you would know:
I accidently typed 'else if ch in ops or i == len(s) - 1:' < - when it should just be an if - brain fart
I think I failed this because I didn't get the optimization and because of this small mistake above. Can someone confirm?
Round B)
Small introduction about each other and something about my resume.
https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/
Answered it well and didn't need to write the test case, since the interviewer wanted to see if I can code. With extra time, I was asked a medium dp problem. But didn't have time to write it up. But explained my through process and explained the brute force and dp approach and how I would solve it. I was on the right track. The interviewer mentioned they weren't expecting me to solve it, because it took them 2-3 hours to understand lol. I thought we were only asked 1 technical question per round, wasn't expecting 2. Can someone confirm?
Round C)
Asked behavorial questions like tell me about a time? Difficult co-workers? Went over my resume
https://leetcode.com/problems/add-two-numbers/
Solved the problem with O(n) time and O(1) space. Interviewer was happy and with extra time asked about life at Microsoft.
Round D)
Not a leetcode or system design question. I couldn't answer it. Essentially they wanted an O(1) get/insert/delete operation and you're given data inputs that can vary in anything like int, float, doubles, objects, arrays, tuple, any data structure you can think of.
Got a call the next day from my recruiter I was rejected. I found Microsoft interviews pretty chill and I'm happy that they straight up asked questions directly from Leetcode, makes life much easier. I was almost close on getting the job and it gave me more confidence. I'm going to go ahead and apply for other Microsoft positions.
Please provide any valuable feedback or questions.
Good Luck!