Airbnb Software Engineer Interview Questions
Master your tech interview with our curated database of real questions from top companies.
Allocate refund across payments
Question Given a list of completed payment transactions (each with payment method, date, and amount) and a refund amount R, write an algorithm that is...
Design scalable notification system
System Design: Low-Latency, Multi-Channel Notification Platform You are asked to design a scalable, reliable notification system that can send message...
Design Connect-N winner detector
Question Design a data structure for the Connect-N game: pieces are dropped into a column (occupying the lowest empty cell). Implement move(column, pl...
Solve palindrome pairs and key path
Question LeetCode 336. Palindrome Pairs; LeetCode 864. Shortest Path to Get All Keys https://leetcode.com/problems/palindrome-pairs/description/ https...
Review Python geodata code
Question You are given a Python codebase that performs geolocation data processing. Conduct a thorough code review: identify readability, correctness,...
Walk through a project in detail
Walk Through a Significant Project Provide a deep-dive on one impactful project you led or contributed to. Cover: 1. Timeline: Start/end dates and maj...
Explain why you want to join Airbnb
Behavioral Prompt: "Why Airbnb?" (Software Engineer) Context In a technical screen, you may be asked to concisely explain why you want to join Airbnb....
Design split-stay combinations API
Design an HTTP API for Two-Listing Split-Stay Search Context You are designing search for a travel marketplace that supports split stays across two li...
Describe your role, motivations, and values
Behavioral HR Screen: Self-Introduction, Current Role, Motivation for Change, and Cultural Fit Context You’re in an initial HR screen for a Software E...
Describe self-learning and handling feedback
Behavioral and Leadership Prompts — Software Engineer (Technical Screen) Context: You will be asked to give concise, impact-focused answers (60–90 sec...
Design and implement an Airbnb wallet
Design an Airbnb-Style Wallet (OOD + Runnable Code) Context You are asked to design an in-app wallet system that supports both guests and hosts. The w...
Implement prioritized refund allocation engine
Implement a refund allocation function that takes: (a) a list of payments, each with a unique paymentId, method ∈ {CREDIT, CREDIT_CARD, PAYPAL}, ISO-8...
Design API for split-stay combinations
Design an HTTP API for Two‑Listing Split‑Stay Search Context You are building a search service for split stays: when a guest's date range cannot be co...
Review a geospatial Python module
You receive a Python module that processes geospatial datasets (CSV/GeoJSON) to compute distances, cluster nearby points, and write summaries. Perform...
Generate split-stay pairs efficiently
Given N Airbnb listings, each with available days as integers, and an inclusive requested date range [L, R], return all ordered pairs (X, Y) of distin...
Design a multi-channel notification system
System Design: Multi-Channel Notifications (Email, SMS, Push, In‑App) Context Design a notification platform that reliably delivers messages across mu...
Design an Airbnb wallet with holds and payouts
System Design: Airbnb-Style Wallet with Ledger, Holds, FX, and Idempotency Context You are asked to design and implement an Airbnb-style wallet system...
Check inorder subsequence and edit tree minimally
Given a binary tree whose nodes store integers and an array target, determine whether target is a subsequence of the tree's inorder traversal (element...
Compute split-stay listing pairs
Given a set of Airbnb listings, each with availability represented as a sorted list of day integers, and a requested inclusive date range [S, E], comp...
Maximize reward by scheduling jobs
Given n jobs, each with a start time, end time, and reward, choose a subset of non-overlapping jobs to maximize total reward. Return the maximum rewar...