The Microsoft Data and Applied Scientist Interview | by Matt Przybyla | Towards Data Science

IntroductionProcessQuestionsConceptsSummaryReferences
Introduction
Process
Questions
Concepts
Summary
References
The goal of this article is to give you more confidence and insight for your next interview at Microsoft. This guide can also apply to similar, big tech companies like Facebook and Apple.
I will be discussing the role and interview process of the Senior Data and Applied Data Scientist at Microsoft.
I have interviewed with numerous companies and after a while, I, as expected, started to see a trend in how they were arranged and executed. Recruiters, interviewers, and companies do not just want someone who can code well, but who can explain results to non-technical people as well. I also want to highlight that there are different roles like data scientist, applied scientist, and what I will be writing about: data and applied scientist. Along with the specific scientist role, there are levels that include the usual title, senior, and then principal. At other companies, you can expect to see roles like associate and staff. My experience in the Microsoft interview was great and I would recommend pursuing this role to anyone else who is interested.
I especially loved hearing from the specific team. The focus on culture and diversity really stood out as an enticing factor in this position.
In this article, I will detail the whole process as well as some questions that you can expect (or similar questions) during your interviews. Lastly, I want to stress that the point of this article is to ultimately help you interview at Microsoft or another, similar big tech company. I truly believe as a data science community, we should learn from one another and help everyone be the best they can be. Akin to how interviewers will eventually let you know (or so I hope), being open and adept to learning is more valuable than being quizzed. Below, find out more about the overall process from application to final interviews, questions, and concepts along with advice for your senior data and applied scientist interview journey.
The overall interview process is surprisingly quite simple. After applying (hopefully), you can expect to get an email or phone call from the recruiter where you will have to submit an updated resume and information on why you are an appropriate fit for Microsoft. If you move forward after this point, you will have a 30 — 45 minute phone call with the manager going over why you think you are the right person for the role, as well as what interests you about it. You will want to focus on being yourself, knowing your past well, as well as the role, and Microsoft as a company even better.
This phone call will include some technical conversation, but the next interview is when you will get to show off your skills in a round of four interviewers (in-person normally, but will probably be over a video conference at this time). This step is actually the final interview, but it will take around four hours, and is scheduled by a coordinator. The most important part of this day of interviews is to know key concepts and examples of machine learning algorithms.
While coding is greatly used in these types of data science roles, it is arguably more important that you know the theory and point of an algorithm in data science over Python, R, or SQL code.
The process will most likely be different with every interview, even at the same company, but the flow will be the same. It will entail the same manager you talked to over the phone previously that is mainly behavioral, a more in-depth data science algorithm question round from one person, a case study, and then an overall final summary of your data science knowledge.
Here is an outline of the typical interview process:
apply for the position
hear back via phone call or email
submit screening answers via email or phone
initial manager interview over the phone
four rounds of interview with the team in person (or most likely video conference)
The following questions are not exact questions, but could very well be the exact questions you will encounter (as they are changed — but follow a similar format). The theme here is what is critical. If you can confidently answer these right now, then you can expect to do well overall. When answering questions, keep in mind it is okay to pause and think through your process, as it will show problem-solving and answers that do not sound memorized. Here are six questions you will need to know:
1. Explaining a machine learning algorithm to a non-technical user
2. Going over a time where you had a conflict at work
3. Giving an example of the machine learning pipeline
4. Explaining gradient descent
5. Describing dimensionality reduction
6. Providing an example of time series
It is best to think of your answers in a business sense. While obtaining an accuracy of 95% for a machine learning model is impressive, it is even more impressive if you can explain to a business user or stakeholder how much money that will save the company, as well as how much you can automate an otherwise manual process. Knowing the common data science algorithms, like unsupervised versus supervised, along with time series and computer vision will be useful. Lastly, having a working knowledge of common Python libraries like sklearn and TensowFlow will also help to make you stand out. Aside from questions and skills, there are key concepts that will be discussed in your interview that are outlined below.
While specific questions or key questions can be helpful to review, applying these concepts to your interview will be beneficial as well. All in all, you will want to know the role well by incorporating the department of the position or Microsoft product in your answers or discussions. You will also want to let them know when you do not know something; do not ramble about something you are unclear about and alternatively as a solution, possibly suggest a similar example and its respective explanation. Additionally, when you do use examples to explain an answer, try not to use the same one over and over again, as it will show that you do not have as much experience (even if you do). Lastly, even though the role’s description describes mainly data science and machine learning-centered skills, remember to know the key parts of deep learning and how it is different from conventional algorithms. Focus on these four concepts below:
Incorporating Microsoft products
Letting interviewers know when you do not know something
Trying not to use the same example over and over again
Deep learning
Knowing the fundamental concepts of data science in addition to how they apply to Microsoft and its users, will be an impressive route to take in your interview process. Reviewing how businesses function in general will be beneficial — it will be better if you can provide how you would incorporate your model in a system that already exists — how the team would work, and what shortcomings could eventually happen.
Testing your model is something data scientists may forget to practice.
Not referring to testing your model on the dataset, but testing your model in production to see how it works, how fast it is, how much storage it uses, and overall, its possible limitations. Knowing the whole process from end-to-end will make you stand out as a candidate.
Retrieving your data, cleaning and transforming it, building base models, secondary and tertiary modes (and so on), and the end product for the end-user is an entire process you should be familiar with that you can confidently explain. It will be good to talk about your Jupyter Notebook, but expounding upon object-oriented programming will be another bonus to show off to the interviewers. Displaying to the team how you created .py files that can be easily compiled and shared with not just other data scientists, but other professionals who are also interacting with your models, like the software engineers, machine learning engineers, and data engineers as well, will be an excellent concept to employ and describe.
While there could be hundreds of questions and articles you could go over before your interview, ultimately, you will want to display to the interviewers your confidence in explaining your answer.
You will be more likely to be hired if you make the interviewers comfortable in your answers by providing clear, correct, and confident explanations.
Keep in mind that this overview is for a senior position, and more specifically, for a data and applied scientist role. You could most likely expect something similar for a non-senior role and also a data scientist and applied scientist role — in addition to general and interviews for non-data science roles.
The common roles are: data scientist, applied scientist, and data and applied scientist.
Just like the specific role and department can vary, so can the team that will interview you. Similar to a data science model, you will want to win the majority vote of the team to ace this interview. Another important facet of the interview process is not only coding and technical assessments, but behavioral valuations as well. It is important to focus your discussion on culture and diversity; find the pillars of Microsoft or a similar company to learn about their statement, how it applies to you, and what it means to you. Finally, keep your resume simple with: what you did, how it helped the business, and what the result was. For example, on one project you could say: I worked on a decision tree model that helped to automate a manual process by 50%.
I cannot guarantee that you will get the job if you follow all of these steps, but I believe you will be well on your way to getting there if you are already going out of the way to learn about data science at Microsoft. I hope you found this article interesting, and especially useful for your future interview endeavors. Thank you for reading!
[1] Photo by Franck V. on Unsplash, (2020)
[2] Photo by visuals on Unsplash, (2020)
[3] Photo by Lara Far on Unsplash, (2019)
[4] Photo by Hitesh Choudhary on Unsplash, (2018)