Bloomberg | Senior Software Engineer | Pune | Rejected
senior software engineerBloomberg SDE interview experience
SDE IBloomberg | Interview Experience | Senior Software Engineer | NYC | Nov 2025
Senior Software EngineerBloomberg | Interview Experience | Senior Software Engineer - 4+ YOE | NYC | Nov 2025
Senior Software EngineerSWE @ Bloomberg Interview | July 2025 | Reject | NYC
web dev7 more experiences below
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.
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.
Summary
I recently interviewed at Bloomberg for a Senior Software Engineer role in NYC. After successfully passing phone screens for three teams, I advanced to an onsite interview for one specific team. Unfortunately, despite a good experience, I did not receive an offer.
Full Experience
My interview journey with Bloomberg for a Senior Software Engineer position began with outreach from a recruiter. I was initially screened for three different teams, ultimately advancing to an onsite interview for one of them, though it did not culminate in an offer.
Phone Screen (3 teams)
Each phone screen followed a consistent format: 15-20 minutes dedicated to resume questions, followed by 20-25 minutes for a single coding question, and finally, 5-10 minutes for any remaining questions. The coding questions across all teams were drawn from older posts featuring Bloomberg-related problems found on LeetCode and their variations.
Virtual Onsite (1 team)
The virtual onsite interview consisted of two main parts: a coding round and a system design round. I understood that clearing these would lead to subsequent interviews with a Director, Engineering Manager, and HR.
Round 1: Coding + Resume
This round started with approximately 25 minutes of resume-based questions, which left limited time for the coding problems. I was asked two distinct coding questions:
- A variation of a graph BFS problem combined with frequency counting. I needed to determine the frequency count for nodes at a specific level, given the input.
- A Low-Level Design (LLD) problem focusing on a library checkout system, which also required writing relevant SQL queries.
Round 2: System Design + Scaling Experience
Similar to the coding round, the system design portion began with about 25 minutes of questions about my resume and experience with system scaling. The core system design question was based on a problem from the "Hello Interview system design" platform. Due to time constraints, it was crucial to move quickly, skipping straight to the core design, discussing tech stack choices, and addressing potential scaling issues.
Regrettably, I did not progress to the subsequent interview rounds.
Overall, I found it to be a great experience, and all the engineers I interacted with were very nice and experienced. I hope sharing this helps others in their preparation.
Interview Questions (3)
I was given a graph and needed to implement a variation of a Breadth-First Search (BFS) algorithm. The core task was to compute the frequency of nodes at a specific level within the graph, where the target level was provided as an input.
The task was to perform a Low-Level Design (LLD) for a library checkout system. This included designing the database schema and writing appropriate SQL queries to manage operations like checking out books, returning them, and tracking availability.
A system design question, specifically stated to be from the 'Hello Interview system design' platform. The focus during the discussion was on quickly moving to the core design principles, selecting an appropriate tech stack, and addressing potential scaling challenges.
Summary
I interviewed for a Senior Software Engineer position at Bloomberg in November 2025, undergoing several technical rounds. Unfortunately, I did not receive an offer to proceed further, but I am sharing the problems I encountered to assist others in their preparation.
Full Experience
My interview process for the Senior Software Engineer role at Bloomberg consisted of multiple rounds. The first round, lasting 60 minutes, focused on an algorithmic problem. Following this, I had a second 90-minute round that presented two distinct coding challenges. Finally, I participated in a 90-minute system design round. Despite my efforts, I did not receive an offer.
Interview Questions (4)
Design a web application capable of supporting user onboarding, password reset, requesting company information, and IT help requests. The system requires independent deployments. It's critical to ensure all requests are authenticated and validated, especially since highly sensitive financial information is being handled. The discussion covered trade-offs between various technologies and concepts:
- Databases (SQL vs. NoSQL, focusing on ACID and CAP theorems)
- Load balancing
- Caching strategies
- Blue/green deployments
- API gateways
- Cloud vs. on-premise infrastructure
- Considerations for reliability, scalability, and security
Summary
Applied for a web dev role at Bloomberg in NYC. After a standard HR screening round, I faced a technical interview with a mix of a coding problem and a code analysis question. The interview ended with a rejection.
Full Experience
After a standard HR screening round, I moved on to the technical interview. The first part was a coding problem: implementing the Insert Delete GetRandom O(1) data structure. I spent about 40 minutes working on this, which involved creating a hash map and an array to manage the random access efficiently.
The second part of the interview was a code analysis question. The interviewer showed me a polyfill for Array.prototype.forEach and asked me to explain what it does. The code included checks for null this, converting to an object, and iterating through the array with a callback. I spent 20 minutes analyzing the code and explaining its functionality, including the use of bitwise operations and polyfill patterns.
Despite the interviewer being very friendly and the questions being interesting, the overall experience was a rejection.
Interview Questions (1)
The interviewer provided a polyfill for Array.prototype.forEach and asked to explain its functionality. The code includes checks for null this, converting to an object, and iterating through the array with a callback. It uses bitwise operations to get the length of the array and handles the iteration with a while loop.
Summary
I had a 1-hour phone screen for a Senior SWE role at Bloomberg in Frankfurt. The interview involved a 30-minute resume discussion and a 30-minute coding session on HackerRank, where I tackled a problem similar to 'Minimum Remove to Make Valid Parentheses'. Despite solving it, I was rejected in a week.
Full Experience
The interview was 1 hour long. 30 mins for resume, 30 mins for coding. HackerRank was used. Got this problem https://leetcode.com/problems/minimum-remove-to-make-valid-parentheses/description/ Description was slightly changed, but the approach for solving remained the same. Figured out the approach, implemented the solution. Got rejected in a week.
Interview Questions (1)
Summary
I had a telephone screen with Bloomberg where I was asked to design a data structure for a horse race with specific add and get methods.
Full Experience
Design data structure for a horse race, where we will have two methods.
add(string horseName, int checkpoint)
Updates the position of the horse. This method will be called for all the checkpoints horse crosses. Checkpoints are in increasing order.
get()
Return name of the horses, one with the highest checkpoint first When two horses are at the same checkpoint, print horses in the order which reached that checkpoint first.
Example.
Input.
["HorseRace","add","add","get","add","get","add","get"]
[[],["A",1],["B",1],[],["C",1],[],["B",2],[]]
Output.
[null,null,null,["A","B"],null,["A","B","C"],null,["B","A","C"]]
Interview Questions (1)
Design data structure for a horse race, where we will have two methods.
add(string horseName, int checkpoint)
Updates the position of the horse. This method will be called for all the checkpoints horse crosses. Checkpoints are in increasing order.
get()
Return name of the horses, one with the highest checkpoint first When two horses are at the same checkpoint, print horses in the order which reached that checkpoint first.
Example.
Input.
["HorseRace","add","add","get","add","get","add","get"]
[[],["A",1],["B",1],[],["C",1],[],["B",2],[]]
Output.
[null,null,null,["A","B"],null,["A","B","C"],null,["B","A","C"]]
Summary
I recently completed interviews with Bloomberg for a Senior Software Engineer position in London, which involved a phone screen, two onsite rounds covering data structures, algorithms, and system design. My application was ultimately rejected.
Full Experience
I recently finished some interviews with bloomberg for Senior Software Engineer Role in London, UK.
Phone Screen -> Q1 -> https://leetcode.com/problems/invalid-transactions/description/ Q2 -> Implement a stack with functionality of push , pop and getMin.
Onsite 1 ->
Q1 -> Number of triangles that can be created from given array. Two points , O(n^2).
Q2 -> https://leetcode.com/problems/word-search/description/
Onsite 2 -> Design a stock broker app like Robinhood. Had some discussion on how to handle order placement based on customer account balance. Weird thing was they ask me to jump into design right away without defining the entities, apis and all.
Interview Questions (5)
Implement a stack with functionality of push, pop, and getMin, all in O(1) time complexity.
Given an array of non-negative integers, find the number of triplets (i, j, k) such that they can form sides of a triangle.
Design a stock broker application similar to Robinhood. Discussed handling order placement based on customer account balance. The interview prompted immediate design discussion without prior entity or API definition.
Summary
I successfully applied for the Bloomberg 2025 Software Engineering Summer Internship in November and received an offer in March after completing multiple interview stages including technical coding, system design, HR, and engineering manager discussions.
Full Experience
Bloomberg 2025 Software Engineering Summer Internship
Applied through their website's job listing in November. After multiple stages, a few delays and rescheduled interviews, I received my offer in March.
University: Top 120 QS World Rankings
Status: 1 year of intern experience @ Swiss Bank
Position: SWE Intern
Location: London, United Kingdom
1. Technical Intro Interview (60 Minutes)
- The first half hour of this intro involved asking me about my background and experience, things I had on my CV, and why I had applied for the position.
- The second half was assesing my approach to a question very similar to Problem 1941; with an extra rule added during the interview after my original solution to increase the complexity slightly. I had to explain my approach in terms of time complexity and display knowledge of data structures.
- Problem_Description []
Create a function that returns true or false
depending on whether the string passed in is
valid or not.
A string is valid if all characters have an equal
number of occurrences within it.
You may also remove one character from the string
to make it valid.
</code><br/><br/>2. Technical Coding Interview (60 Minutes)<br/> - This interview was purely technical, with a much larger focus on Big Oh notation and time complexities. I was tasked with ensuring that the entire system ran at O(1), and to ignore memory.<br/> - <code>Problem_Description []
Create a lottery storage system that would allow you to add,
remove and pick participants. This storage system must run
at O(1) and participants must be picked at random.
Functions to implement:
void LotterySystem() - Create Lottery object
boolean addParticipant(int id) - Add a participant (Unique id)
return true when successfully added
return false if they cannot
be added
boolean removeParticipant(int id) - Remove a participant (Unique id)
return true when successfully removed
return false if they could not
be removed
int randomPick() - Randomly select a lottery winner and return
their ID.
Return -1 if there are no participants left.
</code><br/> - I was also briefly questioned on my knowledge of JUnit testing, and what approaches to take to ensure such the system works as intended.<br/><br/>3. Technical Design Interview (60 Minutes)<br/> - During this interview I was tasked with designing a system that allows users to look at a real-time stock price feed for a specific stock, view the history of prices for that stock and more. (Helpful reading in relation to this can be found on harshsavasil's medium article [can't link due to discuss rules])<br/><br/>4. HR Interview (30 Minutes)<br/> - Asked about my ambitions, why I want to work at Bloomberg, how I approach working alone and with a team, and more. Completely avoided technical questions but drew from my CV. A lot of discussion relating to Bloomberg's values and philanthropic efforts was held here.<br/><br/>5. Engineering Manager Interview (60 Minutes)<br/> - This was similar to the HR Interview, they asked about my background and experience, delving deeper into the technical elements, and my interests into software engineering specifically as a career path.<br/><br/>Overall, I had a positive experience in my application process, although one interview felt very off as the interviewer seemed disinterested in the process. On a positive note, the campus recruitment team were very communicative throughout the process, and I look forward to joining the company for the summer.
Interview Questions (5)
Create a function that returns true or false depending on whether the string passed in is valid or not.
A string is valid if all characters have an equal number of occurrences within it. You may also remove one character from the string to make it valid.
Create a lottery storage system that would allow you to add, remove and pick participants. This storage system must run at O(1) and participants must be picked at random.
Functions to implement: void LotterySystem() - Create Lottery object boolean addParticipant(int id) - Add a participant (Unique id) return true when successfully added return false if they cannot be added boolean removeParticipant(int id) - Remove a participant (Unique id) return true when successfully removed return false if they could not be removed int randomPick() - Randomly select a lottery winner and return their ID. Return -1 if there are no participants left.
Design a system that allows users to look at a real-time stock price feed for a specific stock, view the history of prices for that stock and more.
Asked about my ambitions, why I want to work at Bloomberg, how I approach working alone and with a team, and more. Completely avoided technical questions but drew from my CV. A lot of discussion relating to Bloomberg's values and philanthropic efforts was held here.
This was similar to the HR Interview, they asked about my background and experience, delving deeper into the technical elements, and my interests into software engineering specifically as a career path.
Preparation Tips
My advice to those preparing for applications to this company would be to have confidence in speaking on your experiences and research Bloomberg and what they are up to, then align on how and why you would fit into their workplace culture.
Summary
I successfully landed an offer at Bloomberg after extensive preparation, leveraging LeetCode and specific Bloomberg resources. The interview process was straightforward, covering data structures, algorithms, system design, and behavioral questions, with a focus on problem variations.
Full Experience
I had been diligently preparing for interviews since October 2020, and I must say, this platform and its community were instrumental in helping me secure an amazing offer at Bloomberg. It feels right to share my journey.
My interview process began with a Phone Interview. We discussed the longest substring without repeating characters, which I solved quite quickly. I noticed that many problems were variations of common themes, but always approachable. We also had a system design overview of an LRU cache; there was no coding, just a detailed discussion of the problem and my approach.
The Interview Day consisted of two main sessions. In the first interview, I tackled two questions: first, finding all unique subsets, and then immediately followed by finding unique subsets with duplicates included in the input. The second interview also featured two questions. I was asked to design a data structure for O(1) insert/delete/getRandom operations. The next question involved stock ticking, which had similarities to a leaderboard design problem. I also had a behavioral interview, which was seamless—I just focused on being myself and taking it easy.
Finally, I interviewed with a Senior Engineer. As an ML/AI engineer, we spent a significant amount of time discussing my prior experience. Surprisingly, the engineer presented me with the two sum problem, but we explored every possible variation, nearly five similar questions under the two sum umbrella. They wanted me to articulate my code line-by-line.
I managed to code almost every question perfectly, except for the stock ticking problem. I admit, I psyched myself out a bit, even though I knew a hashmap/priority queue approach was my best bet. I believe I navigated this question successfully by communicating my best solution, even though I was a bit stumped on the exact syntax implementation. It's crucial to remember that you can always ask if you can look something up; I completely forgot I had that option! I was elated to receive the offer, especially after struggling slightly with that stock ticking problem.
Interview Questions (7)
Design and implement a Least Recently Used (LRU) cache. It should support get and put operations. The get(key) method should retrieve the value of the key if it exists, otherwise return -1. The put(key, value) method should insert or update the value. If the number of keys exceeds the capacity from this operation, it should invalidate the least recently used key before inserting a new item.
I was asked a stock ticking problem, which is conceptually similar to designing a leaderboard. It involves processing real-time stock price updates and maintaining some form of aggregate data or ranking, potentially requiring efficient updates and queries.
Preparation Tips
My primary resources included the official Bloomberg Prep List and Phone Interview List available on LeetCode. I also utilized a comprehensive Cohesive Notion List and extensively practiced problems tagged with 'Bloomberg' on LeetCode. Additionally, I found it beneficial to switch up my study methods by watching YouTube explanations of problems, practicing basic data structures on Codecademy, and reviewing algorithms on Programiz to keep my brain engaged and avoid burnout.
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)
Explain what static variables are in C++ and discuss their typical use cases.
Explain in detail what virtual functions are in C++ and why they are used. Discuss their role in achieving runtime polymorphism.
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)
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', ''.
Explain your motivations for wanting to work at Bloomberg.
Design the architecture for an e-commerce website.
Summary
I successfully completed two rounds of interviews for a Software Engineer Summer Internship at Bloomberg in London, which included coding challenges on data structures, algorithms, and a system design problem. I received positive feedback and have been invited for a final system architecture interview.
Full Experience
Hello everyone, I am sharing my interview experience with Bloomberg for the "Software Engineer - 2021 Summer Internship - London" position. I believe this experience could also be relevant for entry-level or new grad roles. After applying online, a recruiter reached out to me to schedule a phone interview with one of Bloomberg's software engineers.
First Round (Phone)
The interviewer called me precisely on time. He started by introducing himself and the team he works with, then gave me time to introduce myself. Following this, he directed me to a HackerRank link provided by the recruiter for the coding challenge.
The first question asked was to find the first non-repeating character in a string. My initial approach involved a two-pass traversal using either a hashmap or a fixed array for character counting, and I made sure to explain the trade-offs between these two options. A follow-up question then challenged me: "What if the string was very long? How could I optimize the solution?" In response, I introduced a one-pass solution, suggesting either using an extra field within the hashmap to store the first index where the character was seen, or leveraging a linked hashmap. The interviewer seemed satisfied with both of my proposed solutions.
He didn't ask me to compile the code but rather to trace it and discuss its complexity. Towards the end, he gave me an opportunity to ask questions about the company or anything else on my mind.
After three days, I received positive feedback from the recruiter, inviting me to virtual on-site interviews.
Second Round (Virtual Onsite)
This round was a video interview conducted with two Bloomberg Software Engineers. We exchanged introductions, and then they provided a HackerRank link for the coding challenges.
The first question was to Validate a BST. I discussed an in-order traversal "like" approach, presenting both recursive and iterative solutions. I then proceeded to write the code for the recursive approach. They did not ask me to compile it; we focused on discussing its complexity.
The second question was to Design an Underground System. Before diving into the solution, I asked for clarification on whether the system was directed or undirected. One of the interviewers seemed quite pleased with this question and clarified that it was directed. I then discussed my approach, which involved using hashmaps and some C++ Structs. I explained the solution's complexity and clarified special cases, such as handling division by zero. Again, they seemed content with my explanation and did not ask me to compile the code.
Three days later, I again received positive feedback from the recruiter, inviting me to a system architecture interview with one of their senior software engineers. This is where I currently am in the process.
Interview Questions (3)
Preparation Tips
Based on my experience, I strongly advise focusing on LeetCode questions for preparation. Specifically, I found it very beneficial to practice questions tagged for Bloomberg, as all the questions I received were Bloomberg-tagged LeetCode problems.