# Software Engineer
**Role:** Software Engineer · **Level:** Senior Software Engineer 1
**Company:** [MakeMyTrip](https://scaleengineer.com/companies/makemytrip)
**Difficulty:** Hard
**Salary:** US$180000 - US$250000
**Experience:** 5 - 8
**Timeline:** ~7 days
The interview process for a Senior Software Engineer 1 at MakeMyTrip is designed to assess a candidate's technical expertise, problem-solving abilities, system design skills, and cultural fit. It typically involves multiple rounds, starting with an initial screening and progressing through technical and behavioral assessments.
Canonical: https://scaleengineer.com/interviews/makemytrip/senior-software-engineer-1-software-engineer
---
## Overall evaluation

- Technical and Problem-Solving
- System Design and Architecture
- Behavioral and Cultural Fit

## Questions asked

- Design a URL shortening service.
- How would you design a system to handle real-time flight status updates?
- Explain the difference between concurrency and parallelism.
- Describe a situation where you disagreed with your manager.
- What are the trade-offs between monolithic and microservices architecture?
- How do you handle large datasets and optimize their processing?
- Tell me about a time you failed and what you learned from it.
- Design an API for a travel booking platform.
- What are your thoughts on test-driven development (TDD)?
- How would you scale a social media feed?

## Preparation tips

### lists

- Review core Computer Science fundamentals: Data Structures, Algorithms, Operating Systems, Databases.
- Practice coding problems focusing on time and space complexity.
- Study system design principles and common architectural patterns (e.g., microservices, load balancing, caching).
- Prepare for behavioral questions using the STAR method (Situation, Task, Action, Result).
- Research MakeMyTrip's products, services, and recent news.
- Understand the company's values and culture.
- Prepare questions to ask the interviewer.

### studyPlan

- {"title":"Data Structures and Algorithms","longDescription":"Weeks 1-2: Focus on Data Structures (Arrays, Linked Lists, Trees, Graphs, Hash Tables) and Algorithms (Sorting, Searching, Dynamic Programming, Greedy Algorithms). Practice coding problems on platforms like LeetCode, focusing on medium to hard difficulty.","shortDescription":"Weeks 1-2: DSA fundamentals and practice (medium-hard)."}
- {"title":"System Design","longDescription":"Weeks 3-4: Deep dive into System Design. Cover topics like scalability, reliability, availability, consistency, load balancing, caching, databases (SQL vs NoSQL), message queues, and API design. Study common design patterns and practice designing systems for high-traffic applications.","shortDescription":"Weeks 3-4: System Design principles and practice."}
- {"title":"Behavioral and Cultural Fit","longDescription":"Week 5: Prepare for behavioral and situational questions. Reflect on past experiences related to teamwork, leadership, conflict resolution, and problem-solving. Use the STAR method to structure your answers. Research MakeMyTrip's culture and values.","shortDescription":"Week 5: Behavioral questions preparation and company research."}
- {"title":"Final Preparation","longDescription":"Week 6: Mock interviews and final review. Practice explaining your thought process clearly and concisely. Review any weak areas identified during practice.","shortDescription":"Week 6: Mock interviews and final review."}

## Location differences

- {"location":"Gurugram","differences":{"tips":["Be prepared to discuss large-scale system design scenarios relevant to travel.","Showcase experience with cloud platforms (AWS, Azure, GCP).","Highlight leadership qualities and experience in mentoring."],"interviewFocus":["Deep dive into distributed systems and high-traffic applications.","Emphasis on architectural patterns and trade-offs.","Behavioral questions focusing on leadership and team collaboration."],"commonQuestions":["How would you design a system to handle flight booking cancellations?","Discuss a challenging technical problem you solved recently.","How do you ensure scalability and reliability in your code?","What are your thoughts on microservices architecture?","Describe a time you had to mentor a junior engineer."]}}
- {"location":"Remote","differences":{"tips":["Brush up on advanced data structures and algorithms.","Practice coding problems on platforms like LeetCode or HackerRank.","Be ready to articulate your thought process clearly."],"interviewFocus":["Focus on data structures, algorithms, and their practical application.","Assessment of problem-solving skills in a competitive programming context.","Behavioral questions related to conflict resolution and decision-making."],"commonQuestions":["Design a recommendation engine for travel packages.","How would you optimize database queries for a large travel website?","Explain the concept of eventual consistency in a distributed system.","What are the pros and cons of using NoSQL databases for user profiles?","Describe a situation where you had to influence stakeholders."]}}

## Round 1: Data Structures and Algorithms
**Type:** Technical Interview - Coding · **Difficulty:** Medium · **Duration:** 45 min
Coding round to test DSA skills.
This round focuses on assessing your core programming skills. You will be asked to solve 1-2 coding problems, typically involving data structures and algorithms. The interviewer will evaluate your approach to problem-solving, your ability to write efficient code, and your understanding of time and space complexity.
**Interviewers look for:** Strong understanding of data structures and algorithms.; Ability to write clean, efficient, and bug-free code.; Logical thinking and problem-solving skills.
**Evaluation criteria:** Correctness of the solution; Efficiency (Time and Space Complexity); Code readability and maintainability; Problem-solving approach
**Common rejection reasons:** Inability to articulate thought process clearly.; Lack of fundamental knowledge in data structures and algorithms.; Poor coding practices.; Not asking clarifying questions.
## Questions

- Given an array of integers, find the contiguous subarray with the largest sum.
- Implement a function to reverse a linked list.
- Find the k-th smallest element in a binary search tree.

## Preparation tips

- Practice coding problems on platforms like LeetCode, HackerRank, or GeeksforGeeks.
- Focus on understanding the underlying data structures and algorithms.
- Practice explaining your thought process while coding.
- Be comfortable with at least one major programming language (Java, Python, C++).

## Round 2: System Design and Architecture
**Type:** System Design Interview · **Difficulty:** Hard · **Duration:** 60 min
System design round to evaluate architectural skills.
This round assesses your ability to design and architect software systems. You will be given a high-level problem statement (e.g., design a URL shortener, a social media feed, or a ride-sharing service) and expected to come up with a scalable, reliable, and maintainable solution. This involves discussing database choices, API design, caching strategies, load balancing, and handling failures.
**Interviewers look for:** Ability to design complex, large-scale systems.; Understanding of distributed systems principles.; Knowledge of various architectural patterns and technologies.; Ability to articulate design choices and justify trade-offs.
**Evaluation criteria:** Scalability of the design; Reliability and availability; Clarity and completeness of the design; Trade-off analysis; Understanding of system components (databases, caching, load balancers, etc.)
**Common rejection reasons:** Inability to design a scalable and reliable system.; Lack of understanding of distributed systems concepts.; Poor trade-off analysis.; Not considering edge cases and failure scenarios.
## Questions

- Design a system like Twitter's news feed.
- Design a rate limiter.
- Design a distributed cache.

## Preparation tips

- Study common system design patterns and concepts.
- Practice designing various systems, focusing on scalability and reliability.
- Understand the trade-offs associated with different design choices.
- Be prepared to discuss technologies relevant to MakeMyTrip's stack.

## Round 3: Behavioral and Managerial Fit
**Type:** Behavioral and Managerial Interview · **Difficulty:** Medium · **Duration:** 45 min
Behavioral round to assess soft skills and cultural fit.
This round focuses on your behavioral and leadership qualities. You will be asked questions about your past experiences, how you handle challenges, work with teams, and your career aspirations. The goal is to understand your personality, work ethic, and how well you would fit into MakeMyTrip's culture.
**Interviewers look for:** Evidence of leadership and mentorship.; Ability to work effectively in a team.; Strong communication and interpersonal skills.; Adaptability and a positive attitude.
**Evaluation criteria:** Teamwork and collaboration skills; Leadership potential; Problem-solving approach in non-technical scenarios; Communication and interpersonal skills; Cultural fit and alignment with company values
**Common rejection reasons:** Lack of leadership or teamwork experience.; Poor communication or interpersonal skills.; Inability to handle conflict or ambiguity.; Not aligning with company values.
## Questions

- Tell me about a time you had to lead a project. What were the challenges?
- Describe a situation where you had a conflict with a colleague. How did you resolve it?
- How do you stay updated with new technologies?

## Preparation tips

- Prepare examples using the STAR method for common behavioral questions.
- Reflect on your strengths and weaknesses.
- Think about your career goals and why you are interested in MakeMyTrip.
- Be honest and authentic in your responses.

## Round 4: HR and Offer Discussion
**Type:** HR / Final Discussion · **Difficulty:** Easy · **Duration:** 15 min
HR round for salary discussion and final fit assessment.
This is typically the final round where HR discusses salary expectations, benefits, and answers any remaining questions you might have about the role or the company. It's also a chance for them to ensure you are a good cultural fit and are enthusiastic about joining MakeMyTrip.
**Interviewers look for:** Confirmation of interest in the role and company.; Understanding of the offered compensation and benefits.; Clear communication regarding availability and next steps.
**Evaluation criteria:** Alignment of expectations (salary, role, growth); Candidate's interest and enthusiasm; Logistics and offer details
**Common rejection reasons:** Unrealistic salary expectations.; Poor alignment with the role's responsibilities.; Lack of enthusiasm for the company or role.
## Questions

- What are your salary expectations?
- Why are you interested in MakeMyTrip?
- Do you have any questions for us?

## Preparation tips

- Be prepared to discuss your salary expectations.
- Have questions ready about the role, team, or company culture.
- Express your enthusiasm for the opportunity.
