First interview :
1. Why do I want to work for Bloomberg.
2. How has been my experience in the industry so far. Discussion about internships and projects.
3. My most favourite project. What were the techniques used, what were the evaluation methods, what was the accuracy observed, how big was the data.
4. Question on encryption-decryption of strings. This came up because my internship at Microsoft was on authentication and authorisation of cloud users. Question : There is an API which maps each letter of the alphabet to some other letter and I have to use that to encrypt a word.
5. Follow up question : I have to decrypt a word but I don't have a decrypting API. How will I use the encrypting API alone to decrypt as well.
6. She later tried to take this whole thing towards my spellchecker project and asked me to come up with decryption method so that at every stage the decrypted word formed is a word in dictionary
7. Coding, complexity and unit testing.
8. Advantages of Java over C++ and discussion on garbage collection.
8. Given a family tree, I have to identify if a person is a part of the part of the family or not.
9. Given a family tree, I have to identify all cousins.
10. Coding, complexity and unit testing.
Second interview :
1. Why do I want to work for Bloomberg.
2. What am I generally passionate about. Discussion on internships and projects.
3. Favourite project, briefly.
4. Favourite language and what are its features I like the most.
5. Code a simple class in Java and a LOT of followup questions on Java.
6. Given an array of numbers and given a target number, I have to identify the pairs which sum up to the target number. Every number in the array can be used only once. I have to obtain this in one parse.
7. Code, complexity, unit tests, and running my code on a sample example.
8. Given a linked list, find the nth last element.
9. Code, complexity, unit tests, and running my code on a sample example.
Third interview :
1. Why do I want to work for Bloomberg.
2. What am I generally passionate about. Discussion on internships.
3. Given an array of numbers, I have to find the first unique number in one parse. Code, complexity, unit tests.
4. Java and intricacies.
5. Asked a LOT about projects, esp Data mining and Indexing and Searching in Large Datasets.
6. Given a stream of news, there is a classifier which attaches several tags with each news item. I have to make a dashboard which shows the “trending” news : I suggested we first cluster the tags such that if something is tagged as “shell”, it should also fall under “oil”, if that’s not already there. That will include semantic analysis on the tags. Later, I can use *Space Saving Technique* to find the top-k most frequent items in a stream of data. He liked that a real lot. Then he said how to make sure that we don’t show the obvious things. For eg, if we know since months before that Apple is going to launch a new version of iphone, that’s not very surprising to the viewers. I suggested to use the *Information Gain Model* from Machine Learning where higher the entropy of an event occurrence (i.e lower the probability of occurrence), higher is its “surprising element”. Of course, we need to make sure that we don’t fall at the other extreme. Also we need to make sure that the thresholds of anomaly, or surprise factor vary accordingly so that we keep up with the market. Eg, smartphones aren’t trending now unless there’s something groundbreaking, however, they were trending when they were initially launched. So the threshold of anomaly for smartphones should be higher, and it should remain higher. Naively, this will involve computing average/median on data streams.
7. He converged the entire discussion onto my Indexing and Searching in Large Datasets course project.