Campus: IIT Dhanbad 2019
Round 1: Online coding challenge
There were two sections in this round. Section 1 consisted of two questions and Section 2 consisted of one question.
Section 1: Question 1: Students come in queue to choose a lunch box. every student has their own preference of lunchbox. either rectangle or triangle. and the boxes are arranged in a stack manner. the student can choose lunchbox if it is his/her preference. else, the student moves to the end of the queue. If the same procedure is repeated, estimate how many students will not get their preferred type of lunchbox ?
I do not remember the second question from this section. But it was easy.
Section 2: A student applies to a college for a particular course. A university offers particular courses and limited number of seats. Our goal is to allow students to register for the college for a particular course. Check weather the registrations of the students will be successful or not.
Round 2: Group Fly Round
In this round, we were supposed to write code on a white paper.
The questions were:
1. Write a program to find all possible longest palindromes in a given string.
2. The second question was a puzzle with a twist. (should not use division here)
I wrote an O(n2) logic here, so one the Microsoft guy(present to take Technical interview the next day) asked me if I can improve the logic. I Tried for a while and came up with a different logic. But, it was too taking O(n2). I explained him since division was not allowed, I had to come up with this kind of solutions.
Round 3: Technical Interview
The Interviews started on the next day at 5:30am. 43 students were shortlisted for the interview process.
The interviewer started out with questions about my work experience[I had 2.5 years of prior work experience]. Then moved onto the projects I’ve worked on. Be careful about what you have mentioned in your resume. Leaving the Extra currical part of the resume, I was asked questions on each of the topic I have mentioned in my resume. Even the skill set mentioned like strong, intermediate and beginner. everything was covered in the first 30 minutes.
Now, the actual Technical interview has begun. He asked me what I know about system design. I told him about Instagram system design (learnt it from Gaurav sen video from youtube).
He then asked me how do I come up with a system design if I had to design MS paint. He gave me 5 minutes of time to think and come up with the answer. Since I mentioned C++ and OOPS to be my strong skills, he asked me to incorporate at least 8-12 OOPS concepts and come up with a Skeleton code on how each component works and co ordinates.
I came up with solution using concepts like Late Binding, Early binding, Polymorphism, Virtual, Static functions etc., OOPS concepts and I wrote sample codes in C++. Then he questioned how would you handle if power went off while drawing something ? how would your design handle such cases ? I answered them too.
Later questions were asked on DBMS. practical questions were asked and i was able to answer them except a few. then some questions on JDBC, ODBC, Cloud, OS and questions like why cloud, remote systems are required etc., Some discussion on my previous work experience on topics like ERP, WDF, CRM, Middleware.
Round 4: HR round
This was round was not that serious. The HR was really cool. He asked me about my native and how academics are going on in the college, the project I was working on. He tried to make a conversation with me for a while on random topics. I guess the HR was trying to test the communication skills here.
Later he asked the question I’ve never expected to be asked. Why should we hire you ? Why do you think you are suitable for this job ? Would you be able to adapt to newly trending Technologies etc.,
Since I had work experience and I’ve taken a few interviews myself while I was working, I defended well for these questions. Later he explained me about Microsoft Work culture and the Office environment. This round lasted for about 30 minutes.
Later after one hour, there were few people from Microsoft who came up to me and my Friend and told us we were selected. I was on cloud9.
My suggestions would be : 1. Complete Must Do Coding questions on GeeksForGeeks 2. Be good with OOPS, DBMS and OS. (There is no restriction on programming language being used)
I would like to thank the GeeksForGeeks community with out which, I could not have achieved this. The Must Do coding questions part helped me a lot. I would like to thank the Almighty, my family and Friends. A special acknowledgment to my friend Smriti who pushed me hard towards my success.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course. In case you are prepared, test your skills using TCS, Wipro, Amazon and Microsoft Test Serieses.