Uber | Software Engineer II (SE-2) | Bangalore | Interview Experience
Anonymous User
14106

A few months back, I applied through a referral at Uber.


Pre Screen Round - CodeSignal Test

My first step was a CodeSignal test with two coding questions.
I managed to solve both completely, passing 100% of all test cases.


Technical Screening

Focus: DSA
One coding question based on DP — solved successfully.
Given two strings, s and t, consisting only of lowercase English characters. Determine the minimum number of times s must be appended to itself for t to be a subsequence of the resulting string.

s: boy
t: oyb

ans: 2, "boyboy" - oyb is a subsequence of this.


Scheduling the Interviews

After about a week, the recruiter reached out to arrange the all the upcoming interviews.
They scheduled four rounds.


Interview 1 — Software Engineering - Algorithms & Data Structures (Coding 1)

Focus: DSA
2 questions were asked and before jumping to solution, strong focus of TC and SC.
1st: https://leetcode.com/problems/cheapest-flights-within-k-stops/
2nd: https://leetcode.com/problems/maximum-points-you-can-obtain-from-cards/description/


Interview 2 — Software Engineering - Depth in Specialization (Coding 2)

Focus: LLD
Problem:
Implement file system APIs:

  1. mkdir
  2. pwd
  3. cd

I was asked on focus on providing a working solution and that's it. mkdir and pwd were easy. cd was difficult with a wildcard: * that means the * could match any of '.', '..' or any children directory.


Interview 3 — Design & Architecture - New Problem

Focus: HLD

Design a backend system for an e-commerce website that displays merchandise. The system's scope is limited to the browsing experience, specifically excluding the purchase process. Popularity data should be used to select and highlight the top items.

I was asked to prepare an event processor that would handle vast amounts of events, such as 'Product added to Cart,' 'Product viewed,' 'Product wishlisted,' and 'Product purchased.' The questions posed to me were: 'Where should this data be stored?' and 'What should be prioritized: consistency or availability?'

Used all the widely used HLD concepts like:
Kafka for event ingestion.
Mongo DB for storing the product catalog.
Redis for Leaderboard of products and caching the top k items.

At the end, the interviewer asked to give the example of data what you will store in mongo because I added mongo in design but didn't make it clear on what I will store in it.


Interview 4 — Collaboration & Leadership

This round was scheduled but then cancelled.


Received an offer! Accepted.

Compensation

https://leetcode.com/discuss/post/7290286/uber-software-engineer-ii-bangalore-comp-rjb0/

Comments (13)