Bloomberg | Senior Software Engineer | Pune | Rejected
Summary
I applied directly to Bloomberg for a Senior Software Engineer role in Pune with 5.5 years of experience. The interview process included an online assessment with medium/hard LeetCode problems, followed by a technical interview with a Candy Crush variation question and a system design round for a ride-sharing service. Despite a solid approach to the DSA question, I struggled with the system design round's trade-off discussions and was rejected.
Full Experience
After applying directly through Bloomberg's career site without a referral, I went through a 5-round interview process. The first round was an online assessment on HackerRank with medium to hard LeetCode problems. In the second round, I faced a technical interview where the question was a variation of Candy Crush. I initially tried a two-pointer approach but switched to a stack-based solution after discussing with the interviewer, which they found satisfactory. The third round was a system design interview where I was asked to design a ride-sharing service similar to Uber or Lyft. We discussed the high-level architecture, database schema, and core components like driver matching and location updates. However, I struggled to explain trade-offs between technologies like SQL vs. NoSQL and consistency vs. availability, which impacted my performance. The interview ended with a rejection as I didn't clear the system design round. I learned that while solving DSA problems is important, the system design round requires deep reasoning about trade-offs and justifications for design choices.
Interview Questions (2)
The problem was a variation of the Candy Crush game mechanics, where the task involved removing and collapsing characters in a sequence similar to the game. The exact details were not recalled, but the core challenge revolved around efficiently handling the removal and collapse operations.
The system design question required creating a high-level architecture for a ride-sharing service similar to Uber or Lyft. The focus was on the overall structure, including components like driver matching, location updates, and the database schema.
Preparation Tips
For the interview, I focused on practicing LeetCode problems, particularly medium to hard difficulty questions, as the OA included such problems. I also prepared for system design interviews by reviewing common design patterns and practicing high-level architecture discussions. However, I realized the need to improve my ability to justify design choices and discuss trade-offs in depth, which I plan to work on for future interviews.