Ramp Software Engineer Interview Experience — Four Onsite Rounds, No Offer
Company: Ramp
Role: Software Engineer
Round: Onsite
Seniority: General
Outcome: Rejected
Company: Ramp
Role: Software Engineer
Round: Onsite
Seniority: General
Outcome: Rejected
1. Coding (I'm posting the full original question)
Given a list of flights:
[
{
"departure_airport": "SFO",
"departure_time": "2021-10-26T16:15:00Z",
"arrival_airport": "JFK",
"arrival_time": "2021-10-26T21:34:00Z",
"user_id": 1
},
{
"departure_airport": "JFK",
"departure_time": "2021-10-29T18:31:00Z",
"arrival_airport": "MIA",
"arrival_time": "2021-10-29T21:36:00Z",
"user_id": 1
},
{
"departure_airport": "MIA",
"departure_time": "2021-11-15T15:10:00Z",
"arrival_airport": "MSY",
"arrival_time": "2021-11-15T18:21:00Z",
"user_id": 1
},
{
"departure_airport": "SFO",
"departure_time": "2021-10-28T11:47:00Z",
"arrival_airport": "SEA",
"arrival_time": "2021-10-28T14:02:00Z",
"user_id": 2
},
{
"departure_airport": "SEA",
"departure_time": "2021-11-04T03:47:00Z",
"arrival_airport": "JFK",
"arrival_time": "2021-11-04T09:12:00Z",
"user_id": 2
}
]
Part 1: get_user_with_most_flights()
Part 2: get_user_location(time)
The problem itself wasn't hard — a classic binary search question. But I had to figure out on my own how to import the file (the file and the test weren't even in the same folder), and I wasn't that familiar with writing tests in pytest, so I spent some time exploring. In the end I didn't get it bug-free, which is probably the main reason I failed this round — kind of a shame.
2. AI Coding
The AI coding round was a multi-source data reconciliation problem — I had to define the matching logic myself and align on it with the interviewer. It's a pretty classic reconcile-style problem, worth researching on your own.
The recruiter's guidance had already strongly hinted at the question, so I looked into it beforehand. Even so, I still wasn't totally sure how the interviewer was evaluating my level of AI usage during the interview.
3. Architecture
The recruiter's guidance explicitly said this round isn't a typical system design round — it's actually a project deep dive.
So I prepared a project and walked through it reasonably well. But near the end the interviewer spent the last twenty minutes asking a system design question, which the recruiter never mentioned would be part of this round — pretty unexpected. The question was how to aggregate the number of visits to your website over the past 1 minute.
4. Behavior
Very typical. Asked what project I was most proud of and why. I've forgotten the rest.