Cracking Bloomberg's Software Engineer Interview: Insights on Challenges and Offers

bloomberg | Software Engineer | Interview Experience

Interview Date: Not specified
Result: Not specified
Difficulty: Not specified

Interview Process

The interview process consisted of multiple rounds:

  • 10.9: Phone interview
  • 10.29: Two virtual interviews (VO1 and VO2) followed by an HR interview
  • 11.4: Technical interview with an Engineering Manager (EM)
  • 11.6: HR offer call

Technical Questions

  • Phone Interview:

    • Why Bloomberg?
    • Most challenging project.
    • LeetCode Easy: Given a social graph, find the first partner who meets certain criteria.
    • LeetCode 2062.
  • VO1:

    • Behavioral question about a project.
    • Problem: There are many TV shows, each with 10 episodes, and there may be a loss of subscribers. Find the nth episode where 70% of the users can still watch all 10 episodes.
      • Follow-up questions:
        1. Did you lose all your subscribers in the first episode?
        2. Have all users watched all 10 episodes?
        3. Code Logic Optimization: Optimize an if statement into something that doesn’t require logical judgment.
  • VO2:

    • Behavioral question about a project.
    • Problem: Given a Tesla Equity, a trader can update its daily price or remove its latest prices, while an analyst retrieves the latest, maximum, and average prices. All operations must be in O(1).
      • Follow-up: Reference to LeetCode 295, focus on the idea without implementation. Suggested using object-oriented design to model equity, trader, and analyst.

Tips & Insights

  • Engaged in discussions about work-life balance (WLB) and commuting during the interviews.
  • Asked about experiences, including disagreements with teammates and learning something new.
  • Discussed motivations for studying computer science and reasons for wanting to join Bloomberg.
  • For the system design interview, was asked to design Kafka, covering components such as producers, consumers, queues, topics, partitions, and brokers. Key points included ensuring durability, consistency, and availability in a distributed system context.