Bloomberg | Summer Internship 2021

bloomberg logo
bloomberg
Software Engineering InternPune, IndiaRejected
August 7, 20215 reads

Summary

I interviewed for a Summer Internship position at Bloomberg in 2021. The process included a phone interview, a virtual on-site round, and a system design round, covering C++/OOP, Data Structures & Algorithms, and System Design, but I was ultimately rejected.

Full Experience

I interviewed for a Software Engineering Intern position for Summer 2021 at Bloomberg, based in Pune, India. My background is in Electrical and Electronics Engineering from a Tier 1 college in India. The interview process consisted of three rounds.

Round 1 (Phone Interview): This round began with self-introductions, followed by C++/OOP questions. I was asked about static variables in C++ and their uses, and to explain virtual functions in detail, discussing their role in runtime polymorphism. Following these, I was given two DSA problems. For the first, which involved designing an address book with bidirectional search (by name and by number), I only had to describe the approach and data structures. I believe I suggested using maps and a Trie. For the second DSA problem, which asked me to extract strings from innermost brackets in a given string (e.g., ran(n(d))o(m())'d', ''), I had to code the solution. I solved this by managing a depth variable and storing strings in an unordered_map<int, vector<string>>, returning strings at the maximum depth. I completed it quite quickly.

Round 2 (On-site Virtual): After introductions, this round included some HR-style questions, such as "Why Bloomberg?" Then, I was given a DSA problem, which was Design Underground System on LeetCode. Fortunately, I had solved this problem before, so I explained my approach thoroughly while coding it. After coding, we discussed edge cases, like potential integer overflows.

Round 3 (System Design): This final round was with a senior manager and began with introductions and a discussion about my resume. Despite having no prior experience with system design, I was asked to design an e-commerce website. It was an open-ended discussion, and the interviewer seemed satisfied with my final design.

Verdict: I was ultimately rejected. The feedback indicated that my primary reason for rejection was in the System Design round; I was moving too quickly between different components and needed to explain each component in more depth before proceeding to the next.

Interview Questions (7)

Q1
Static Variables in C++
Other

Explain what static variables are in C++ and discuss their typical use cases.

Q2
Virtual Functions and Runtime Polymorphism
Other

Explain in detail what virtual functions are in C++ and why they are used. Discuss their role in achieving runtime polymorphism.

Q3
Design an Address Book with Bidirectional Search
Data Structures & Algorithms

You are given a list of names with their phone numbers. You need to design an address book that supports the following searches efficiently:

  • Search via name (Return phone number)
  • Search via number (Return name)

Q4
Extract Strings from Innermost Brackets
Data Structures & AlgorithmsEasy

Given a string containing characters and always matched brackets, print all strings that are enclosed within the innermost brackets.
Example: If the input is ran(n(d))o(m()), the expected output is 'd', ''.

Q5
Design Underground System
Data Structures & AlgorithmsMedium

Implement the UndergroundSystem class. It supports three methods: checkIn, checkOut, and getAverageTime. The system tracks customer travel times between stations.

Q6
Why Bloomberg?
Behavioral

Explain your motivations for wanting to work at Bloomberg.

Q7
Design an E-commerce Website
System Design

Design the architecture for an e-commerce website.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!