Hello All,
I want to bring to the notice of the LC community the absolute unprofessionalism I witnessed during an interview with Microsoft last month, in March 2024. Let me share my experience below:
§. Getting a Call
I am from a Tier-1 college (non-IITs), albeit largely associated with startups/small companies. It took a junior of mine to reach out to every team that was hiring and personally pitch my resume.
Finally, after an ordeal of two weeks, I magically received a call, like a flying spear in the air. Microsoft was keen on interviewing me for a "Principal Machine Learning Engineer" role. This is despite me, carrying 9+ years of experience (YOE), largely applying for Sr. Software roles in Data and Backend. This, too, was communicated to me by an interview coordinator who had nothing else to do with Microsoft.
§. The OA
Randomly, I received an email with a link to the Online Assessment (OA). I had seen a lot of hue and cry about the Microsoft OA, where one of the two questions was almost impossible to invent and crack on one's own within the 90 or 120-minute window.
I understood that I would have to keep two work machines by my side: one to attempt the assignment in, and the other to Google solutions.
Surprisingly, I had to write the answer in a language I had never worked on, only being able to chance upon the solution on the internet, which was so hard to find.
Verdict: Passed the OA.
§. R1 - DS/A
The coordinator set up my first round, stating it would be DS/A (Data Structures/Algorithms) problem-solving.
It all seemed like a piece of cake.
§. R2 - System Design
Q: Design something like Google Drive.
I was mentioning about FR (Functional Requirements), NFR (Non-Functional Requirements), back-of-the-envelope calculations, contracts, etc. But all the interviewer wanted to hear was breaking a big file into chunks and maintaining those chunks in a block server and metadata.
I wanted to elaborate further, but he was already going orgasmic and wanted to conclude on a good note, which he did.
§. R3 - With the HM
The interviewer joined five minutes late and, after a brisk introduction, asked me to design an "AutoML" capability.
All the assumptions and features were mine – an absolute freehand. He actually wanted me to frame a problem statement/use case and then provide an answer.
I'm not sure how that went, but the next hour I received a call for my last round.
§. Final Round (Something they call AA)
The interviewer asked me how my interviews had been so far. I was clueless.
Next, he asked a couple of questions:
As if he wasn't done asking all the vague questions, he next wanted me to design something like Elasticsearch.
I proposed a fine HLD (High-Level Design), seeking inspiration from how ES is actually architected. I brought in WAL (Write-Ahead Log), fail-over, redundancy, and Lucene.
He again had his pet dialogue a few times: "I don't buy this idea to be frank..."
Finally, he ended the interview by giving me a chance to ask questions.
Two weeks later, I again began begging my junior to see if there was any feedback he could chase internally for.
My junior said I had been reaching out over messages on official channels to the HM and the recruiter, but to no avail.
I desperately requested him to mention that if the Principal role was something I was unfit for, could they consider me for L63/L64?
Finally, the recruiter replied that my performance wasn't up to the mark, even for lower levels.
design a document store
design an AutoML capability
how do you serve a model
The following metrics were computed from 1 interview experience for the Microsoft Principal MLE role in India.
Microsoft's interview process for their Principal MLE roles in India is extremely selective, failing the vast majority of engineers.
Candidates reported having very negative feelings for Microsoft's Principal MLE interview process in India.