Bloomberg SDE interview experience
Summary
I experienced a three-round interview process for a Software Development Engineer role at Bloomberg, which included a coding challenge on implementing a simplified grep, a problem on calculating friend requests based on age rules, and a behavioral round.
Full Experience
I recently interviewed for an SDE position at Bloomberg, which consisted of three distinct rounds. The first round was a coding challenge where I was asked to implement a simplified version of grep. This involved finding lines in a file that contained a specific substring, with a strong emphasis on writing clean, extensible code that could accommodate future flag additions. I focused on clarifying requirements before diving into the parsing and string-matching logic.
The second round presented a problem where I needed to compute the total number of friend requests from an array of ages, based on specific age rules. My strategy involved first counting the frequency of each age. Then, I iterated over all possible pairs of ages (A, B) and applied the given rules: 0.5 × A + 7 < B ≤ A and A ≥ B. For same-age pairs, I made sure to exclude self-requests, while for different ages, I multiplied their frequencies directly to count valid requests.
The final round was primarily behavioral. These were very standard questions, and I approached them using the STAR framework. My aim was to demonstrate that I am self-driven and capable of showing ownership, as I understood they value these qualities over perfectly worded answers.
Interview Questions (3)
Implement a simplified version of grep that finds lines in a file containing a specific substring, with consideration for flag extensibility. The core of this question wasn’t about a complex algorithm, but rather demonstrating the ability to write clean, extensible code.
Given an array of ages, compute the total number of friend requests that satisfy specific age rules. For each pair of ages (A, B), a friend request is valid if B is in the range (0.5 × A + 7, A] and A ≥ B. When computing the number of valid requests, if A and B are the same age, exclude self-requests; if A and B are different ages, multiply their frequencies directly.
The round consisted of standard behavioral questions. The interviewers were not looking for perfectly worded answers but rather for indicators of self-drive and ownership from the candidate.
Preparation Tips
My preparation for the coding rounds involved practicing data structures and algorithms, with an emphasis on writing clean and extensible code as highlighted in the grep problem. For the friend request problem, I practiced problems involving counting frequencies and iterating through pairs with specific conditions. For the behavioral round, I focused on preparing stories using the STAR framework to demonstrate key soft skills like self-drive and ownership.