Microsoft started with 11 employees and ever since it has been growing by leaps and bounds. They are still considered to be one of the top MNCs to work at, and some of the reasons for it is:
- Career progression– Microsoft prefers pushing its employees over hiring newer talent.
- Diversity– This is with regards to the kind of profile you could get. With their reach in hardware, software, phones, video games, social networking, and so on, there are several opportunities for you to grow and learn.
- Employee Care– Microsoft takes care of its employees really well and provides them with great compensation and benefits. Living paycheck to paycheck? Change that by joining Microsoft.
- Leadership– After taking the position of CEO, Satya Nadella has changed the environment in Microsoft to innovation and togetherness.
But getting into this tech giant is not going to be easy. Having been in the business for so long, Microsoft knows what to look for in a candidate.
So how do you prepare to make sure you’re the right fit?
What sort of questions should you expect?
Technical questions: Since the interviews are going to be mostly technical in nature, expect a lot of technical questions.
Situation based questions: Questions which ask your opinions like “What would you do” or even questions on your past experience like “What have you done”. Be creative!
Process thinking questions: In these type of questions, they’re trying to gauge your thinking and analytical skills. So verbalize your thinking process.
Project questions: This, as the name suggests, are questions on your projects and internships or experience.
What skills should you focus on?
These are the skills that a tech candidate should possess:
What topics should you focus on?
The Microsoft Careers page has mentioned that the technical interviews would focus on:
- Object-Oriented Language.
- Data structures and characteristics of data structures. For instance, when to use them, their time and space complexity, trade-offs, and more.
- Review basic concepts from computer architecture (caches, branch mis-prediction, pipelines, etc.) and operating systems courses.
- Lists, loops, arrays, and pointers.
With the majority of its roles open in the Software department and Consulting, Microsoft gives importance to those candidates who are familiar with blockchain and customer understanding.
We spoke to Prem Parekh, Software Development Engineer at Microsoft, who helped us understand the recruitment process and gave us an insight into the questions most commonly asked.
The Microsoft recruitment process is pretty standard. It hires through two portals:
- On-campus placement drives
- Off-campus recruitment
In case of off-campus recruitment, the two channels they invite applications from are, their own website and LinkedIn where they post job openings, and referrals or recommendations.
There are five rounds in the Microsoft On-campus placement:
- Online Coding
- Written round
- 3 Technical rounds
The requirements necessary to appear for the placements are:
- Minimum 60% in Class X, XII and Graduation
- No more than two years of academic gap
- No backlogs at the time of applying
The placement procedure begins with an online coding assessment which consists of two questions, and you’ll be given 60 minutes to answer them.
Some of the commonly asked questions are:
- Given a rotated sorted integer array, find the position of a given key within it. Return -1 if key not found.
- Given a binary search tree and a node, find the inorder successor of the node in the tree.
Next up will be the written round. Here you will have to answer one question in an allotted time of 60 minutes.
The question most commonly asked is:
- Write the algorithm and the code to generate the power set of a given set (either of iterative or recursive version would do)
After this, candidates will have to go through 3 rounds of technical interviews.
There is no separate HR interview. The interviewers usually ask these questions during the technical interviews itself.
These are some of the questions that are commonly asked during the technical interviews-
- Given a sorted integer array, create a height-balanced binary search tree.
- Given a linked list and two integers, m and n, modify the linked list such that you retain first m nodes, then delete n nodes, then retain m nodes and so on.
- Differentiate between a process and a thread.
Off-campus recruitment refers to applying to Microsoft either through their job postings on their website or LinkedIn, or through a referral.
The recruiters screen the applications and résumés. If you’ve been shortlisted, you’ll be asked to attend the technical interviews, or it’ll happen over a phone call if you aren’t in the same city.
The questions asked in these interviews are along the same lines as those asked in the on-campus recruitment.
Questions frequently asked are:
- Design Problem: Design a class for storing events of a calendar, which can repeat every specified number of days (say every week every ten days, etc). Write a method to return all the Events between a start and an end date.
- Given a Binary Tree, find the node such that its sub-tree is the largest sized (in terms of the number of nodes) binary search tree.
- Again, there is no separate HR interview.
If you found this article useful, please do recommend and help others break into Microsoft.
Tag your friends in the comments below and help them ace the Microsoft interviews.