MMT MakeMyTrip : Tech Lead

makemytrip logo
makemytrip
Tech LeadBangalore6 yearsOffer
July 17, 202433 reads

Summary

I interviewed for a Tech Lead position at MakeMyTrip in Bangalore, completing online coding, system design, and a comprehensive on-site microservices HLD and coding round. I successfully received an offer for the role.

Full Experience

I began my interview process with an online HackerRank test, which I found to be relatively easy.

The first round was a 1-hour coding assessment. I encountered two questions. The first was an easy implementation problem involving two arrays representing a store's open and close timings. The second was a dynamic programming question that I recognized but hadn't prepared thoroughly. I managed to develop a recursive approach and explained how memoization could optimize it, which the interviewer seemed satisfied with.

The second round, also 1 hour, was focused on system design. My task was to design a railway system, specifically detailing the database schema, SQL queries for routes and booking tickets, and how to handle concurrent bookings. This felt like a medium-difficulty challenge.

The third and final round was an on-site interview, which lasted 2 hours. Although HR initially indicated it would be for Low-Level Design and basic questions, it turned out to be a full-fledged High-Level Design discussion centered on Microservices. This round was quite challenging. We delved into topics such as reducing high latency between two microservices, designing an idempotent ticket booking system, and creating a scalable system to handle very high QPS. Additionally, there was a coding question: I needed to download a website's HTML, count occurrences of a specific string (e.g., 'makemytrip' on https://www.makemytrip.com/), and output the result in a specified format [URL, string, count]. The key requirement was to implement this using multiple threads and ensure proper communication between them.

Overall, all my interviews were conducted by very good and polite interviewers. I was selected for the role.

Interview Questions (6)

Q1
Store Open/Close Timings Implementation
Data Structures & AlgorithmsEasy

Given two arrays representing the open and close timings of a store, implement a solution based on this data.

Q2
Design a Railway Ticketing System
System DesignMedium

Design a railway ticketing system covering aspects like database schema design, SQL queries for figuring out routes/booking tickets, and handling concurrent bookings.

Q3
Reducing Microservice Latency
System Design

Discuss and propose solutions for reducing high latency between two microservices.

Q4
Idempotent Ticket Booking System Design
System Design

Design an idempotent ticket booking system.

Q5
Scalable System for High QPS
System Design

Design a scalable system capable of handling a very high Queries Per Second (QPS).

Q6
Multi-threaded Website HTML String Count
Data Structures & AlgorithmsHard

Implement a program to download a website's HTML (e.g., https://www.makemytrip.com/), count occurrences of a particular string (e.g., 'makemytrip'), and output in the format: [URL, string, count]. The solution must use multiple threads and ensure proper communication between them.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!