I applied online. The process took 2 months. I interviewed at Bloomberg in Dec 2013
Interview
Applied Online...
Phone Interview.. Not difficult.
Question 1: Why make data members private and access them using getter and setter methods when you can access them directly by making them public.
Question 2 : Given stock prices of n days. Find when to buy and when to sell stock in order to gain maximum profit
Question 3 : Given an array of size greater than 'x' and a range 0 to x . Find duplicate elements in the array. Hint. You can destroy the array but the solution should use O(1) space and O(n) time where n is the size of the array.
On Site Interview:
Interview 1 :
Interview with 2 software developers
Started with some questions related to my projects
Q1 : Diamond Inheritance Problem in C++. Use of virtual keyword. And how are things handled internally. Basically checked my understanding of vtable
Q2 : Can you use virtual keyword with destructors?
Q3 : Given heads of two linked lists. Find if the two linked lists intersect.
Solution should not use extra memory.
Q4 : Reverse linked list. Tested concepts of double pointers, pass by value and pass by reference.
Interview 2 :
Interview with 2 software developers
Q1 : In what case would you use BST over a hash table..
Q2 : Insertion in BST
Q3 : Find 'k'th smallest element in BST. What extra information would you require here
Q4: Given a string which has a lot of spaces beween words . Remove these extra spaces in the string
eg: " I love New York " --> "I love New York"
Q4 : You get an input in the form [2 lowercase characters , A number] .. eg [aa,10] , [bd, 12]..
Given a two letter input, find the last 10 numbers associated with the string..
Design a data structure to implement this without using STL. Basically I was asked to design a hash function.
Interview 3 :
Interview was with a project manager
Q1 : Find the first distinct element in an array
Q2 : C++ does not have byte datatype. How would you create this datatype.
Q3 : Lets say I have a code currently executing on my machine. I overwrite the code with a newer version. But the older version is still executing. Why do you think this is happening.
Interview 4 :
Interview with HR
General HR Interview
Interview questions [1]
Question 1
Given heads of two linked lists. Find if the two linked lists intersect.
Solution should not use extra memory.
I applied through college or university. The process took 1 week. I interviewed at Bloomberg (Indianapolis, IN) in Feb 2019
Interview
They had info session at school. I submitted my resume online and got the on-campus interview. The interview is 1 hour. Two engineers are the interviewer. Small talk at the beginning. Ask 1 or 2 questions about the resume. And then ask two technical questions. I finished the first one. But I did't have enough time to completed the second question. The first one is a string question. The second one is a tree question.
I applied online. The process took 4 weeks. I interviewed at Bloomberg (London, England) in Dec 2018
Interview
It was a very candidate-friendly interview process, had flexible on-site dates. Amazingly quick feedback. Overall a great experience.
Technical phone screen with an engineer (2 simple/average coding questions)
On-site (technical and behavioral rounds)
Interview questions [1]
Question 1
Simple/average coding questions. Understanding recursion, stack, and heap, some basic C++ features, data structures characteristics
I applied online. The process took 4 weeks. I interviewed at Bloomberg (New York, NY) in Nov 2016
Interview
- There was one phone interview with a Bloomberg engineer.
- The onsite interview started with a so called tour of Bloomberg but abruptly ended with a museum of their colorful terminals. It was over in 5 minutes. The group of interviewees laughed a little when it ended.
- 2 rounds of technical interviews with a break of ~20 minutes. Found it easy. Mix of algorithm and design questions. All interviewers look satisfied when they left me.
- HR and recruiter forget that I exist. Forget to contact me for the next 40 minutes or so. I go to their front desk to inquire whether there are more rounds.
- HR appears slightly irritated but is polite. Next 30 minutes, HR tries to understand why after 6+ years of computer science education and working for a couple of years I "chose" to be a software engineer. Does not want to hear technical stuff. Had a hard time believing I could fit the role. I wondered whether I should have taken Psychology and then become a recruiter so I could judge potential candidates of a different discipline.
- At the end of the interview, was asked to "patiently" wait for the next round. Within 5 minutes, one more guy turns up and says the conference room is booked. Was once again asked to goto the front desk. Bloomberg office is huge and not all elevators goto front desk. :-( Reach somehow.
- Once again try telling the front desk people that I have an interview. Give the name of the host. Host appears after 15 minutes. Asks how the interviews are going.
I say "not that great". Asks whether - "Do you want to stay?". I lower my head and say "yes".
- In the conference room, realizes that the manager is out of office and the manager does not have my resume. Arranges a video conference. Asks the manager over conference to not keep him "busy" since he has a flight in flat 2.5 hours.
- Manager tries to understand how I ended up interviewing at Bloomberg and what role she could give me if I was chosen. It was nice but nothing productive. Interview ends in 30 minutes.
- Meet the so called organizer of the whole process. Asks whether the interview was awesome. I say it was "ok". Goes on a tirade on how people like me have a low attitude and should be happy to meet awesome people. After all, the process took only a day.
- Keeps repeating "Hope you get it". "Hope you get it" with a smirk while I collect my luggage and thank her for all the arrangements.
- Leave broken hearted and look tearfully at Lexington tower while I rush to the airport.
Interview questions [1]
Question 1
1. Deep copy a linked list with a random pointer.
2. Perimeter of the wall enclosed by an enemy. Eg:
121
121
If the enemy is labeled 2 in the above matrix, the wall size is 6.
3. Design a circle class and then on, utilities on top of it including randomly generating a point within a circle. How do you translate to polar coordinates and what changes I would make. What changes would be required for a Square/Rectangle/eclipse etc.