I applied online between Christmas and the New Year of 2016. I got an email after around one week later that they are interested in scheduling a job interview. I scheduled the first interview to be on the end of January. As many people here posted that they encountered some problems such as they did not any phone from the prospective interviewer, it did happen to me too! I waited around 15 minutes and then I shot an email to the recruiter telling her about that I did not receive yet any phone call from Bloomberg. Immediately, after less than 5 minutes, I got the phone call and the interview started. If they were a way to rate the professionalism of this company, i would really give them at least 9/10 regardless of such mistakes that could happen.
The first phone interview was relatively easy and straightforward. He asked me the following questions:
1- Tell me about yourself and why are you interested in Bloomberg?
2- Tell me about a programming project you were involved in? (Choose your best one!)
3- What kind of technologies you used for this project? (If it is web based one, do not forget the front-side, database system and OS environment, etc.)
4- The programming question: He gave an ordered list that has duplicated items except one. for example [2,2,4,5,5] or [2,2,4,4,5]. He asked me to write a function to return the un-duplicated item. First, I used the normal way but then he asked me to make it more efficient so I used the mechanism of binary search to allocate that item.
Next day, the recruiter contacted me to schedule the onsite interview in either NYC or Princeton, NJ in the next week. I chose Princeton because I hate working in high crowded places such as NYC (however i love to visit them :) ).
In the onsite interview, First, they gave a quick tour into their building in Princeton and after then, I had an interview with an engineer then with another one.
In the first onsite interview, he asked me about my preferred language and then he asked me about the data structure I use in this language. The discussion ended up talking about using binary trees for hash tables. Then he asked me about what would you do to balance a tree on a scratch paper. The third related question was: What would be the best practice to store contacts information and lookup them up on the first later (the answer is to find the hybrid between BST and Hashtable). The last question is to write a function that finds all the rectangles given series of points.
The next interview was sort of questions that I was familiar with 5 years ago when I graduated from college but not now! He asked me questions about what OS process contains and how process talk to each others. Also, How Process variables stored and OS can retrieve them. I harshly squeezed my brain to remember some OS concepts but I could not recall everything. I did not passed to the third interview so I knew that no offer would be sent.
In general, the process was straightforward and the interview questions are really medium and easy if you just graduated. However, if it has been a long time since you graduated, my advice to you is to do the following:
1- Master the “cracking the coding interview”
2- Review the essential Operating System concepts (I suggest you to download some ppt files for easy reading)
3- Review the core Linux concepts and commands.
Good luck!