Background
- 3 years 3 months experience
- Currently SWE at a FAANG company in India
- B.Tech CS, Tier 1
- Current comp: ₹33 LPA
- Applied directly via Uber careers portal (no referral)
Timeline
- Recruiter email ~5 days after applying
- Business Phone Screen ~3 weeks after recruiter call
- Onsite loop followed: 2 DSA + 1 HLD + 1 Behavioral
Round 1 — Recruiter Screening
Alignment/fitment discussion:
- Current role and experience
- Why looking to switch
- Projects, backend vs frontend experience
- Technologies and overall background
Result: Cleared.
Round 2 — Business Phone Screen (DSA, 60 min)
Question: First Unique Number — ~99% similar to the LeetCode problem. Solved with the optimal approach (HashMap + ordered structure).
Result: Hire → moved to onsite loop.
Round 3 — DSA (Onsite)
Question: Design Hit Counter — variant with three methods: put(element), getCount(element), getTotalCount() (total across all elements).
Solved it.
Result: Hire
Round 4 — HLD (Onsite)
Question: Design a chat application similar to ChatGPT — start a new chat, continue a previous chat, and related requirements.
I'd prepped HLD mostly with Hello Interview. But during the actual round, I got stuck in a few places and made several silly mistakes. Couldn't recover well enough.
Result: No Hire
Round 5 — DSA (Onsite)
Question: My Calendar I — ~99% similar to the LeetCode problem (book events without double booking).
Result: No Hire
(Even though the problem was standard — this suggests code quality / communication mattered, not just correctness.)
Round 6 — Behavioral
Questions:
- Tell me about a conflict and how you resolved it
- Your most challenging project
- A time you received critical feedback
- A time you wrote suboptimal code due to time constraints
- Other collaboration scenarios
Result: Hire
Final Outcome: Rejected
The DSA problems were all solved completely, yet the rejection came. Two rounds (HLD + one DSA) were No Hire.
Key Lesson
Solving the problem isn't enough at Uber. From the candidate's own words: even after solving both DSA questions completely, the rejection came down to needing "excellent, modular, and production-ready code." Correctness is table stakes — clean structure, modularity, and communication separate Hire from No Hire.
Preparation Notes
- DSA: ~250 problems solved (75 easy, 150 medium, 25 hard). Recommendation: get LeetCode Premium, focus on Uber company-tagged questions, and write production-quality code.
- Behavioral: Prepared with Hello Interview material — created stories from real experiences mapped to common behavioral questions. A couple of focused days here gives great ROI.
- HLD: Followed Hello Interview. (The weak point this time — practice recovering when you get stuck mid-design.)
Tips for Uber SDE-2 Backend
- Write modular, production-ready code — Uber rejects clean solvers who write messy code.
- HLD is a real filter — practice out loud, and practice recovering gracefully from mistakes mid-interview.
- Company-tagged LeetCode Premium questions are worth it for Uber.
- Behavioral prep pays off — map real stories to STAR ahead of time.