Taro Logo

Software Development Engineer I Interview Experience - United States

October 1, 2021
Positive ExperienceGot Offer

Process

All interviewers were friendly and unintimidating. 3 rounds, 45 minutes each, each being a one-on-one (just me and the interviewer (with different interviewers each time)): Behavioral, data structures and design with OOP, "problem solving" (actually coding). Round 1 - Behavioral: Interviewer was a young guy with 2 years of experience at Expedia. Very friendly. We talked about our backgrounds and he asked me (saying frankly that these would be "scripted" questions) questions about teamwork, communication, handling missed deadlines, as well as general inquires about projects I've worked on and work experiences I've had. Round 2 - Data Structures and Design: Interviewer was an older guy (still young). Same team as the first. This round was more serious, but still fairly light-hearted, with a focus on designing with OOP and choosing appropriate data structures. The code was not important here (and was mostly pseudocode); emphasis was on effectively communicating my thinking. Round 3 - "Problem Solving": Interviewer was newer to Expedia (4 months) but had about 4 years of industry experience prior. He spoke very well of Expedia's culture and benefits. This round was the "LeetCode" round. Code was fairly important here. He told me at the start that he had three problems, but that we would plan on only completing two of them, which was nice, because we ended up talking quite a bit about improving my solution for the second problem. First problem: extract a list of numbers from a list of strings such as ["A2D", "1B", "3F5", "67FE2", "AA"] such that the final result would be [2, 1, 3, 5, 67, 2]. I wrote a "gut instinct" solution that we then analyzed the time and space complexity of and spoke about optimizations (with no need to rewrite any code). Second problem: Given a staircase with number of steps 'n', find the number of ways one can reach the top if from any step you can take either 1 or 2 steps. My first approach was a top-down, recursive, dynamic programming one. After writing the simple function ... def find_num_ways(n): if n == 1: return 1 if n == 2: return 2 return find_num_ways(n - 1) + find_num_ways(n - 2) ... we discussed how the recursive branching results in O(2^n) time complexity. How to optimize? Memoization: cache the results so that find_num_ways only has to be called one time for each n. But even with that optimization, we both recognized that there was a better way. So after completing the top-down approach and analyzing it's time and space complexity, we set out to optimize for space, which was O(n) (considering recursive stacks and memoization). The solution? Abandon recursion for iteration. To calculate ways for n, you only need ways for n - 1 and n - 2, so we actually only needed O(1) space for caching. Moving from recursion to iteration also saved us O(n) stack space, leaving us with O(1) space overall. Though this problem was fairly simple and straight-forward, walking through the three variations of solutions proved useful for demonstrating understanding, and at the end, the interviewer told me I did "amazing" and seemed genuinely happy with the interview. Overall Impressions: Overall, my experience interviewing with Expedia Group came as quite a relief in contrast to other interviews I've had. Every interviewer was friendly and unintimidating, and all had good things to say about their company. On top of that, the questions they asked were completely reasonable for me to talk through and solve with them; I did not feel like I was being asked any trick questions or too many trivial questions which were ultimately irrelevant to assessing how well I would perform in the actual position. In my opinion, the folks I interviewed with at Expedia are doing this thing right, and it was a pleasure interviewing with them.

Questions

Questions included in my description.

Was this helpful?

Interview Statistics

The following metrics were computed from 17 interview experiences for the Expedia Group Software Development Engineer I role in United States.

Success Rate

53%
Pass Rate

Expedia Group's interview process for their Software Development Engineer I roles in the United States is on the easier side as most engineers get an offer after going through it.

Experience Rating

Positive71%
Neutral24%
Negative6%

Candidates reported having very good feelings for Expedia Group's Software Development Engineer I interview process in United States.

Expedia Group Work Experiences