The Difference Between Data Scientists and ML Engineers


There’s often confusion between the roles of Data Scientists and Machine Learning Engineers. Although they certainly work together amicably and enjoy some overlap concerning expertise and experience, the two roles serve quite different purposes.

Essentially, we are differentiating between Scientists who seek to understand the science behind their work, and Engineers who seek to build something that can be accessed by others. Both roles are extremely important, and at some companies, are interchangeable — for example, Data Scientists at certain organizations may carry out the work of a Machine Learning engineer and vice versa.

To make the distinction clear, I’ll split the differences into 3 categories; 1) Responsibilities 2) Expertise 3) Salary Expectations.


Data Scientists follow the Data Science Process, which may also be referred to as Blitzstein & Pfister workflow. Blitzstein and Pfister initially created the framework to teach students of the Harvard CS 109 course how to approach Data Science problems.

The Data Science process consists of 5 key phases

  • Stage 1: Understanding the Business Problem
  • Stage 2: Data Collection
  • Stage 3: Data Cleaning & Exploration
  • Stage 4: Model Building
  • Stage 5: Communicate and Visualize Insights

The majority of the work performed by Data Scientists is in the research environment. In this environment, Data Scientists perform tasks to better understand the data so they can build models that will best capture the data’s inherent patterns. Once they’ve built a model, the next step is to evaluate whether it meets the project’s desired outcome. If it does not, they will iteratively repeat the process until the model meets the desired outcome before handing it over to the Machine Learning Engineers.

Machine Learning Engineers are responsible for creating and maintaining the Machine Learning infrastructure that permits them to deploy the models built by Data Scientists to a production environment. Therefore, Machine Learning Engineers typically work in the development environment which is where they are concerned with reproducing the machine learning pipeline built by Data Scientists in the research environment. And, they work in the production environment which is where the model is made accessible to other software systems and/or clients.

Essentially, Machine Learning engineers are responsible for the maintenance of the ML infrastructure that allows them to deploy and scale the models built by the Data Scientists. And, Data Scientists are users of the Machine Learning infrastructure that is built by the Machine Learning engineer.


The reason people are confused about the differences between the 2 roles is that there are many places where their skills overlap. For example, both Data Scientists and Machine Learning engineers are expected to have good knowledge of;

  • Supervised & Unsupervised Learning
  • Machine Learning & Predictive Modelling
  • Mathematics and Statistics
  • Python (or R)

The major overlaps between the roles have resulted in some organizations, particularly smaller organizations and startups, merging the roles into one. Thus, some organizations have Data Scientists doing the work of Machine Learning engineers and some have Machine Learning engineers doing the work of Data Scientists. Only leading to more confusion amongst practitioners.

However, there are some key differences between the expertise required for each role.

Data Scientists are typically extremely good data storytellers. Some would argue that this trait makes them much more creative than Machine Learning engineers. Another difference is that Data Scientists may use tools like PowerBI and Tableau to share insights to the business, and they don’t necessarily need to use Machine Learning.

Couples that make up for their partner’s deficiencies are generally stronger. When you think of it like that, the aforementioned expertise may be weak points for the Machine Learning engineer, who is expected to have a strong foundation in computer science and software engineering. Machine Learning engineers are expected to know about Data Structures & Algorithms and understand the fundamental components that go into creating deliverable software.

With that being said, it’s not unusual for a Machine Learning engineer to have a good grasp of another programming language like Java, C++, or Julia.

Salary Expectations

Pinning down the exact salary expectations is difficult. Salaries in both roles vary based on a variety of factors such as the amount of experience you have, the qualifications you possess, the location you’re based in, and the sector you work in.

Organizations are also expected to offer varying benefits. Regardless of the role, you can expect to receive an invitation to join the company pension scheme, flexible or remote working, performance bonuses, and private medical insurance.

United Kingdom (UK)

  • Junior Data Scientist can expect to start within the range of £25,000 — £30,000 (It may rise to £40,000 depending on experience). [SourceProspects]. A graduate or Entry-level Machine Learning Engineer can expect a starting salary of £35,000 — £40,000. [SourceProspects]
  • According to Glassdoor, the average salary of a Data Scientists in the UK is £46,818. Prospects state that the average salary of a Machine Learning Engineer in the UK is £52,000
  • According to ProspectsLead and Chief Data Scientists can earn anything upwards of £60,000 (surpassing £100,000 in some cases). In contrast, More experienced Machine Learning Engineers can expect to earn as much as £170,000 (particularly if they work for a multinational company like Google or Facebook) [SourceProspects]

United States of America (USA)

  • The average base salary of a Data Scientists in the USA is $120,089 [SourceIndeed]. In contrast, the average base salary of a Machine Learning Engineer in the USA is $150,660 [SourceIndeed].

Overall, it’s fair to say that Machine Learning Engineers are typically paid more than Data Scientists across the board, on average.

Final Thoughts

Despite the similarities between the roles, Data Scientists and Machine Learning Engineers are quite different concerning their responsibilities, expertise, and earnings. From the majority of interviews I’ve listened to on the topic, many say the transition from Data Scientists to Machine Learning Engineer is much harder than the transition from Machine Learning Engineer to Data Scientists. This is because Data Scientists aren’t usually proficient with software engineering and computer science fundamentals which is a big learning curve.

Source: Originally published in Towards Data Science by Kurtis Pykes

Reach out to us and follow us