These posts have helped out so much for my preparation, so thought it best to give back as well! I applied to Bloomberg online and received an email to schedule a phone interview 2 weeks later.
Phone Screen
Was asked a quick behaviorial question (i.e Tell me about yourself) and then was given 1 easy and 1 medium question.
- Implement Sqrt function
- Asked error-bound checks (i.e can the result overflow? Can the parameter be negative?)
- Then talked about brute-force and optimized solution and coded up optimized
- 1-D Candy Crush
- Again asked clarifying questions
- Explained brute-force and optimized approach and implemented it
- Used the last few minutes to ask questions.
Result: Scheduled onsite about a month after phone screen
Virtual Onsite
As mentioned by others, everyone initially has 2 technical interviews and if you pass those you have 2 more.
Each technical interview had 2 engineers who did a resume review (~5-8 minutes) followed by 2 technical questions (~35-50 minutes).
Round 1 (Technical)
Talked about a project on my resume and answered up any follow-up questions about it (i.e why did you choose to use X technology? Why did you pick this project? What did you learn from this project?)
Be ready to answer any and all questions about your resume in a concise and thought-out manner. It would be unfortunate for you to be penalized for something that could have been prepared a day beforehand.
- First question was something along the lines of Populating Next Pointer for a Tree.
- Second question was a variation of Find All Paths from Source to Destination that could be found somewhere in these posts. They asked a few simple follow-ups, and just had to say my thought process.
- Last minutes were for my questions
Finished a few minutes early so had ~ 20 minute break before the next round. I used this time to drink some water, go to the bathroom, and calm some of the nerves that I was having.
Round 2 (Technical)
Same structure, but talked about a different experience on my resume
- First question was something along the lines of Find K Closest Elements
- Second question was variation of Top K stocks that was mentioned in previous posts
Answered both with time to spare, so was asked to stay on for another interview.
Round 3 (HR)
This round was ~30 minutes and was asked general behaviorial questions (i.e Why Bloomberg? Tell me about yourself. What are you looking for in a company?). This is basically a culture fit round. After that, they talked about the New Grad program and answered any questions I had about the company.
Round 4 (Manager)
This round was ~30 minutes as well and was mostly a conversation between me and a senior manager. The questions they asked me wasn't really design oriented, but did test my thought process and how I approached a problem. One thing that I found useful is that it is okay if you don't know something (i.e if you are not too familiar with locks and threading, communicate it with your interviewer!). It is so much better for you to admit you do not know a topic rather than trying to BS something for the next 10 minutes. The interviewers know you are a new grad and will not be expecting 100% correctness on this part.
Decision: Recieved an offer about a week later!
Post-interview Advice
- I know it has been repeated everywhere, but please please communicate with your interviewer.
- If they know what you are stuggling with, they can give hints/point you to the correct solution.
- One way that helped me improve my communication skills is to record yourself talking through a practice problem. It might be cringey, but it really helps you understand what you should improve on.
- Although the technical portion is probably the biggest factor in the offer decision, please do not neglect soft skills during the interview
- If you are even somewhat personable, this will benefit you in some way. At the end of the day, the interviewers are subconsciously asking themselves if you would be someone they would like to work with.
- There are posts on here where people struggle to answer a technical question, but still get the offer. It might be for a combination of reasons, but it goes to show that the decision is not entirely based off of your leetcoding abilities.
- Get Leetcode premium if you can
- Almost all of the problems seen on these posts are either exactly taken from Leetcode or some variation of it
- If you can't afford it, I believe there is some master post with a lot of the interview questions seen before.
- Come up with good questions to ask your interviewers at the end of each round
- I believe that this is an underrated part of the interview because it shows to them that you are somewhat interested in the company
- Tip: Ask something about the interviewer (i.e What feature/project are you most proud of during your time here?) People love talking about themselves so it makes the interview a little bit more enjoyable for them.
- Try to take a break from Leetcode
- Grinding through Leetcode was mentally draining for me and sometimes reduced confidence in my own abilities
- Because of how tired I was of completing Leetcode problems, I would sometimes breeze through the top solution without completely understanding it.
- Therefore, make sure you completely understand the logic behind a solution because it allows you to be prepared for follow-ups and similar questions. I would rather complete 3-4 problems and fully understand the solution than "complete" 10-14 problems I half-assed.
Disclaimer: Please take all this advice with a grain of salt. Everyone's interview experience is different. These are just some of tips that have been useful to me throughout my time interviewing both for intern and full-time positions.