Time to give back to the LeetCode community...
Status: 5.5 YOE
Position: Senior Software Engineer
Location: Pune
Date: November 2025
Application Process: Applied directly through the Bloomberg career site without a referral. The process consisted of 5 rounds in total.
Round 1: Online Assessment (OA)
- I took this online on hackerrank
- Note: I don't recall the exact questions, but they were Medium/hard leetcode problems.
Round 2: Technical Interview (On-site/Virtual On-site) Focus: Data Structures & Algorithms Question: Candy Crush variation.
- My Approach:
- I initially started with a Two Pointer approach.
- After discussing with the interviewer, I optimized/transitioned to a Stack-based solution to handle the removal and collapsing of characters more efficiently.
- The interviewer seemed satisfied with the final implementation.
Round 3: System Design (On-site/Virtual On-site) Focus: High-Level Design (HLD) Question: Design a ride-sharing service like Uber/Lyft.
-
Discussion:
- We discussed the high-level architecture, database schema, and core components (Driver matching, Location updates, etc.).
-
Where I struggled:
- I was not able to effectively discuss the trade-offs between different technologies (e.g., SQL vs. NoSQL for specific use cases, or CAP theorem implications).
- I struggled to provide solid reasoning for why I selected specific components over others.
Result: Rejected. Since I did not clear the bar for the System Design round, I did not proceed to Round 4 or 5.
Key Takeaways / Retrospective:
- DSA: Being able to switch approaches (from pointers to stack) was a positive signal.
- System Design: It is not enough to just draw the boxes. The "Why" is much more important than the "What." I need to focus more on justifying my choices (SQL vs. NoSQL, Consistency vs. Availability) and discussing trade-offs deeply.
Good luck to everyone preparing!