Expedia || SDE-2 || Gurgaon
SDE-2Expedia Interview Experience (Bangalore) | SDE-2
SDE-2Expedia Software Engineer 2
Software Engineer 2Expedia Interview Experience SDE2 2025
SDE-IIExpedia Interview Experience | On Campus | September 2022 [SELECTED]
SDE - 13 more experiences below
Summary
I interviewed for an SDE-2 position at Expedia in Gurgaon, which involved an Online Assessment, a project deep dive, a DSA round, and a system design round. I discussed my past work extensively and solved a challenging algorithmic problem along with a system design question.
Full Experience
Round 1 – Online Assessment
This round consisted of 3 coding questions that I had to solve within 90 minutes. The problems broadly covered topics such as Sorting, Sliding Window techniques, and one that felt like a mix of Dynamic Programming or a Greedy approach.
Round 2 – Project Deep Dive
In this round, the discussion focused heavily on my past projects. We went into detail about various aspects of my work, exploring both the technical challenges and solutions. Beyond the technical aspects, there were also several managerial questions. These included how I handle conflict, my leadership experiences, and the most challenging production issues I've successfully resolved throughout my career.
Round 3 – Data Structures & Algorithms (HackerRank)
This was a coding round conducted on HackerRank. I was presented with two questions:
- One question involved determining the minimum operations required to make all elements in an array unique while simultaneously minimizing their total sum. An operation consisted of incrementing an element by 1.
- The second question was identified as a Monotonic Stack problem, which the interviewer hinted was of Medium-Hard difficulty.
Round 4 – High-Level Design (HLD)
The final round was centered around System Design. I was tasked with designing a scalable web crawler, which required me to detail its architecture, various components, and strategies for handling issues like fault tolerance, politeness policies towards websites, efficient data deduplication, and achieving high overall performance.
Interview Questions (2)
I was presented with a problem where I needed to find the minimum number of operations to make all elements in an array unique. An operation consists of incrementing an element by 1. The goal was to achieve uniqueness while also minimizing the total sum of the elements after these operations.
The task was to design a scalable web crawler. This involved discussing the high-level architecture, key components like a URL frontier, DNS resolver, page fetcher, parser, and storage. I also had to explain how to address various challenges such as implementing politeness policies, handling duplicate URLs, ensuring fault tolerance, and achieving high performance for large-scale crawling.
Summary
I recently interviewed with Expedia Group for an SDE-2 role in Bangalore, which involved an online assessment, two DSA rounds, a Low-Level Design round, and a Behavioral/HR discussion. I successfully navigated through various coding challenges and a system design problem.
Full Experience
I recently interviewed with Expedia Group for an SDE-2 role in Bangalore, and I'd like to share my experience, hoping it helps others in their preparation journey.
Process Overview
The interview process consisted of five stages, starting with an Online Assessment and followed by four onsite rounds.
1. Online Assessment (HackerRank)
This was a standard Online Assessment featuring a couple of DSA-based coding questions. I focused on demonstrating awareness of time complexity and writing clean, efficient code, which I believe was crucial.
2. Round 1 – DSA
In this round, I was given two coding challenges:
- Longest Consecutive Sequence in an Array: I approached this by using a HashSet, achieving an O(n) time complexity. We had a follow-up discussion on further time and space optimizations.
- Reorder Linked List: For this problem, my strategy was to first find the middle of the linked list, then reverse its second half, and finally merge the two halves. The interviewer was keen on discussing edge cases and various testing scenarios.
Throughout this round, the interviewer particularly focused on the clarity of my approach and my coding fluency.
3. Round 2 – DSA
The second DSA round also involved two questions:
- Longest Substring with Distinct Characters: I solved this using a sliding window approach. I made sure to emphasize how I maintained indices and handled character repeats efficiently.
- Find Minimum in Rotated Sorted Array: I implemented a modified binary search algorithm for this. I spent time explaining the invariants of my approach and how I would handle different edge cases, including situations with duplicate elements.
Here, the emphasis was on explaining why my chosen data structure or algorithm was optimal for the problem and stepping through various edge cases.
4. Round 3 – LLD (Low-Level Design)
This round was a design discussion. I was asked to design an API that could determine whether a product could be delivered within 2 days, given a pincode. Our discussion covered several key aspects:
- The core logic design for distance and time validation.
- Effective data modeling strategies.
- How to ensure the system’s extensibility for multiple regions or varying service levels.
- Approaches for handling API failures and ensuring scalability.
5. Round 4 – Behavioural / HR
The final round was behavioral, where we discussed my past work experiences, challenges I had faced, and scenarios involving collaboration. The interviewers seemed to be looking for demonstrations of thoughtfulness and ownership in my responses.
Interview Questions (5)
Given an unsorted array of integers, find the length of the longest consecutive elements sequence. I solved this using a HashSet for O(n) time complexity, followed by a discussion on further time and space optimizations.
Given a singly linked list L: L0→L1→…→Ln-1→Ln, reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→…. My strategy was to find the middle of the linked list, reverse its second half, and then merge the two halves. We also discussed various edge cases and testing scenarios.
Find the length of the longest substring in a given string that contains all distinct characters. My approach used a sliding window technique, focusing on maintaining indices and handling character repeats efficiently.
Given a rotated sorted array, find the minimum element. I used a modified binary search variant, explaining the invariants of my approach and how I would handle different edge cases, including situations with duplicate elements.
Design an API that determines whether a product can be delivered within 2 days, given a pincode. Key aspects discussed included the core logic for distance/time validation, effective data modeling, ensuring extensibility for multiple regions or varying service levels, and approaches for handling API failures and ensuring scalability.
Preparation Tips
Based on my experience, I'd suggest focusing on several key areas:
- DSA Patterns: I found it extremely helpful to brush up on array, linked list, sliding window, hashing, and binary-search patterns, as these appeared frequently across my coding rounds.
- Trade-offs: Be prepared to explain trade-offs clearly, especially when discussing low-level design decisions. Understanding the implications of your choices is crucial.
- Communication: Keep your communication crisp and structured. Expedia's interviewers clearly value candidates who can articulate their thoughts clearly.
- Narrate Your Reasoning: Don't just code silently. I made sure to narrate my reasoning process as I went, explaining my thought process, which I believe helped them understand my problem-solving approach.
Summary
I interviewed for a Software Engineer 2 position at Expedia, undergoing multiple technical rounds including DSA and System Design. Despite progressing through several stages, I was ultimately rejected due to my performance in the Data Structures and Algorithms round.
Full Experience
My interview journey for the Software Engineer 2 role at Expedia began with a HackerRank assessment, which presented two relatively straightforward problems, both of which I recognized from GeeksforGeeks. Following this, I advanced to the first Data Structures and Algorithms (DSA) round. Here, I faced two LeetCode medium-level questions; one revolved around the concept of rate limiting, and the other involved binary search. Unfortunately, this round proved to be my downfall, leading to my eventual rejection.
I also had a System Design round where the main topic was designing an Employee Management System. The discussion delved deep into database internals, various sharding techniques, and how data flows within such a large-scale system. A subsequent round focused on Low-Level Design (LLD), for which I was tasked with designing a system akin to Jira. The final stage was a Hiring Manager round, which primarily consisted of standard behavioral questions, where I shared insights into my past experiences and challenges.
Interview Questions (2)
Design an Employee Management System, with a significant focus on database internals, sharding strategies, and understanding how data is managed and functions within the database.
Perform a Low-Level Design (LLD) for an application similar to Jira, considering its core functionalities, object-oriented principles, and component interactions.
Summary
I interviewed for an SDE2 role at Expedia and received an offer after completing an online assessment, three technical rounds covering DSA and LLD, and a hiring manager round focusing on my projects and behavioral questions.
Full Experience
Online Test : Received HackerRank based OA link which consists of 3 questions need to solve in 90 minutes. 1 question was implementation based question other one was related to DP which was easy to medium difficulty and third was related to graph which was of medium hard dfficulty.
After 1 weeks received call from HR regarding the next steps. After this total of 4 rounds conducted two on same day and other 2 on 3 days after previous one.
Technical Round 1 : This was a DSA round. Hackerrank based compiler was used for this round. Total of 2 questions were asked and they were expecting to write complete code and run it over the various test cases.
- https://leetcode.com/problems/subarray-sum-equals-k/description/
- Similar to https://leetcode.com/problems/letter-combinations-of-a-phone-number/
Technical Round 2 : This was also DSA based round. And 2 questions were asked in this round as well with similar expectation as of previous one.
- https://leetcode.com/problems/sort-colors/description/
- This question was based on tree exact question is not available but it was extension of https://leetcode.com/problems/delete-nodes-and-return-forest/description/
Technical Round 3 : This round focused on Low-Level Design (LLD). I was asked to design an OTP-based notification system. The interviewer explored various aspects of the system, including design patterns, class structure, and the methods I would implement. Once he was satisfied with my overall approach and design, he asked me to write the code for it.
I successfully created the interface, service class, and the necessary method implementations. Following that, the interviewer posed several scenario-based questions and asked how I would adapt my design using appropriate design patterns
Technical Round 4: This round was conducted by the Hiring Manager and was centered around my current project. The interviewer delved deeply into every component of the project, questioning my technical choices and understanding of the architecture. He was particularly interested in the design decisions and the rationale behind selecting specific technologies.
Later, he presented a few scenario-based questions, which I answered using the STAR (Situation, Task, Action, Result) approach, ensuring clarity and structure in my responses.
After a week, received a call from recruiter regarding selection and further steps. Received offer by next week.
All the interviewers and HR were very helpful and nice throughout the process.
Interview Questions (6)
I was asked to design an OTP-based notification system. The interviewer explored various aspects of the system, including design patterns, class structure, and the methods I would implement. Once he was satisfied with my overall approach and design, he asked me to write the code for it.
Discussion focused on my current project, questioning my technical choices, understanding of the architecture, and design decisions. Later, the interviewer presented a few scenario-based questions.
Summary
I successfully navigated Expedia's SDE-1 interview process on campus, which included psychometric tests, an online assessment, and two technical interviews focused on DSA and behavioral aspects. I received an offer after clearing all rounds.
Full Experience
Expedia visited our campus for an SDE-1 role, attracting approximately 500 applicants. The hiring process was multi-staged, beginning with a resume-based shortlisting. It was crucial to apply on both the college portal and Expedia’s careers page, a step where many students were eliminated. This round narrowed the candidates to about 120 students.
Next, I participated in the Psychometric Test, Expedia's version of a Workstyle assessment, lasting 45 minutes. This round involved scenario-based questions, and I focused on aligning my responses with Expedia's Worklife principles. This was an elimination round, after which 83 students, including myself, proceeded. I also received a feedback report.
The third round was an Online Assessment conducted on the HackerRank platform. It comprised 6 MCQ questions on core subjects like OS and OOPs, along with 2 DSA-based questions. I found the DSA problems to be in the Easy-Medium range on LeetCode. Following this round, only 12 students were selected for the offline technical interviews.
The final stage involved two Technical and HR Interviews, both conducted offline and focusing on DSA and behavioral questions.
In Interview Round 1, an SDE-2 interviewed me. After introductions, we had a casual chat about his work, and I provided an overview of my projects without delving into excessive technical details. He then questioned me on the time complexities of various sorting algorithms (Insertion sort, Heap sort, Quick sort, Merge sort) and key Data Structures such as Heap, Map, BST, LL, and BT. Subsequently, we moved on to DSA problems:
- Length of the longest substring without repeating characters
- Minimum Sum Path in a Triangle
- Add two numbers in a linked list
Interview Round 2 was taken by a senior SDE at Expedia. Following introductions, he inquired about my projects, the difficulties I encountered during them, and my responsibilities. Later, he presented me with some DSA problems:
- Merge two sorted Linked List
- Coin Change Problem
After both interviews concluded, the results were declared within 20-30 minutes, and I was selected for the SDE-1 role.
Interview Questions (5)
Given a string s, find the length of the longest substring without repeating characters.
Given a triangle, find the minimum path sum from top to bottom.
Add two numbers represented by linked lists.
Merge two sorted linked lists into one new sorted list.
Given a set of coin denominations and a target amount, find the minimum number of coins required to make up that amount.
Preparation Tips
My preparation primarily focused on Data Structures and Algorithms (DSA) and OOPs concepts, which I studied thoroughly. I learned that most questions would stem from these areas, and the interviewer would appreciate my thought process more than just the final answer. During DSA problem-solving, I made sure to think out loud, as this helped the interviewer understand my decision-making skills and kept them engaged. I also made sure to remain calm and confident throughout the entire process.
Summary
I interviewed for an SDE3 position at Expedia and received an offer. However, I ultimately decided to reject the offer in favor of other opportunities with better terms, including WFH options.
Full Experience
My interview process for the SDE3 role at Expedia consisted of four distinct rounds.
Round 1 - DSA1
This round focused on Data Structures and Algorithms. I was given two problems:
- Subarrays with K Different Integers
- Kth Smallest Element in a Sorted Matrix
Round 2 - DSA2
Similar to the first DSA round, this also involved two algorithmic problems:
- Unique Paths
- Gas Station
Round 3 - System Design
The system design round revolved around designing a 'Book My Show' type of service. The interviewer was very understanding and collaborative, which made the discussion comfortable. We delved into fundamental concepts like data scaling, throughput scaling, consistent hashing, and appropriate database choices for various services within the architecture.
Round 4 - Behavioral
This was a standard behavioral interview round. The questions touched upon topics such as conflict resolution, my approach to self-growth, and experiences with challenging projects.
Ultimately, I received an offer from Expedia. However, I decided to reject it as I had other, more suitable offers lined up, some of which included work-from-home options that were more appealing to me.
Interview Questions (6)
There are n gas stations along a circular route, where the amount of gas at station i is gas[i]. You have a car with an unlimited gas tank and it costs cost[i] of gas to travel from station i to its next station (i+1). Return the starting gas station's index if you can travel around the circuit once in the clockwise direction, otherwise return -1.
The discussion involved designing a system similar to 'Book My Show', covering fundamental aspects such as data scaling, throughput scaling, consistent hashing, and appropriate database choices for different services within the architecture.
Standard behavioral questions were asked, covering topics like conflict resolution, approaches to self-growth, and experiences with challenging projects.
Summary
I interviewed for an SDE 2 role at Expedia Group in Bangalore. Despite answering all the technical questions, which included a logic puzzle, a matrix search problem, and a binary tree height calculation, I was not selected for further rounds.
Full Experience
I had an onsite interview at Expedia Group for an SDE 2 position, which was conducted virtually and lasted approximately 1.5 hours. I was presented with three distinct problems: a tricky logic puzzle, a problem involving searching for an element in a row-wise and column-wise sorted 2D matrix, and a straightforward binary tree maximum height calculation. I felt confident in my answers for all the questions.
However, to my surprise, I was not selected for further rounds. I'm still not clear on the specific reasons for this outcome, as I believed my approaches were sound.
Interview Questions (3)
There are 3 jars. One jar contains only orange fruits, one jar contains only apple fruits, and the remaining jar contains a mix of apple and orange. The mix need not be half half. All the jars given are mislabeled. Label the jars properly. Find the minimum number of fruits you need to take out to label all the jars correctly.
Given a matrix that is row-wise sorted and column-wise sorted. Given a target element, search it in the matrix. If the element is found in the matrix, return its indices or return 'Not Found'. The return should be string type.
Given a binary tree. Find the maximum height of the binary tree.
Summary
I successfully navigated the Expedia Group internship interview process, which comprised an Online Assessment, two technical interviews focusing on coding and object-oriented design, and a final behavioral round. I was delighted to receive an offer for the internship upon completion of all stages.
Full Experience
Online Assessment
My journey began with an Online Assessment that featured 3 or 4 coding questions, typically ranging from easy to medium difficulty. Additionally, there were about 10 Multiple Choice Questions covering data structures, algorithms, programming languages, and general computer science concepts. Only candidates who solved all the coding questions were advanced to the next stage.
First Technical Interview
After the OA, I proceeded to two back-to-back technical interviews. In the first technical round, I was asked to solve two coding questions and one puzzle. I distinctly remember one of the coding problems being the "staircase problem", though I can't recall the other one. The puzzle proved to be quite challenging for me. I successfully solved both coding questions, and we spent about 15 minutes discussing the puzzle.
Second Technical Interview
This round was heavily focused on object-oriented design. The interviewer presented two design-based questions, which led to a detailed discussion lasting approximately 30 to 35 minutes. Towards the end, I was asked to code a simple implementation-based question, and the interviewer verified its output. The coding questions encountered throughout the technical rounds covered topics like Binary Search, Dynamic Programming, and general implementation.
Behavioural Interview
A few days later, I received an email informing me that I was shortlisted for the Behavioural Interview. This interview was conducted by a member of the tech team and largely revolved around my projects. I was asked to elaborate in detail on two projects mentioned on my CV, along with questions about my college life experiences and how I got started with coding.
I found all three interviewers to be very supportive. Each interview commenced with brief introductions from both sides, and at the end of each round, I was given the opportunity to ask questions.
Approximately one week after my behavioral interview, I received a WhatsApp call from HR confirming that I had been selected for the internship.
Interview Questions (5)
During the first technical interview, I was asked to solve a coding problem commonly known as the 'staircase problem'.
In the second technical interview, one of two object-oriented design questions was presented. This involved discussing how to design a system or component using OOP principles.
Following the first design question, another object-oriented design problem was posed, requiring further application of design principles and critical thinking.
During the behavioral interview, I was asked to elaborate in detail on two specific projects that I had highlighted on my CV.
The interviewer inquired about my overall college life experiences and my personal journey of how I started learning to code.
Preparation Tips
My preparation focused on strengthening my coding skills in areas like Binary Search and Dynamic Programming, as these topics were explicitly mentioned as relevant. For the technical rounds, I practiced various coding challenges and also delved into object-oriented design principles to prepare for the design-based questions. For the behavioral interview, I thoroughly reviewed the projects listed on my CV and prepared to discuss my experiences, including my journey into coding and relevant college life activities.