What to Expect in the Expedia System Design Interview

The Expedia system design interview is one round in the final loop, running about 45 minutes. You design a travel-flavored system on a virtual whiteboard: a flight booking flow, a pricing and availability service, or a payment system. Candidates report the difficulty as easy to medium compared with other large tech companies. The round tests decomposition, which means breaking a system into clear parts, plus basic trade-off judgment. Clear structure and steady narration matter more than exotic techniques here.

A system design interview tests planning, not code. You define requirements, sketch parts, choose data stores, and explain costs and benefits out loud.

The Question Types Expedia Asks

  • Booking flows. Design a real-time flight or hotel booking system. This tests correctness: one seat must not sell twice.
  • Pricing and availability. Design a service that serves fresh prices under heavy read traffic. This tests caching and freshness trade-offs.
  • Payments. Design a payment processing flow. This tests idempotency, meaning a retried request cannot charge twice.
  • General product systems. Some candidates report non-travel questions too, such as a delivery app. The evaluation stays the same: decomposition, storage choices, caching, and scale.

Signature Walkthrough: Design Flight Booking

The flight booking question fits Expedia exactly, so prepare it first. Here is the high-level shape.

Requirements. Users search flights by route and date. They see seat availability and price. Booking reserves a seat and takes payment. Search traffic is far larger than booking traffic. State these requirements back to the interviewer before drawing.

API and data model. Expose three main calls: search, get fare details, and book. Store flights, fares, seats, and bookings in separate tables. Fares change often, so store them with a timestamp and a validity window.

Search path. Serve search from a cache and a search index, a structure built for fast filtered queries. Accept that cached fares can be minutes old. Say this staleness is a deliberate choice, verified later at checkout.

The hard part: the price can change. Between search and booking, the fare may move. Re-verify the fare at booking time and show the user any difference. This re-check step is the honest design, and interviewers reward candidates who name it.

Booking and payment. Reserve the seat with a short hold, a temporary lock that expires in minutes. Then charge payment with an idempotency key per attempt. Confirm the booking only after payment succeeds. If payment fails, the hold expires and the seat returns automatically.

Scale and failure. Shard the database by flight or route, which means splitting data across servers by that key. Cache aggressively on the search side. If the pricing source is slow, serve cached fares and mark them as estimates. State your numbers: searches per second, bookings per day, cache size.

A note on popular routes. A few routes receive a large share of searches around holidays. Mention this skew before the interviewer does. Dedicated cache entries and pre-warmed capacity for those routes handle the spike. Small additions like this one separate senior answers from average ones.

What Interviewers Probe

  • Decomposition. Can you name the services and their boundaries in the first ten minutes? A clear block diagram early sets the tone.
  • Consistency boundaries. Strong consistency for seats and payments, eventual consistency for search and reviews. Saying this pairing plainly is a senior signal.
  • Caching judgment. Where do you cache, for how long, and what happens when it is stale?
  • Failure plans. Describe what the user sees when a dependency fails. A design without failure handling reads as junior.

How to Prepare

TAGS
System Design Interview
CONTRIBUTOR
Arslan Ahmad
Arslan Ahmad
ex-FAANG engineering manager and author or Grokking series.
-

GET YOUR FREE

Coding Questions Catalog

Design Gurus Newsletter - Latest from our Blog
Boost your coding skills with our essential coding questions catalog.
Take a step towards a better tech career now!
Explore Answers
Why do you want to join Shopify?
How to explain past projects in software engineering interviews?
What is an example of good feedback for a recruiter?
What to Expect in the Scale AI System Design Interview
Scale's design round lives in its domain: data annotation pipelines, LLM evaluation systems, and human-in-the-loop infrastructure where quality is a measurable output. How to prepare.
What Is the Instacart Interview Process Like? (Round by Round)
Instacart's reported stages: a recruiter screen, a technical phone screen, and a virtual onsite of four to five rounds, in about two to four weeks.
Why do tech companies have so many interview rounds?
Related Courses
New
Grokking the AI System Design Interview course cover
Grokking the AI System Design Interview
Learn to design AI systems the way interviewers expect: classic ML products, LLM and RAG architectures, and agentic systems, all through the lens of the system design interview.
4.6
(3,192 learners)
Discounted price for Your Region

$123

Grokking the Coding Interview: Patterns for Coding Questions course cover
Grokking the Coding Interview: Patterns for Coding Questions
The 24 essential patterns behind every coding interview question. Available in Java, Python, JavaScript, C++, C#, and Go. The most comprehensive coding interview course with 543 lessons. A smarter alternative to grinding LeetCode.
4.6
Discounted price for Your Region

$197

Grokking Modern AI Fundamentals course cover
Grokking Modern AI Fundamentals
Master the fundamentals of AI today to lead the tech revolution of tomorrow.
4.1
Discounted price for Your Region

$72

Design Gurus logo
One-Stop Portal For Tech Interviews.
Copyright © 2026 Design Gurus, LLC. All rights reserved.