Microsoft Interview Process - Senior Software Engineer
I interviewed for a Microsoft Senior Software Engineer position as part of a hiring drive. It was for the Microsoft CoreAI team so sharing my experience and the overall process.
Elimination Rounds
Round 1: Online Assessment
One LC medium problem using Heaps, and a hard problem using DP (don't remember exact questions).
Round 2: Engineering Manager
Most of the discussion was around past work projects, technologies used, some deep dive into technical decisions. Standard behavioural including reason of switch, why interested in working at Microsoft etc.
After this round, the recruiter reached out and scheduled the full loop. All interviews were scheduled on the same day.
Full loop
Round 1: DSA
Involved 2 medium LC style questions.
Not this exact problem, wording was modified (based on Virtual Machines and OS versions) but the idea was exactly the same as time based key-value store.
Level order traversal problem
Solved both questions.
Round 2: AI Assisted Design
I was unsure what was expected in this round, I expected it to be just AI assisted LLD but turned out to be HLD + AI Assisted LLD round. Expectation was to come up with HLD, and implement one part of it. You can use any AI assistant for HLD and LLD (I was needed to setup on my own system prior to this interview). I already had ChatGPT installed so used it.
Problem statement was to design a gateway for multiple AI agents. Clients can use this gateway to switch between multiple models. This round went really well, I didn't use AI for HLD, but used AI assistant to generate code for one of the functions.
Note: HLD had to be done on a whiteboard and LLD had to be done in a shared code editor, links were provided by the interviewer. None of these had AI assistant natively integrated, I was expected to set it up prior to interview on my laptop & use the same on screen share. I simply used ChatGPT in a separate browser tab. Interviewer was mostly interested in how I am framing my prompts, and using AI to analyze & improve my approaches to sub-problems.
Round 3: LLD
Implement a retry library, add support for multiple strategies. Didn't go well, I felt I was a bit unprepared for LLD.
Result: Didn't make it through. Got the update over mail the very next morning.
No comments yet
Be the first to ask the author a question or share your own take.