83 questions · from 21 interviews · 1 asked more than once
MakeMyTrip interview questions
Every question candidates reported from their MakeMyTrip interviews, most frequently asked first. Each links to the write-up it came from, so you can see the round and how it went.
MakeMyTrip coding and DSA questions
- 01
Combination Sum
Question similar to LeetCode's Combination Sum problem.
Asked 2 times · From Make my trip(MMT) Interview experience for SSE
- 02
Minimum Platforms Required
Given the arrival and departure times of trains, determine the minimum number of platforms required so that no train has to wait.
- 03
Intersection of Two Linked Lists
Given the heads of two singly linked-lists headA and headB, return the node at which the two lists intersect. If the two linked lists have no intersection at all, return null.
Easy · From Interview SDE 2 Backend Round 1 Make My Trip Gurugram
- 04
Course Schedule II
There are a total of numCourses courses you have to take, labeled from 0 to numCourses - 1. You are given an array prerequisites where prerequisites[i] = [ai, bi] indicates that you must take course bi first if you want to take course ai. Return the ordering…
Medium · From Interview SDE 2 Backend Round 1 Make My Trip Gurugram
- 05
LRU Cache
Implement an LRU (Least Recently Used) cache that supports get(key) and put(key, value) operations in O(1) time. Use a combination of a hash map for fast key lookup and a doubly linked list to maintain usage order. Handle edge cases such as capacity zero,…
Medium · From MakeMyTrip (SSE 1) interview experience
- 06
Minimum Cost For Tickets
You are given an array of days when you need to travel, and costs for 1-day, 7-day, and 30-day passes. You need to find the minimum cost to cover all travel days.
Medium · From MakeMyTrip|Rejected
- 07
Target Sum
Given an array of non-negative integers nums and a target target, you must add either a '+' or a '-' sign to each integer in nums and then concatenate them to form an expression. Find the number of ways to assign signs to make the sum of integers equal to…
Medium · From MakeMyTrip|Rejected
- 08
Jump Game I
Given an array of non-negative integers nums, you are initially positioned at the first index, and each element in the array represents your maximum jump length at that position. Determine if you are able to reach the last index.
Medium · From MakeMyTrip | Java SSE2 | Rejected
- 09
Jump Game II
Given an array of non-negative integers nums, you are initially positioned at the first index, and each element in the array represents your maximum jump length at that position. Your goal is to reach the last index in the minimum number of jumps.
Medium · From MakeMyTrip | Java SSE2 | Rejected
- 10
Last Element in Circular Array (Josephus Variant)
Given a circular array, elements are removed sequentially. Starting from a certain point, every Kth element is removed. The process continues until only one element remains. Determine which element is the last one remaining.
- 11
Flatten Nested Array
Write a function to flatten a deeply nested array like [1, [2, 3], [4, [5, 6]]] into a single-level array [1, 2, 3, 4, 5, 6], providing solutions both with and without recursion.
Medium · From MMT SSE-2(Frontend) Interview Experience
- 12
Implement Promise.allSync
Implement a promiseAllSync function that takes a number n (representing the count of promises to generate using getPromiseByIndex) and returns a Promise that resolves with an array of all resolved values in order, similar to Promise.all. The implementation…
Medium · From MMT SSE-2(Frontend) Interview Experience
- 13
Curried Sum Function with Bind/Call/Apply
Implement a generateSum function that takes an initial number n and returns a curried function. This curried function should allow successive calls like sum(1)(2)(3)(4) to sum up to n arguments, ultimately returning the total sum. The implementation should…
Medium · From MMT SSE-2(Frontend) Interview Experience
- 14
- 15
Populating Next Right Pointers in Each Node
Populate the right pointer of each node in a binary tree.
Medium · From MakeMyTrip SDE2 Interview Experience
- 16
- 17
House Robber III
The problem details can be found at the provided LeetCode link.
- 18
Capacity To Ship Packages Within D Days
The problem details can be found at the provided LeetCode link.
- 19
Word Search with Variations
Given a 2D grid of characters and a word, check if the word exists in the grid. The problem had multiple variations including: Check if the word exists in the grid, Count the number of occurrences, Print the starting and ending positions of each occurrence.
Medium · From MMT | SDE 2 | Gurugram | Rejected
- 20
Closest Common Manager
You are given a method which you need to complete: public Emp getCommonManager(Emp e1, Emp e2) . You can design the Emp class however you like. Given two employee objects ( e1 , e2 ), you need to find and return the closest manager common to both of them in…
- 21
Subarray with Zero Sum
Given an array of integers, find any subarray which has a sum of 0.
Medium · From MakeMyTrip SDE / SSE 2 Interview Experience
- 22
Store Open/Close Timings Implementation
Given two arrays representing the open and close timings of a store, implement a solution based on this data.
Easy · From MMT MakeMyTrip : Tech Lead
- 23
Multi-threaded Website HTML String Count
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…
Hard · From MMT MakeMyTrip : Tech Lead
- 24
4Sum
Given an array nums of n integers, return an array of all unique quadruplets [nums[a], nums[b], nums[c], nums[d]] such that a , b , c , and d are distinct and nums[a] + nums[b] + nums[c] + nums[d] == target .
Medium · From MakeMyTrip | SSE2 | Terrible Experience
- 25
Remove Duplicates from Sorted List II
Given the head of a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list. Return the linked list sorted as well.
Medium · From MakeMyTrip | SSE2 | Terrible Experience
19 more in the MakeMyTrip write-ups.
MakeMyTrip system design questions
- 01
Stock Broker System Design
Design a stock broker system. The design should cover the overall architecture, key components, data flow, and should illustrate the use of appropriate design patterns and SOLID principles. Explain why each pattern is chosen and provide a brief working code…
- 02
Notification System Design
Design a scalable notification system. The design should address how notifications are generated, queued, delivered, and retried. Discuss scaling considerations, throughput, reliability, and how to handle failures and retries.
- 03
Uber Low-Level Design
Design the low-level components of the Uber application, focusing on aspects like driver allocation, ride matching, and trip management.
- 04
Design Hotel Reservation Backend with Inventory Management
Design a Hotel Reservation Backend. The interviewer was fully focused on managing inventory of rooms on each date.
- 05
LLD of Vending Machine
Design a low-level vending machine system. I was asked to directly code the objects and methods, with method implementation not strictly required. The discussion also involved handling concurrency and various design patterns.
- 06
Low-Level Design of Elevator System
I was asked to design the Low-Level Design (LLD) of an Elevator system. The requirements included implementing working code with design patterns, handling concurrency, and supporting multiple elevators. This round was allotted 40 minutes.
- 07
Low-Level Design for RedBus
I was asked to design RedBus with the following features: 1. Search buses, 2. View and manage seats, 3. Seat reusability, 4. Book tickets, 5. Payment integration, 6. Fare strategy, 7. Notifications.
Hard · From MMT | SDE 2 | Gurugram | Rejected
- 08
Prevent Double Payment
How would you ensure that double payment doesn't happen when requests for payment are made twice?
- 09
Thread-Safe Builder Pattern
Implement the Builder pattern in a thread-safe way. I was also asked to create two threads and run the program to demonstrate its thread-safety.
- 10
Secure Short URL for MakeMyTrip Booking
Design a system to shorten a long URL for a MakeMyTrip booking. The system should generate a unique shortened URL and ensure that only the original user who made the booking can access it, preventing unauthorized access by others. This was described as a…
- 11
Design a Railway Ticketing System
Design a railway ticketing system covering aspects like database schema design, SQL queries for figuring out routes/booking tickets, and handling concurrent bookings.
Medium · From MMT MakeMyTrip : Tech Lead
- 12
Reducing Microservice Latency
Discuss and propose solutions for reducing high latency between two microservices.
- 13
Idempotent Ticket Booking System Design
Design an idempotent ticket booking system.
- 14
Scalable System for High QPS
Design a scalable system capable of handling a very high Queries Per Second (QPS).
- 15
Design Dream11 HLD
I was asked to design the High-Level Architecture for a fantasy sports platform similar to Dream11. This involved outlining the core components, data flows, and scalability considerations.
- 16
System Design: WhatsApp
Design the system architecture for WhatsApp, including detailing its various APIs.
Hard · From MakeMyTrip | Senior Frontend Engineer Interview | Sep 2023
- 17
Design Hotel Search and Ranking Service
I was asked to design a system for hotel search and ranking. The inputs include city name, search criteria (check-in, check-out, number of adults, rooms). The system should involve a 'Search service' and a 'Hotels Ranking service' (microservice). I needed to…
- 18
Design Workflow Orchestration Service
The task was to design a workflow service capable of running tasks both in parallel and sequentially. I was given examples like workflow1 where tasks T1 and T2 run in parallel, followed by T3 which executes only if T1 and T2 are successful, and then T4, T5,…
- 19
Design an Elevator Management System
Design an Object-Oriented Programming (OOP) based code for an elevator management system. This should include an Entity-Relationship (ER) diagram.
Hard · From MakeMyTrip | SDE1 | India | May 2022 [Reject] | Bad Luck
- 20
Design a Java Application for Data Type to JSON Conversion
I was tasked with designing and implementing a Java application that could convert various data types, specifically Integer, String, Map, and List, into JSON format. The problem statement provided explicit rules for how each data type should be converted. I…
From MakeMyTrip | Senior Software Engineer I | Bengaluru | Mar 2021 [Offer]
- 21
Design Multi-Level Parking Lot
Design a multi-level parking lot system. Focus on both Low-Level Design (LLD) covering classes and their interactions, and High-Level Design (HLD) including database schema and overall architecture. Be prepared for in-depth follow-up questions.
Hard · From MakeMyTrip | SDE 2 | Gurgaon | March 2021 {Reject}
- 22
Design LRU-LFU Cache with Custom Eviction
Design an LRU-LFU cache. The eviction policy is as follows: first, choose the least frequently used element to remove. If there are multiple elements with the same minimum frequency, then choose the least recently used among them. Provide both Low-Level…
Hard · From MakeMyTrip | SDE 2 | Gurgaon | March 2021 {Reject}
MakeMyTrip behavioural and HR questions
- 01
Recent Technologies and Future Learning
Share information about two technologies I have recently learned and what I plan to learn next.
From MakeMyTrip | Senior Frontend Engineer Interview | Sep 2023
MakeMyTrip other questions
- 01
React Stopwatch
Implement a functional stopwatch using React with basic controls such as start, pause, and reset.
- 02
React Search with Debouncing and AbortController
Implement a search functionality in React that includes API integration, debouncing user input to avoid unnecessary calls, using AbortController to cancel previous or pending requests, and handling rapidly changing queries.
- 03
React Search Bar with Debounce
Build a React component for a search bar. When a user types, it should make API calls (e.g., to https://dummyjson.com/products/search?q=phone) and display the returned list of data. The search should trigger only when a minimum of 3 characters are typed.…
Medium · From MMT SSE-2(Frontend) Interview Experience
- 04
React Sequential Progress Bars
Build a small React feature where clicking an 'Add Bar' button creates a new progress bar. These bars should fill one at a time, sequentially, each taking approximately 2000ms to reach 100%. Users should be able to add multiple bars, which will queue up and…
Hard · From MMT SSE-2(Frontend) Interview Experience
- 05
React File Explorer UI
Implement a minimal file explorer UI in React. Initially, it should show a 'Create src' button, which, when clicked, creates a root folder named 'src'. Folders should be collapsible/expandable and display their name with a '+ Add' button. Clicking '+ Add' on…
Hard · From MMT SSE-2(Frontend) Interview Experience
- 06
React Pagination Component
Create a React component that displays pagination controls. The component should always show the first page, last page, current page, current page -1, and current page +1. If there's a gap between numbers, '...' should be displayed. Examples: Current page: 1,…
Medium · From MMT SSE-2(Frontend) Interview Experience
- 07
Java Record Type
Explain what a Record in Java is and why it is used. This question was asked because I used a Record while coding one of the DSA problems.
- 08
Spring Interceptor
What is an interceptor in Spring, and why do we need it?
- 09
PureComponent vs. React.memo
Explain the key differences between PureComponent and React.memo in ReactJS.
From MakeMyTrip | Senior Frontend Engineer Interview | Sep 2023
- 10
Redux and Middlewares Discussion
Discuss concepts related to Redux and its middlewares.
From MakeMyTrip | Senior Frontend Engineer Interview | Sep 2023
- 11
Redux Trade-offs and Opinion
Discuss the trade-offs involved in using Redux for state management and share your personal opinion on its practical applications.
From MakeMyTrip | Senior Frontend Engineer Interview | Sep 2023
- 12
Web Vitals: Explanation and Improvement
Explain how each of the Web Vitals works, discuss strategies for their improvement, and analyze scenario-based questions, such as the impact of a delayed Server-Side Rendered (SSR) document on specific Web Vitals.
From MakeMyTrip | Senior Frontend Engineer Interview | Sep 2023
- 13
Print Even and Odd Numbers with Two Threads
I was asked to implement a solution to print even and odd numbers using two separate threads. Thread 1 should print even numbers, and Thread 2 should print odd numbers.
- 14
OOPs Concepts: Polymorphism and Abstract Classes
Provide an in-depth explanation of runtime polymorphism. Discuss why an abstract class cannot be instantiated (cannot have an object).
From MakeMyTrip | SDE1 | India | May 2022 [Reject] | Bad Luck
- 15
Java: Why `main` is static?
Explain why the main method in Java is declared as static.
- 16
Java 8 Features & Concepts
Discuss new features introduced in Java 8, specifically focusing on lambdas (why they are used), the Stream API, and Collectors.
MakeMyTrip interview questions FAQ
What questions are asked in MakeMyTrip interviews?
Candidates reported 83 distinct questions across 21 MakeMyTrip interviews. 44 coding and DSA questions, 22 system design questions, 1 behavioural and HR questions, 16 other questions.
Which MakeMyTrip interview questions are asked most often?
The most repeated are "Combination Sum" (2 times).
How difficult are MakeMyTrip interview questions?
Of the questions candidates rated, 13% were easy, 64% medium and 23% hard.