Interviews I failed and learnings…

Aishna Gupta
3 min readJul 12, 2021

Hey there! Welcome back to another interview story. In this story, I have shared my failed interview experiences and what I feel is the cause of these failures. I’ve also tried to share the question asked, wherever possible…

1. UBER Interview

I could get past only 2 rounds and then got eliminated. Here is what happened.

I had applied for some roles (via the Uber Careers website) and was later contacted by a recruiter for scheduling interviews.

Round 1 – 45 minutes

This was a DS and Algorithm round. The question asked was:

https://leetcode.com/problems/unique-paths/

Follow up:

https://leetcode.com/problems/shortest-path-in-a-grid-with-obstacles-elimination/

Round 2 – 1.5 hr

I was not aware that this round is 1.5 hours long. The email I received said that is a 45 minutes interview but 15 minutes before the interview I got a call from the recruiter that this round is 1.5 hr long. And since I recently started appearing for SDE 2 interviews, I wasn’t aware that this round is called as ‘Machine Coding Round’. So anyway, here is what I was asked:

Question: Design a ‘concurrent in-memory publisher-subscriber system’.

This system should have multiple topics that a consumer can subscribe to. A publisher can publish to one topic. And multiple consumers can subscribe to this topic. For simplicity, the problem was limited to 1 consumer reading from only 1 topic. There should be a deliver() method that delivers the message to all the consumers.

I wasn’t aware of how to make it concurrent (I couldn’t think of threads because of interview nervousness 😬), so the interviewer asked me to start by designing the system with 1 publisher, 1 consumer, and 1 topic. I tried using queue and came by with some architecture for making this work.

Then, the interviewer asked me to upgrade this system to support multiple consumers on 1 topic. I expanded the queue to add more consumers. Then the interviewer asked me how would I change my system to handle situations where the consumer becomes inactive temporarily due to some reasons. The system should deliver all the remaining messages once the consumer is active again.

And then we had a discussion on making this system concurrent.

So, this is what all happened during this round. Overall, it was a nice interview experience. I got a flavor of how the SDE-2 interview looks like. I realized that I wasn’t prepared well for LLD and HLD rounds and need to work more in this department.

PS: I did not hear back from the recruiter. So maybe I wasn’t good enough to be selected but neither was I bad enough to receive a rejection email. 😝

2. Swiggy Interview

Round 1: Hackerrank Test (75 mins)

There were 3 questions of easy-medium difficulty.

Round 2: Machine Coding – 2 Hour

Question – Design a Splitwise system to support equal and percentage-wise splitting between multiple users – https://workat.tech/machine-coding/editorial/how-to-design-splitwise-machine-coding-ayvnfo1tfst6

Round 3: DS & Algo – 60 mins

Question 1: Given n dice with m faces. Find the number of ways in which we can get a sum X from them.

Question 2: Max path sum of a binary tree – https://www.geeksforgeeks.org/find-maximum-path-sum-in-a-binary-tree/

Round 4: Hiring Manager

This was a nice discussion regarding what is the role, what is the department and team in specific. What are the responsibilities of an SDE – 2.

This was followed by a discussion on what project I work on in my organization.

I did not get back any response from the recruiter. However, the recruiter did share feedback after every round and again LLD was the weakest link here.

Suggestion: Focus on LLD and HLD concepts. Try picking up problems and designing their solutions before reading the solutions provided by others. Take help peers/seniors in reviewing your solutions.

--

--