Data Science

Application Process

Our structure

We have several teams that include more than 200 engineers and nearly 100 data science experts working on projects in ML, NLP, Information Retrieval and Search at Bloomberg.

Our backgrounds

We are experts in software engineering and machine learning. We have educational backgrounds in engineering and science, and most of us have PhDs in our fields. We have a mix of junior members who have recently joined the team right out of school, as well as those who have 5+ years of experience in industry research or software engineering.

We spend time reading papers to learn about the latest research in the specific problem area we are working on, and we use publicly available tools when suitable. We also need to be able to implement our own improvements, so all of us write production quality code and use best practices in software engineering.

Since our focus is making sure that we have state-of-the-art models for the problems we work on, we are very much engaged with the academic and industry research community. We give back to the research community by sponsoring research conferences, as well as by publishing our findings in top academic conferences. Additionally, our team members are fully funded for travel to multiple top conferences, such as ACL, NIPS, EMNLP, and KDD.

Phone interview

We typically schedule two phone interviews with candidates before inviting them to visit us in-house. Because many candidates are often a good match for multiple teams across ML/NLP/Search, team members may shadow each other’s interviews with you. We do this so that you can be considered for several teams without doing several interviews.

What to expect

Questions cover everything from software engineering skills (data structures, algorithms, problem-solving ability) to foundational NLP/ML questions, applied ML questions, as well as open-ended ML questions.

We often ask questions that allow you to show us what you know best. Most of the interviews start with you talking about your research and experience.

In-house interview

If your phone interviews go well, and there is a mutual match, we will invite you to one of our offices for an in-house interview.

What to expect

3 technical rounds.
These will cover software engineering and ML/NLP questions. Our questions become a bit more high level and design oriented. Remember to keep communication open as you work through problems with the team.

Opportunity to meet the team.
You’ll also have lunch with us and meet with HR. If things go well, next you will meet with the managers and stakeholders of the group. Those interviews will be more oriented towards communication and career goals, and will include a technical question or two.
What we cover in our interviews

  1. Software engineering skills (computer science, data structures, algorithms, etc.)
  2. Foundational machine learning and AI questions
  3. Open-ended machine learning questions

In-house presentation

We invite all our candidates to give a 30-60 minute presentation of their research/PhD thesis, or industry work. This part of the interview process is optional. We hire candidates who do and who don’t give presentations, so if you don’t think that a presentation would help you present yourself as a strong candidate, don’t sweat it!

If you do want to do a presentation, be sure to focus on the questions and methods that you came up with, rather than detailed solutions. We like presentations that make us think and question how we approach our own work. Think about your favorite talk from SIGIR, NIPS, EMNLP etc., and try to build a presentation we can learn from. If you want advice on what or how to present, let us know. We’d be happy to share thoughts.

Tips

Be familiar with your own work.
Look at your resume and make sure you’re familiar with the recent projects and any papers you’ve published.

Communicate at each step of the way.
We prefer asking open-ended questions to see how you might approach something new. For example, you may tell us which model or method you would choose, where you would get training data from, or which features you might pay attention to. You could also explain how you might productionize your model, as well as go over the services that might be necessary to implement it into a highly available system for a large set of users.

Be prepared for software engineering questions.
Even though much of our work is related to machine learning and NLP research, we’re also software engineers and implement many of the services our models are running on. You can answer questions with any object-oriented language.

We will question your assumptions.
But don’t worry, when we ask questions and change constraints, it means we are excited about your approach and interested in understanding your particular expertise.

Let your interviewers know what you’re thinking.
They will be just as interested in your thought process as in your solution. We are not expecting an optimal solution in such a short period of time.


Make it happen here.