The JD said the role is in Windows + Devices, with two teams, WSSI and AI Trust. The interviewer said the role mainly works on privacy and compatibility.
There were 5 interviews in total:
The first one was a CV + technical questions round, but I think they only asked about my resume and BQ.
Then four rounds, all scheduled on the same day.
Round 1: BQ + Coding
- Why Microsoft and why this role
- The team is spread across different regions, how do you collaborate?
- If someone on the team is working from home, how do you collaborate?
- If you find out a task can't be delivered before the deadline, what do you do?
The coding was a pixel conversion problem, basically the same as the one in round 4, and either DFS or BFS works. I started with DFS, and they asked what the problem with this approach is and how to fix it. I said that with a large amount of data it will blow the stack, and that you can use a queue instead. Since there was still some time left, I wrote it again with BFS.
Round 2: BQ + System Design
- Why this role
- What do you think you can bring to this role?
- When you realize you can't deliver by the deadline, what do you do?
- Near the delivery date, adding more people is one possible solution. What's wrong with that approach?
Design a system that allows users to monitor a collection of lab machines that run compute loads. Machines periodically ask for work. A work item identifies a compute payload that must be downloaded, verified, started, and monitored.
The central dashboard must show whether the payload is downloading, running, completed, crashed, or appears hung. For crashed and hangs, operators need useful logs. An authorized operator may also request a reboot or power cycle of the machine. An interrupted payload starts again from the beginning after the machine recovers. Payload results must be available from portal.
The user is able to see the OS, CPU and state of the machine. it updates every 2 minutes. A user can also force a refresh if they choose.
No production code or cloud-specific service names are required. Please draw the main components during the discussion.
Round 3: pure BQ
- Tell me about something that shows your collaboration
- You've worked at three companies in your career so far, what made you decide to change companies?
- Pick three reasons or traits that make you the best match for this role
- Tell me about a time you received negative feedback, and what you learned
- Suppose 8 candidates are applying for the same role, what aspects would you evaluate them on? Rank them by importance
- Talk about your views on AI and on using AI at work
Round 4: resume + coding
They asked about one project on my resume, and which parts of it I did myself.
Coding:
Find Connected Foreground Regions
Region Sizes in a Binary Image
An image is represented by a rectangular binary matrix:
1 represents a foreground pixel
0 represents a background pixel
Two foreground pixels belong to the same region when they are adjacent horizontally or vertically. Diagonal pixels are not considered adjacent.
Write a function that returns the size of every connected foreground region. The size of a region is the number of foreground pixels it contains.
Return region sizes in the order the regions are first encountered while scanning the image from top to bottom and left to right.
Function Description
Complete the GetRegionSizes() functions:
int[] GetRegionSizes(int[][] image)
Four days later, I saw the status change to "not selected".
Discussion
Loading comments…