MMT - Backend Engineer Interview Experience
Summary
I interviewed for a Backend Engineer SSE1 role at MMT, completed three rounds covering DSA, system design/SQL, and a complex path‑finding ranking problem, and received a hire verdict.
Full Experience
I recently interviewed for a backend engineering role SSE1 at MMT. I reached out to the recruiter directly via email and got a quick response, after which the interview process was scheduled. Whole process took 1 week.
There were three rounds in total.
Round 1 (DSA): This was a 1-hour round with two questions. The first one was a string-based problem around validating a sequence (can be approached using a stack). The second problem was array-based, where I had to check for the existence of a target condition efficiently. We discussed both brute force and optimized approaches, and the interviewer nudged towards improving the time complexity using range/query-based techniques like Segment Tree or Fenwick tree.
Round 2 (LLD + SQL): In this round, I was asked to design a library management system. The discussion revolved around structuring classes properly and where different design patterns could fit in (like singleton, strategy, etc.). After that, the interviewer asked SQL questions based on real‑world usage—writing queries, discussing joins, and when one type of join might be preferred over another.
Round 3 (Problem Solving): This round was interesting because I was expecting system design, but it turned into a problem‑solving round.
The problem was something like this: You are given a dataset (can be thought of like a spreadsheet) containing travel options between cities — this includes flights, buses, and trains. Each entry has details like source, destination, price, and travel time.
Given a source and destination, you need to return the top 5 options based on:
- Minimum price (primary criteria)
- If prices are the same, then minimum travel time
There are a few constraints:
- Routes can be direct or have up to 2 intermediate stops
- You need to consider combinations of routes (not just direct ones)
- Similar logic needs to be applied for finding the fastest options as well (top 5 by time)
So essentially, it becomes a path‑finding + ranking problem where you have to explore possible routes (with constraints on stops) and then sort/filter based on multiple criteria.
We discussed different approaches, how to structure the data, and how to efficiently retrieve the top results without exploring unnecessary paths.
Overall, the interviews were more focused on how I think through problems rather than just getting the final answer quickly.
Verdict: Hire
Interview Questions (2)
Design a Library Management System
Design a library management system. The discussion should cover how to structure classes, where different design patterns (such as Singleton, Strategy, etc.) fit, and how to model typical library operations (book checkout, return, inventory management, user management, etc.).
Top 5 Travel Options Path‑Finding Problem
You are given a dataset (similar to a spreadsheet) containing travel options between cities — flights, buses, and trains. Each entry includes source, destination, price, and travel time.
Given a source and destination, return the top 5 options based on:
- Minimum price (primary criteria)
- If prices are equal, then minimum travel time
Constraints:
- Routes can be direct or have up to 2 intermediate stops (maximum 3 legs).
- You must consider combinations of routes, not just direct ones.
- The same ranking logic applies for finding the fastest options (top 5 by time).
The solution requires exploring possible paths within the stop limit, calculating total price and total travel time for each path, and then selecting the best five according to the criteria.