Rachit Talks

Thursday 16 April 2020

Interview Experience : Microsoft!

Read time < 5 min



Some people think that if they are new to programming when they join their college, they can't do much in their upcoming years, let me tell you one thing, I had no previous programming experience before joining my college ( not even HTML ). By this date, I am in my sixth semester and I got internship at Microsoft, this should be sufficient to motivate you :).
I would like to share my interview experience with Microsoft for 'Software Development Intern' role, obviously it's a dream internship for many of us, right! I will try to share my experience in as much detail as possible, so if it gets a bit verbose, don't skip it as it's worth reading :).
I applied for the internship role off-campus through 'Microsoft Careers' website. Its good if you can get referral from a Microsoft employee or you would need a descent resume to fight for you ! If your resume gets shortlisted, welcome to the next rounds :).

There were a total of five rounds :
1) Online coding round on Mercer Mettl | Best Online Assessments Software for Better Talent Measurement, Examinations, Certifications, Recruitment & Training.
2) Online technical interview round through 'Microsoft Teams' app.
3) Three on-site technical interview rounds at Bengaluru.


1) Online coding round on Mercer Mettl | Best Online Assessments Software for Better Talent Measurement, Examinations, Certifications, Recruitment & Training.
I got email about 10 days prior to the date of this round. This round involved solving 3 coding questions. None of those questions were above medium difficulty level. If you solve questions on gfg or codechef or somewhere else then you will be able to clear this round easily. There were different sets of questions, with 3 questions in each set, I would like to mention a few questions-


Some questions just involved implementation of right mathematical approach like for prime numbers, gcd of two numbers, etc.
As you will go through these questions, you will find they aren't too difficult to solve. Clear understanding of questions, presence of mind and practice is key to these questions. I solved all the three questions of my set and was selected for the next round. A few students who even solved all three weren't selected for next round, I think if you aren't lucky enough, your resume needs to fight here too.

2) Online technical interview round through 'Microsoft Teams' app.
For this round also I was informed approximately 10 days prior to the date of interview.This round was of around 45 mins. I would like to share a few questions which I remember -

  • Which is your favourite datastructure?
  • Why is it favourite?
  • Give some merits and demerits of that datastructure.
  • Give real life situations where you can use it and where you can't use it.
  • Complexity of insertion and deletion in that datastructure.
  • Difference between stack and queue.
  • How will you implement a stack with an array?
  • How will you implement two fixed sized stacks with a single array?
  • How will you implement two variable sized stacks with a single array?
  • How will you implement n fixed sized stacks with a single array?
  • How will you implement n variable sized stacks with a single array?
  • You are given an array of names, say arr, you need to implement a class where you will have to store these names, you need to create a method in that class itself which will take a string as an argument and will return an array of all names starting with that string ( I was asked to code my approach by considering arr to be sorted first and then unsorted ).
  • Complexity of codes that I wrote for given problem.
  • Best complexity possible for the given problem.
A few more questions were asked, but mostly all were related to datastructures and algorithms. In my opinion, this round was mostly concerned with theoritical understanding of data structures, algorithms and how you approach a given coding challenge.

3) Three on-site technical interview rounds at Bengaluru. For this round also, I was informed 7-8 days prior to the date of interview. I was interviewed at Bengaluru. Firstly they gave introduction about Microsoft, its goals and all, work culture over there, after that they asked us to have breakfast. During the breakfast itself, we ( the candidates ) talked to eachother and became quite familiar with eachother because it's not just about cracking the interview, you learn alot from people you meet, some of us even made a whatsapp group after coming back from Bengaluru. Now coming to the rounds -

a) Third round


In my opinion this was an easy round, interviewer also asked complexities of my solutions. I was able to answer all the questions of this round.

b) Fourth round


In my opinion second coding question was a bit tricky, rest all was not much tricky, just proper understanding of basics of networking and DBMS was required. I answered all the questions in this round as well.

c) Fifth round

  • What is your dream project on which you wanna work upon ?
  • Code - Find whether a given binary tree is balanced or not ( definition for balancing was a bit changed, a tree is balanced if the difference between the depth of any two leaf nodes of the tree is not more than one ).
  • What is deadlock, how to prevent it?
  • Pseudo code to prevent deadlock.
  • What is the biggest trouble you faced while doing the projects mentioned in the resume?

In my opinion, this was also not a difficult round, just clear understanding of O.S. and presence of mind was required. I answered all the questions of this round as well.

That's all, the whole interview process was amazing and interviewers were amazing too. 4 days past the interview date, I received a mail from Microsoft that I have been selected for the internship, it felt really awesome. I hope this post will guide you and please remember, its not just about cracking the interview, it's more about learning how to learn.

16 comments:

  1. Amazing article ....I got lot of knowledge about interview ..after learning your blog...

    ReplyDelete
  2. Thanks for your appreciation!

    ReplyDelete
  3. Really a motivating article.

    ReplyDelete
  4. What was the timeline of the whole process?

    ReplyDelete
    Replies
    1. Whole selection process takes approx. 3-4 months.

      Delete
  5. Clearly explained whole process concisely.

    ReplyDelete
  6. Amazing and everything is explained very clear.

    ReplyDelete
  7. Very informative and to the point article. Thanks for sharing.

    ReplyDelete
  8. Very informative article. Loved it 💖

    ReplyDelete
  9. Really helpful and motivating for me as not being from developed environment which I came from😊😊

    ReplyDelete
  10. A very helpful blog for the newly coming engineers. Thanks a lot sir.

    ReplyDelete