Microsoft was the very first company to visit our campus. All students of CS, IT, ETC, Electrical having 70% till 4th sem with no current backlogs were eligible for the profile.
The First Round comprised of 3 Programming Problems (90 minutes) mainly based on Competitive Coding. It was on Mettl Platform.
- A Quadratic Equation was given and we need to return the roots of that equation rounded upto 3 decimal places.
- There were a story revolving around the problem but the soul problem was a string containing only ‘J’ and ‘K’ was given and we need to tell the minimum operations needed to make this string good satisfying few conditions. The operation was to flip ‘J’ to ‘K’ or ‘K’ to ‘J’. Conditions for a string to be good is the number of ‘J’ should be equal to number of ‘K’ and any ‘J’ can come in string only if there is a matching ‘K’ before it. For Eg. “JK” we will convert it to “KJ” and answer will be 0. “KKKJ” we will convert it to “KKJJ” or “KJKJ” and answer will be 1.
- This problem was also revolved around some story but soul idea was there were several intervals given in form l to r. We need to merge the intersecting intervals and tell the number of intervals left after merging. Eg. (1, 5), (9, 15), (2, 6), (7, 8) answer will be 3 as we will have (1, 6), (7, 8), (9, 15).
I solved all 3 problems completely in approx 45 minutes. 130 students were registered for this round and 122 attempted and 70 qualified for next round. The qualified list was quite strange few students who solved 1, 2 problems completely were not qualified and few solving all 3 problems partially qualified for next round.
This was the group fly round and there was problem related to algorithm design to manage a Airport considering all the constraints of the Airport given by them. There were 3 sections of the problem Algorithm, Data Structures Used, Test case scenarios.
I wrote the algorithm revolving around priority queue and different functions determining priority according to different factors.
26 students qualified for next round out of 70.
Next was Technical-I Round.
- First He asked me tell me about yourself. I told him that I love to do CP and I was having good achievements in my CV related to CP. But he haven’t asked anything related to CP.
- He told me to pick any one of your project and explain me. I explained him thoroughly and he asked few doubts and I cleared them and it went good. Then he asked me to pick one more project and explain me. This also went same as earlier. I was having total 5 small projects.
- Then he asked me that do you know OOPs. I said, I will be having this subject in my current semester but I studied by myself. So he asked me to explain inheritance. I explained with example. He told me to write code in any language. He then asked me that can we inherit a protected or private member of a base class as public member in child class. He asked me the meaning of inheriting with different classifiers like public, protected, private and asked about reason behind that. I was not so sound on OOPs so I gave my answers with declaimer that I am not so sound in OPPs.
- Then He asked me a DS Problem based on Tree – https://www.geeksforgeeks.org/diagonal-traversal-of-binary-tree/ I first gave an solution using level order traversal then he tried to find flaw in that solution. He was unable to find any. So he said that OK try to solve this using any other approach. Then I thought about few seconds and given the solution similar to this link.
Next was Technical-II Round.
This time I got a female interviewer and she was more friendly, she was already impressed by my achievements of competitive coding. She said you have so many achievements So, you will have difficult problems. I said I will try my best.
- She asked to find the number of BST possible from a array of a numbers having all even numbers on left sub-tree of root.
- She saw my code for earlier problem using Bitwise Operator for checking Odd so she said you know this also, I said yes so she asked me that swap 2 numbers without using extra space. I answered all possible ways. She also asked me to determine which number is greater among 2 numbers using Bitwise Operators. I was thinking on that problem and I was not able to find any way and she interrupted and said it’s okay I also forgot small things.
- Next she jumped to my very small project of Line Following Bot and we discussed it’s working.
- Next she asked me a problem on BFS https://www.geeksforgeeks.org/minimum-steps-reach-target-knight/ I explained the solution but she asked me is it possible to do it with DFS? and Why BFS? why not DFS? I explained her the approach from both perspective and proved BFS is better.
- She said I think it’s already been 40 minutes, So I should leave you and She asked me to ask questions to her. I asked her that we learn these DS and Algo. How we are going to use these in real life projects. She said now you have raised problems for yourself, I will ask you 2 more questions. The whole conversion was very light and friendly. She asked problems related to developing products.
- She asked me to make a ATM, that was simple implementation taking care of some constraints. Then she asked me to design algorithm for tinyurl conversion from normal URLs and vice-versa . I explained solutions using polynomial hash. PS. she just wanted to hear the solution. I don’t have to code these problems.
- She directed these solutions and said she this is how you use DS Algo in developing products and That’s All.
Total 9 students left for HR after these 2 technical rounds.
We were having this round over video conferencing with HR over Microsoft Connect over laptops.
- He first explained that your technical skills will not be assessed in this round.
- He asked about my summer intern project, its practical applications, extensions possible and difficulties occurred in that project.
- He asked about my life in college, then my short term goals in college.
I had very short HR round about 10 minutes. And finally 7 students including me are selected. The 2 who got eliminated in this round were having some problems regarding project discussion with HR.
I felt confidence and my resume was a great factor which made this interview easier for me. I want to thank GFG for having this community and its Must Do Problems are really a must do. It helped me a lot in preparing for this Interview,
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.