Written test 1 (Objective), 30 minutes
First written test was conducted by some third party company. It consisted of 15 objective questions from C, Sorting, Data Structures, Big O, compiler and state machine. We were given 30 minutes. Cut off was 12 out of 15 questions. 77 out of 400 students made it.
Written test 2 (Coding), 60 minutes
Three problems to be solved in 60 minutes with no use of compiler. One problem on Linked List, second on heap and third on array. I coded all problems from scratch including main method. I also wrote flexible methods that could work on any kind of inputs (instead of deleting nodes from 4 to 6, it would delete nodes between ‘M’ and ‘N’ ) and handle all corner cases. The result was announced after 20 days. 30 out of 77 made it.
F2F Interview #1, 60 minutes
We were interviewed in groups of 6. Each one of us in a group was given same problem to solve. I couldn’t code the perfect solution in an hour. All I had discussed 6 different ways to solve the problem. I was afraid that I might be rejected in first round. The interview lasted for 60 minutes.
14 out of 30 were selected.
F2F Interview #2, 60 minutes
This was the easiest round. They asked one problem on Linked List and other on Tree. Both easy. The interviewer kept on twisting the problem and accordingly I had to communicate what changes needed to done in the solution. The interview lasted 60 minutes. 10 out of 14 were selected.
F2F Interview #3, 90 minutes
This was hell of an interview. 4 years it’s been and I still remember every minute details of the talk I had, every single line I spoke and every response I got in return.
The interviewer was from Visual Studio team and was very experienced. The interview started with a design problem. He told that I have already proven to be a great coder (they were passing feedback for each round among each other) and he wanted to check my other skills.
“So, Aashish! I want you to design a program beautifier. You know what it is?”. Well, I heard it the first time. I had no clue. I was blank. He showed me on notepad about what he expected from me. I started creating finite machine. When I was half way, he asked me to stop and code it. We discussed Gap Buffer Data Structure. After coding, followed the design of test suit. I wrote three pages of test cases. That’s where things went unexpected. “You seem to be very good at testing as well”. Then he asked about my choice of role at Microsoft. I always wanted a development position. He said that I can be fit for any role. But it’s the test role I would make best impact at. I was unsure of that. I always loved writing code, developing features and fixing bugs.
“I see a lot of passion for coding in you. But where is the passion for technology? At Microsoft, we need both. Otherwise, the job will become boring.” I went on to talking about various technologies, Linux and Windows environment and why I liked one above the other. We talked about GeeksforGeeks, Ideone and Project Euler. After a pregnant pause, he told me that he saw same passion in me as he witnessed in one of his friends at Microsoft and he was doing great.
The interview lasted 90 minutes. This was the round which was meant to cut down the number of candidates going forward to next rounds.
5 out of 10 made it. We were told to come next day for 2 more round of interviews.
Skype Interview, 75 minutes
I was told to come next day at 12. I was supposed to face two round of interviews. But they directly scheduled an interview with the hiring manager, skipping one round. The hiring manager had 20 years of experience at Microsoft and knew hell lot of things. He asked me to read out my resume and asked few questions about my project. Then I was asked to design a social network. I had read about the graph APIs of Facebook sometime back and had few ideas on how Facebook maintains data structure of each user. We then discussed about big data handling, graph representations and their pros and cons. He asked me to code the tweaked version of degree of connection feature of LinkedIn followed by discussion on time and space complexity followed by designing test cases.
The interview lasted 75 minutes. He asked me if I have any question. “Yeah, plenty”, I said and bombarded him with all.
23 days later, the result was announced. They hired 2 students out of 5. I was one of them!!
This article is contributed by Aashish Barnwal. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.