My Bloomberg SDE Interview Experience
So, in November 2022, I applied for the role of Software Development Engineer on the career portal of Bloomberg for a few locations. In December, I received an email saying that I was shortlisted for the interview for Bloomberg Frankfurt, and I was supposed to schedule it in one of the given slots for January 2023. So, I booked the slot for the 20th of January, 2023.
However, Bloomberg visited my college for an on-campus recruitment drive for the location of Pune on the 17th of January, 2023. This was for a full-time role. So, I had another opportunity to apply for Bloomberg. I’m excited to share my experience with anyone preparing for an interview at Bloomberg or curious about their hiring process. Read on for a detailed account of my journey and a few resources and tips that might help you succeed!
Overview
Summing up the whole recruitment process, it looked something like this:
- Firstly, an initial screening test was conducted comprising coding questions and MCQs. After clearing the test, I had to give a DSA interview on the same day.
- On clearing this interview, I had to give a System Design interview after a week.
- After clearing that, I had the Managerial Round after a few days.
- The result came in after some days. I was selected for the role! ✅
So let’s jump into the interview experience!
Round One: The Screening Test
Platform: Hackerrank
Mode: Offline (In college labs)
Time: 1.5 hours
Difficulty: Medium — Hard 🟠
As I had been studying for the Bloomberg Frankfurt interview, I was prepared for the initial screening test and the DSA interview. The test consisted of 4 Coding questions (Two worth 50 marks and two worth 75 marks) and 21 MCQs (Each worth five marks). I solved one 75 marks question, two 50 marks questions perfectly, and the other 75 marks question partially (4/13 test cases), along with a decent amount of MCQs.
The MCQs were based on various topics ranging from Data Structures and Algorithms, Operating Systems, and DBMS to System Design concepts like Load Balancers and Decoupling of services. On the other hand, the DSA questions were based on topics like Arrays, Strings, Recursion, Dynamic Programming, Sorting, and Greedy Algorithms.
Around 300 students had registered for the initial screening test. I was one of the 25 students to get shortlisted.
Round Two: The DSA Interview
Platform: Hackerrank Code Pair
Mode: Offline (College)
Time: 1 hour
Difficulty: Medium 🟠
My interviewer was one of the Team Leads at Bloomberg Pune. He rejoined Bloomberg around May 2020, before which he worked for multiple banks and hedge funds for over 18 years. The interview started with his introduction, followed by a short introduction by me. Then we proceeded directly to the coding question, which was already open on his laptop. He asked me to code it on his laptop since mine was about to get discharged, and getting the charger would be a hassle. 😅
The question was a Leetcode-Medium level question. I had never encountered it before, but figuring out the solution on the spot was not a difficult task. It was divided into two parts. I solved the first part using an unordered map and an unordered set. And I solved the second part using an unordered map and priority queue.
After this, we discussed the internal working of hashmap and collision resolution mechanisms. Note that this was more of a discussion than a question-answer session. There were also a few questions based on my resume. Following this, he asked whether I had any questions. I asked a few questions, and we had a lively discussion about Bloomberg’s work culture. The interviewer was very friendly and did not make me feel nervous throughout the interview.
Some tips for the DSA round:
- Keep your concepts clear. Bloomberg doesn’t ask hard questions, as observed by me and some friends.
- Don’t jump straight to coding. Ask questions for clarification.
- Think out loud.
- Try to cover as many edge cases as possible.
- Don’t be rigid with your approach. Try to be flexible.
Resources to prepare for the DSA round:
- Striver’s YouTube Channel (I highly recommend his Recursion and DP series)
- GeeksForGeeks and Leetcode (Practice solving questions)
A total of 11 students were shortlisted for the next round, which would be in their Pune Office.
Round Three: The System Design Interview
Platform: Hackerrank Code Pair Whiteboard
Mode: Offline (In-office)
Time: 1 hour
Difficulty: Medium — Hard 🔴
After my previous interview, there was a gap of around a week before the system design round. And as I was confident that my first round went well, I had sufficient time to prepare for the system design interview. I had a panel of 2 interviewers. One was the previous interviewer who had joined offline, and the other joined online. This interview began with another quick round of introductions. The second interviewer was also a Team Lead at Bloomberg Pune. She joined Bloomberg New York in 2018 and relocated to Pune in mid-2020. After the introduction, we jumped straight to the question.
The question was NOT a standard system design question where you are supposed to design a system which one might have been prepared for, for example, Instagram or a food delivery app. Hence, I was caught a bit off-guard by the question. I was supposed to design a system (high-level design) based on three components and a given structure for a database record.
I designed a system that I perceived to be good enough to scale and function as per the requirements. However, by the end of the interview, I felt that the panel wasn’t satisfied with the system. This made me lose some hope. Before the interview ended, I was asked if I had any questions. I asked a few questions that I had thought of after the previous round.
Tips for the System Design round:
- Ask questions, don’t jump straight to designing the system. Make sure that all the requirements are crystal clear.
- Keep your concepts clear. Interviewers might ask questions about introducing a particular component or a service. Don’t add or use anything without a good reason.
- Keep the interview interactive. System design rounds should be taken more as a discussion.
- If the interviewer asks you to try some approach, think about using it rather than rejecting or accepting it at once. And give reasons for rejecting or accepting, respectively.
- Don’t try to fit the question into a design pattern that you have studied. Be flexible with your thought process.
Resources to prepare for the System Design round:
- Gaurav Sen’s YouTube Channel: He has a very well-made playlist of System Design concepts and the system design of some standard applications. He also recently made a course on freeCodeCamp
- Yogita Sharma’s YouTube Channel: She has a few playlists about very well-explained HLD and LLD concepts and a few interesting mock interviews.
- Grokking Modern System Design Interview: A great course covering various concepts by designing some standard systems. You can find a PDF of the course here. Some components/systems discussed in this course seemed outdated or could have been done better. You can check out Jordan Baltes’ YouTube channel for an additional perspective. He has a system design questions playlist covering questions from this course.
- Arpit Bhayani’s YouTube Channel: He has a lot of in-depth videos on various system design concepts. A great place if you wish to learn System Design beyond interviews.
A total of 7 students were shortlisted for the final round.
Round Four: The Managerial Interview
Platform: Zoom
Mode: Online
Time: 1 hour
Difficulty: Easy — Medium 🟢
The interview was divided into two segments of 30 minutes each.
Part One: Interview with the HR
Time: 30 minutes
A senior recruiter at Bloomberg London conducted the first half of the interview. The interviewer had an experience of over two and a half years at Bloomberg.
The interview began with our introductions and mostly revolved around my internship and some general HR questions. I asked a few questions about the company at the end that I had while reading about the company.
Part Two: Interview with the Senior Manager
Time: 30 minutes
The second half of my interview was conducted by a senior manager at Bloomberg’s London office. Both interviews were conducted in isolation from each other. The interviewer had an experience of over six years at Bloomberg.
This interview focused on my projects and internships and some technical details. I asked a few questions around the end of the interview that I thought of during the interview.
Finally, three students were selected for the role. I was one of them! 🎉
Conclusion
Here are a few tips from me if you are preparing for an interview:
- The time given by Bloomberg between interviews for preparation is a lot. Make good use of it.
- Be confident while answering the questions you are asked.
- Review every detail in your resume/portfolio, especially your projects and internships.
- Be honest while answering the questions. Say NO if you don’t know about something they have asked.
- Research very well about the company and pay attention during the Pre-Placement Talks. It is vital for gaining insights about the company and framing some questions.
- Very Important: Be very patient. The whole recruitment process might take a long time, especially if it is off-campus.
Thanks a lot for devoting your time to reading all of this. I would appreciate any constructive comments. Best of luck if you are preparing for your interviews! ✌