I applied online. The process took 7 weeks. I interviewed at Microsoft in Apr 2024
Interview
I applied through Microsoft's website. It took 7 weeks before a recruiter reached out to me to schedule the first interview, which was a 1 hour webcam-on, live-coding technical interview.
The interview was 2 generic leetcode-type questions.
I declined to answer the first and attempted the second, but ran out of time. There was a hard stop for the interviewer.
Interviewer was friendly and very smart as you may expect from an engineer at Microsoft.
This interview affirmed that larger tech companies still do not hire for the role they post (this one was looking for someone with game development experience) and that a couple months of practicing/memorizing leetcode questions daily is still the best way to impress and get a job at larger tech companies.
The outdated arguments of using leetcode-based interviews -
"but we want to see how you think" and
"but if you can answer these questions then you can definitely solve the problems you'll encounter at work" - is still a metastasizing cancer to the tech industry.
This is coming from my opinion that the overwhelming majority of engineers don't use leetcode-low-level solutions in any part of their daily work and never will. I think it goes unsaid, but It's unrealistic to expect someone looking for work full time to spew out a solution to some made-up 2D array traversal question and provide optimizations to it in real-time while you're being watched and judged, especially in under an hour.
In every other industry besides software engineering, If I want to hire someone for a job I'd ask them to show why they think they can do the job.
As a crude example, If I wanted to hire someone to build me a bridge, I'd start by asking them to show me past bridges they've built and talk about them.
I'd ask them to show me some systems that made up past bridges and how they work together.
I'd ask them to talk about how they might build the bridge that I'm interested in and why their past experiences lead them to believe they'd be successful in my project.
I wouldn't ask them "how much concrete is necessary to provide stability for my made-up scenario of some monkey bars at a children's jungle gym if the earth was theoretically tilted at an angle of 27.9847 degrees relative to the plane of its orbit
and the input parameters of [max kids on the monkey bars at once = n] where [each kid is an average of K pounds] and the [average force expressed in newtons exerted by each kid is 27 Newtons] were taken into consideration".
Why do we do this for software engineers?
There's no shortage of talented software engineers, like these companies would lead you to believe.
There's a fundamental misunderstanding of how to test for talented software engineers.
Interview questions [1]
Question 1
Something about a 2d array traversal
Some generic leet code question ive already forgotten
I applied online. I interviewed at Microsoft (Lagos)
Interview
There are four interviews in total. You are likely to be interviewed by a prospective teammate, so you need to always put your best foot forward.
Two of the interviews will be coding challenges. Each of the coding interviews is tailored to understand the candidate's problem-solving skills and knowledge of data structures and algorithms. One of the engineers will be a junior engineer, while the other will be a more senior engineer. The candidate is expected to ask clarification questions, explain their solution very clearly, and carry the interviewer along on their thought process by speaking out loud.
The coding challenges are pretty much at the level of LeetCode problems.
The remaining two interviews will be conducted by Principal/Senior Software Engineers. These are basically behavioral interviews to determine if you're a good fit for the role you're applying for.
I applied through an employee referral. I interviewed at Microsoft in Mar 2024
Interview
One technical screening into a final round which consists of four one-hour interviews. The final round set up depends on team and position. I only had one technical coding round and one technical question round.