Skip to content
Related Articles

Related Articles

Microsoft interview experience | Set 180 (On-Campus)

View Discussion
Improve Article
Save Article
  • Difficulty Level : Hard
  • Last Updated : 01 Oct, 2018
View Discussion
Improve Article
Save Article

Microsoft IDC visited our campus(IIEST Shibpur) on 24th July, 2018 for on campus hiring.

Round 1: Coding Round

1)Find the first non repeating element in the array

2) Find the next highest palindrome

3) Reorder a linked list

Out of 170, 41 were shortlisted for round 2

Round 2: Written Test

It was a pen and paper round. We were asked to write the brute force as well as optimal solutions in paper.

  1. Find if there are two elements in an array that sum upto 6.

2)     Count all the paths from top left to bottom right of a matrix given that you can move only in two directions, right and down.

12 people were selected for the next rounds


Round 3: Technical Round Phase 1

1)Asked some questions from my resume regarding my projects and internships.  And what are my favourite topics in data structures and algorithms.

2)Asked me to explain the two questions that I had solved in the previous round.

3) Which data structures would you use to design a parking lot system? He gave me ten minutes to design it’s blueprint and write the code as well.

I came up with a DS involving hashmap to store <car no, slot no> and priority queue which keeps the list of empty slot nos. Each time a car enters, the top of the priority queue is assigned to the car and the slot no is removed from the PQ. Each time a car leaves the value corresponding to the car no(i.e the slot no) is searched, inserted into the PQ and the map pair is removed.

This followed by a number of questions revolving around that DS like what additional features i would add so that a data structure of this kind  works in India.

4)Testing: I give you a pen. How will you test it? He gave me 5 minutes to write down whatever i would do to test that pen.

5) What is inheritance? Give an application level example of inheritance.

6) Explain stacks, queues and linked lists with application level examples of each.

7) Any questions for me? I asked many. How has been your experience in Microsoft? How many students have you interviewed? Do you like interviewing ? What are the qualities of a desired candidate?

Round 4: Technical Round Phase 2

  1. Given an integer in string format. Convert it to an actual integer, keeping in mind all cases like ‘-’ sign, ‘+’ sign and if the string contains any other char apart from numbers. I was asked to write the code involving all the cases.
  2. Design an online book reading system.
  3. What would be the classes and functions you would use to represent this system?
  4. You want to store a dictionary. What is the data structure that you would use?
  5. My answer was Trie so his next question was to explain what a Trie is, how it works, it’s time and space complexities.
  6. How can you calculate the space used by a Trie?
  7. Difference between inner and outer join
  8. Application level examples of outer join.
  9. Questions on networking regarding the APS model. Routers are in which layer? What does the network layer do? Where are ports? What does transport layer do?
  10. Sql query to find the 4th maximum element from a table.

Round 5: Techno- Management Round

This round consisted of one technical question. Apart from that I was asked a lot of questions related to my resume, my interests, my passion, my family, what i want out of a career, my projects and many other things.

1) How will you find out a no is positive or negative without using >0 or <0?

I told him we can do that using bit manipulation. Find the leftmost bit and check if it’s 1, if yes then it will be negative. Was then asked to write the code in paper.

Overall, this was like a casual conversation.

After ten minutes I was informed that I am hired. I couldn’t believe my ears. Words fall short for what I felt at that moment. Total 5 students were selected from our college( Indian Institute of Engineering Science and Technology, Shibpur)

This article is contributed by Pratima Upadhyay.If you like GeeksforGeeks and would like to contribute, you can also write an article using or mail your article to See your article appearing on the GeeksforGeeks main page and help other Geeks.

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!