Airbnb
Online marketplace for lodging with strong data science and infrastructure.
4 Rounds
~21 Days
Hard
The Interview Loop
Recruiter Screen (30 min)
Standard fit check, behavioral questions, and resume overview.
Technical Loop (3-4 Rounds)
Deep dive into domain knowledge, coding, and system design.
Interview Question Bank
Data Engineer
•
Coding
•
medium
Calculate the 7-day conversion rate of users. Given a `searches` table and a `bookings` table, write a SQL query to find the percentage of users who searched for a listing and successfully booked any listing within 7 days of their search.
#Joins
#Date Math
#Conversion Metrics
#Aggregations
Data Engineer
•
Coding
•
hard
Given a table of user page views with `user_id`, `timestamp`, and `page_url`, write a SQL query to group these events into sessions. A new session should start if there is a gap of 30 minutes or more between consecutive page views for a user.
#Window Functions
#Sessionization
#Time-series Data
Data Engineer
•
Coding
•
medium
Given a `bookings` table with columns `listing_id`, `check_in_date`, and `check_out_date`, write a SQL query to find all listings that have overlapping booking dates (double bookings).
#Self Joins
#Date/Time Functions
#Data Quality
Data Engineer
•
Coding
•
medium
Write a SQL query to calculate the 30-day rolling average of daily gross booking value (GBV) per region. The output should include the date, region, daily GBV, and the rolling average.
#Window Functions
#Rolling Aggregations
#Financial Metrics
Data Scientist
•
Coding
•
hard
Write a SQL query to find all hosts who have had 3 or more consecutive cancelled bookings. You are given a 'bookings' table with booking_id, host_id, created_at, and status ('completed', 'cancelled').
#Window Functions
#Gaps and Islands
#Advanced SQL
Data Scientist
•
Coding
•
medium
Given a 'searches' table and a 'bookings' table, write a SQL query to calculate the search-to-booking conversion rate for each city over the past 30 days, considering only searches that resulted in a booking within 7 days of the search.
#Joins
#Date Functions
#Aggregations
#Conversion Rate
Software Engineer
•
Technical
•
hard
Given two tables: `bookings` (id, user_id, listing_id, check_in, check_out, status) and `listings` (id, host_id, city), write a SQL query to find the hosts who have had more than 3 consecutive canceled bookings in the last 6 months.
#Window Functions
#Data Aggregation
#Complex Joins
Difficulty Radar
Based on recent AI-sourced data.
Meet Your Interviewers
The "Standard" Interviewer
Senior EngineerFocuses on core competencies, system constraints, and clear communication.
SimulateUnwritten Rules
Think Out Loud
Always explain your thought process before writing code or drawing architecture.