I recently got interviewed for MakeMyTrip for the Software Engineer full time position. There were in a total of 5 rounds.
First Round (Online Coding + Aptitude):
Firstly don’t expect the online interface to be friendly. There were 3 sections. First section was aptitude which had very very simple questions like addition, subtraction. Second section had a single coding question and the third section had 2 coding questions. All the three coding questions were basic DP and bruteforce. You just had to pass the hidden testcases taking care of the limits.
1. Find the no. of trailing zeros in n factorial.
2. Given an equation
Cukoo(n) = Cukoo(n-2)*2 + Cukoo(n-1) -3 (something like this)
find Cukoo(n) for a given large input.
3. Don’t remember.
Second Round (Technical Interview):
The interviewer went through my resume and asked several questions from it. He took one of my projects and had a long discussion over it. Also he asked me to write a few functions that I had used in it.
Then he asked me several questions:
1. Given 2 trees, find if one tree is a subtree of other. Write complete code explaining your approach.
2. Given two functions of which one function prints the series of odd numbers (like 1 3 5 7 …) and the other prints the series of even numbers (like 2 4 6 8…). How will you use these two functions to print a consecutive number series i.e., 1 2 3 4 5 6…. I used monitors(semaphores) and he was convinced.
Third round (Technical Interview):
The interviewer was very friendly.
He asked several questions:
1. What is diamond problem? How do you deal with it (both in c++ and java)? Then he discussed about multiple inheritance in c+ and java.
2. Questions on polymorphism, virtual class, etc. What is vptr? Again a long discussion over the properties of classes and objects.
3. Implement strcpy and strcmp functions of C with all the corner cases covered.
Fourth round (Technical Interview):
1. What are ACID properties? How are they implemented? How are all the 4 properties taken care of in the real-time applications?
2. What are threads? What is the difference between a thread and a process?
3. Find cycle in a graph. Compare different approaches. He was very particular about the DFS approach.
4. Given a grid representing a maze, find out if there is only a single path to enter the maze and exit. You can view the problem as to check if there are exactly two points on the outer boundary of the grid and there is exactly one path connecting these two points.
Fifth round (HR):
General questions starting with the traditional “tell me about yourself”.
Thanks to geeksforgeeks for helping me in my journey.
If you like GeeksforGeeks and would like to contribute, you can also write an article and mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Related Practice Problems
- Microsoft Interview Experience (Full Time 2018 Washington DC - with 2.5 years of experience)
- Gwynnie Bee Interview Experience (Full Time)
- Microsoft IDC Interview Experience (For Full Time)
- DE Shaw Interview Experience | Set 23 (Full Time)
- HP R&D Interview Experience (On-Campus, full time)
- Oyo Rooms Interview Experience | SDE-Full Time
- GwynnieBee Interview Experience (Full Time)
- Amazon Interview Experience | Set 387 (On -Campus for Full Time)
- Amazon Interview Experience | Set 377 (On-campus for Full time)
- Intel Interview Experience | Set 2 (On-Campus for Full Time)
- Oracle Interview Experience | Set 26 (On-Campus for ST Full Time)
- Amazon Interview Experience | Set 403 (On Campus for Full Time)
- Amazon Interview Experience | Set 388 (On -Campus for Full Time)
- Intel Interview Experience | Set 4 (On-Campus for Full Time)
- Amazon Interview Experience | Set 389 (On -Campus for Full Time)