Upstart Software Engineer Interview Experience — Four OA Problems, Not Enough Time

Upstart·Software Engineer·Mar 2026
Online AssessmentRejectedmedium

Time was way too tight, the problems were super long and wrapped in scenarios, so I spent forever just reading through them. I didn't pass all the test cases on questions 3 and 4, so I definitely failed this one.

Let me vent for a second too. I was job hunting around this same time last year, and it clearly feels way harder this year. Can people actually get all 4 of these problems bug-free within the time limit? Last year I almost never failed HR calls, OAs, or hiring manager calls. This year I've failed more than half of them. Maybe it's also that I'm a year older and my energy has really dropped.

  1. (10 minutes) Given a list of numbers, reverse the list but filter out the odd numbers. For example, if the list is (2,3,4), return (4,2).

  2. (10 minutes) Passing notes. A passes a note to B, B passes it to C, C passes it to A. But the note content is encrypted. For A-to-B and B-to-C, you're given the decoding keys. For C-to-A, you only have the final encrypted string. To decode C-to-A, you first use the B-to-C key to decode one string, then use the A-to-B key to decode the final string. Return the decoded C-to-A string.
    Input: string clearMsgAb, string cipheredMsgAb, string clearMsgBc, string cipheredMsgBc, string cipheredMsgCba
    Basically, from clearMsgAb and cipheredMsgAb you can derive A-to-B's cipher key. Same for B-to-C. Then you use those two keys to decipher cipheredMsgCba.

  3. (25 minutes) Casino buffet revenue. The restaurant has a max capacity. You're given a list where the index is the customer ID and the value is how much that customer is willing to pay. You're given another list where the values are customer IDs, representing that customer arriving or leaving — the first time a number appears means the customer arrived, the second time means they left. A customer can arrive multiple times. For example: (0,1,2,0,2) means 0 arrives -> 1 arrives -> 2 arrives -> 0 leaves -> 2 leaves. If there's no seat available, the customer just waits until it's their turn to leave. A customer who comes multiple times only pays once. Find the restaurant's total revenue.

  4. (15 minutes) Anagram. You're given a vocabulary list, and another input is a string made up of scrambled words. Each scrambled word is guaranteed to be an anagram of exactly one unique word in the vocabulary, and the first and last characters of the scrambled word match the original word. Decode the string.
    If you build a map using a key constructed from character counts, note that some words in the vocabulary can produce the same key. For example, the vocabulary might contain both "pears" and "spear." If the scrambled word is "seapr," you'd need to use the other given condition — first and last characters match — to map it to "spear."
    Input: list: (pears, spear, something); string: "seapr sothinmeg"

Published

Curated and edited by PracHub

Practice the questions from this interview

Discussion

Sign in to join the discussion. The author is notified of every comment.

Loading comments…

Interview at a glance

Company
Upstart
Role
Software Engineer
Rounds
Online Assessment
Outcome
Rejected
Difficulty
medium
Interview date
Mar 2026
Questions from this interview
4 questions

Real Upstart interview experiences

First-hand reports from Upstart candidates — the rounds, the questions they were asked, and how it went.

All 12 Upstart interview experiences