Airbnb Software Engineer Interview Experience — Phone Screen, Then a Five-Part Onsite With a Brutal Experience Deep Dive

Company: Airbnb

Role: Software Engineer

Round: Onsite

Seniority: General

Phone screen: LC 1235 Onsite 1. Coding: I prepared so much, and then they gave me a problem that wasn't from any of the interview-experience posts: ``` // 1: Any refund should be issued in full for a payment before considering next payment. // 2: Refund will be prioritized among different payment methods based on such order: CREDIT, CREDIT_CARD, PAYPAL. // 3: Refund should be issued to more recent payment. // Example 1 // Transactions: // Payment1: Credit, 2023-01-10, $40 // Payment2: Paypal, 2023-01-15, $60 // Input: // Refund amount: $50 // Output: // Refund a: linked to Payment1, Credit, $30 // Transactions: // Payment1: Credit, 2023-01-15, $40 // Payment2: Paypal, 2023-01-10, $60 // Payment3: Paypal, 2023-01-20, $40 // Refund1: linked to Payment1, $20 // List<String> // Refund 50 // refund a: linked to Payment1, credit, $40 // refund b: linked to Payment2, Paypal, $10 ``` Honestly the problem itself wasn't hard, but you had to handle the input/output strings yourself. I used Java, and with 45 minutes that also had to include small talk, I was pretty nervous, and it was just annoying. 2. Code review: the interviewer was genuinely helpful, you could tell he actually wanted to help. The content was about the same as the Python version already posted on the forum. 3. SD: design a notification system. 4. Experience deep dive: don't take this round lightly. The interviewer digs into the details — specifically the timeline and scope of every project you worked on, and exactly what everyone did — very, very closely. I originally thought this would be a traditional behavioral question, but I didn't answer it very well; there were some project details I just couldn't remember. 5. There's also a culture round — basically storytelling, why you like Airbnb. Addendum (2025-01-25 15:52 +08:00): I noticed there's an issue with the output for this coding problem — it's probably been too long and I made a typo when copying it over. From what I remember, for example 1 the output should be: Refund a: linked to Payment1, Credit, $40 Refund a: linked to Payment2, Paypal, $10 Example 2 is correct, because the payments before the Refund1 in the input already cover the $50 that needs to be refunded.

Airbnb Software Engineer Interview Experience — Phone Screen, Then a Five-Part Onsite With a Brutal Experience Deep Dive

Airbnb·Software Engineer·Aug 2026
OnsiteTechnical Screenmedium

Phone screen: LC 1235

Onsite

  1. Coding: I prepared so much, and then they gave me a problem that wasn't from any of the interview-experience posts:
// 1: Any refund should be issued in full for a payment before considering next payment.
// 2: Refund will be prioritized among different payment methods based on such order: CREDIT, CREDIT_CARD, PAYPAL.
// 3: Refund should be issued to more recent payment.

// Example 1

// Transactions:
//     Payment1: Credit, 2023-01-10, $40
//     Payment2: Paypal, 2023-01-15, $60
// Input:
//     Refund amount: $50

// Output:
//     Refund a: linked to Payment1, Credit, $30

// Transactions:
//     Payment1: Credit, 2023-01-15, $40
//     Payment2: Paypal, 2023-01-10, $60
//     Payment3: Paypal, 2023-01-20, $40
//     Refund1: linked to Payment1, $20
// List<String>

// Refund 50
// refund a: linked to Payment1, credit, $40
// refund b: linked to Payment2, Paypal, $10

Honestly the problem itself wasn't hard, but you had to handle the input/output strings yourself. I used Java, and with 45 minutes that also had to include small talk, I was pretty nervous, and it was just annoying.

  1. Code review: the interviewer was genuinely helpful, you could tell he actually wanted to help. The content was about the same as the Python version already posted on the forum.

  2. SD: design a notification system.

  3. Experience deep dive: don't take this round lightly. The interviewer digs into the details — specifically the timeline and scope of every project you worked on, and exactly what everyone did — very, very closely. I originally thought this would be a traditional behavioral question, but I didn't answer it very well; there were some project details I just couldn't remember.

  4. There's also a culture round — basically storytelling, why you like Airbnb.

Addendum (2025-01-25 15:52 +08:00):

I noticed there's an issue with the output for this coding problem — it's probably been too long and I made a typo when copying it over. From what I remember, for example 1 the output should be:

Refund a: linked to Payment1, Credit, $40
Refund a: linked to Payment2, Paypal, $10

Example 2 is correct, because the payments before the Refund1 in the input already cover the $50 that needs to be refunded.

Curated and edited by PracHub

Practice the questions from this interview

Airbnb Software Engineer Interview Experience — Phone Screen, Then a Five-Part Onsite With a Brutal Experience Deep Dive | Airbnb Interview Experience