What's the Difference Between a Data Scientist and a Machine Learning Engineer?
March 10, 2021
Here's how to think of it: The data scientist is the architect, and the machine learning engineer is the general contractor.
If you’re pursuing a career in data analytics and artificial intelligence, it makes sense to consider a degree in data science or machine learning engineering. But how do you know which is right for you?
To understand the differences between the job of a data scientist and the job of a machine learning engineer, you might just look at the words “scientist" and “engineer." When simplified to this extent, it’s fairly easy to differentiate the two roles. A scientist observes and studies, while an engineer creates. A scientist forms questions, while an engineer forms solutions. Without science, there is no engineering; but both rely on each other to reach maximum productivity.
Stack Exchange user Vincenzo Lavorini puts it this way: A nuclear scientist studies atoms and understands the science behind them and their interactions — the scientist writes the recipe. A nuclear engineer then takes that recipe and uses it — in tandem with his engineering knowledge — to build a nuclear plant.
The relationship between data science and machine learning engineering is similar. O’Reilly Media has an excellent article on this topic; they say the core skills of a data scientist are mathematics and statistics. Often, these professionals learn to program in order to accomplish something that they couldn’t otherwise. On the other hand, the core skills of a machine learning engineer are programming skills. They then specialize these programming skills around data.
In other words, a data scientist is a mathematician who can program. A machine learning engineer is a programmer who can work with data. The roles are complementary and support one another.
Another way to think of this relationship is that the data scientist is the architect, while the machine learning engineer is the general contractor. Both are highly skilled and integral to the process of building a structure. Their skills may have some overlap, but by and large the architect (data scientist) is more academic in nature, with core competencies of vision, theory, and academic curiosity, and qualifications in the form of advanced degrees and published papers. The contractor (ML engineer), while also well-educated, possesses qualifications in the form of experience, and holds core competencies in hands-on work — the actual creation of something the data scientist has simply imagined.
Data Scientist Skills and Duties
A Data Scientist will typically be able to navigate statistical programming languages including R and Python, and will be familiar with database querying languages like SQL.
Springboard describes the day-to-day duties of a Data Scientist in a framework they call the Data Science Process.
This process consists of 6 parts:
- Frame the problem
- Collect the raw data needed to solve the problem
- Process the data (data wrangling)
- Explore the data
- Perform in-depth analysis
- Communicate results of the analysis
Framing the problem means that when a stakeholder comes to a data scientist with a need, the data scientist is able to translate that need into a solution. If I ask a data scientist to build me a self-driving car, for example, the data scientist will not suddenly become a car manufacturer. Rather, they will identify a need for the the software “brains" capable of operating such a vehicle. Next, they will begin steps 2-6: collecting raw data, processing it, exploring it, analyzing it, and communicating it to other stakeholders.
By the end of this process, we would have an understanding of the data required to build a self-driving car, along with a pretty clear picture of what’s possible when utilizing that data. But we would not have designs for a self-driving car in-hand. That’s where an ML engineer would come into play.
Machine Learning Engineer Skills and Duties
Machine learning engineers are directly connected to the AI business. In the self-driving car example, an ML engineer would take the processed, packaged, and presented data from the data scientist and would use it to build a program capable of operating such a vehicle.
In other words, an ML engineer’s work is less academic and more practical than that of a data scientist. The engineer would actually present a car manufacturer with a working model of the software “brains" necessary for the self driving car’s operations. They wouldn’t be able to build that software program, however, without the work of the data scientist.
ML engineers typically have a bachelor’s degree in computer science or related technical fields, and often may have an advanced degree such as a master’s. They generally have strong programming skills in a number of common languages such as C++ and Java. And they have advanced mathematical and statistical skills, above those of generalized full-stack computer programmers.
When data is presented to an ML engineer, the ML engineer uses it to inform and design the building process, creating software programs that are production-ready. Through the work of data scientists and ML engineers in tandem, complex AI projects are evaluated, designed, and prepared for future implementation.
While there are clear differences in the academic paths typically followed by data scientists versus those of ML engineers, both groups of professionals are highly trained, highly educated workers. So if you’re eyeing either field, you will need to start your career with a bachelor’s degree.
An engineer will typically major in computer science, while a data scientist may choose math or statistics. Remember: ML engineers are programmers who specialize in data. Data scientists are scientists who also program.
Once you have completed your undergraduate degree, your path will be determined by your ultimate career goals. If you want to become a data scientist, you will probably need to earn a master’s or doctoral degree in order to cement your place in the field as an academic and big thinker. If you want to become an ML engineer, on the other hand, you may have the option of working as an entry-level programmer or continuing on to graduate school. Either way, you will need to look for opportunities within your career to specialize in big data and machine learning.
Whether or not you have earned you advanced degree as an aspiring ML engineer, you will likely be able to find work as a programmer in some capacity. If you choose not to pursue advanced education, you’ll want to look into certificates and bootcamp programs to help you bridge the gap from engineer to ML engineer. Online education providers like Coursera and Udemy (and Springboard, mentioned earlier in this article) offer training, tutorials, and certifications in machine learning for engineers who are looking to specialize. And many traditional universities offer machine learning degrees and certificates as well. You will have lots of options depending on your lifestyle and needs.
Often, online courses are accelerated and immersive, which may appeal to busy adults with families and careers, or to individuals who don’t want to commit years to an advanced degree. Those who prefer traditional learning environments or place a high value on the prestige of an advanced degree have the option to enroll in a program at a top university.
To get the best of both worlds — convenience and reputation — you might consider a traditional university certificate or degree program offered through a flexible online medium (such as attending a Stanford Machine Learning Certificate program through Coursera).
Entry-level data science jobs include titles like data analyst and junior data scientist. These roles utilize many of the same skills as do senior-level data scientist jobs, though at a less advanced level. Many aspiring data scientists also enter the workforce as interns.
Entry-level machine learning jobs can be a little trickier, since many ML engineers start their careers as other types of engineers. But internships in machine learning are available, and entry-level roles like junior machine learning engineer offer another path in.
What you need to remember is that “data scientist" and “machine learning engineer" are frequently used interchangeably; often, HR departments and hiring managers aren’t completely familiar with the distinctions between the two, so the terms can get muddied. It’s important to carefully review the duties and qualifications of every role for which you apply.
Salary and Job Outlook
Both data scientists and machine learning engineers are highly paid overall, and both professionals enjoy strong outlooks in the job market.
As artificial intelligence, machine learning, and big data become increasingly prevalent in our society, the skills possessed by qualified data scientists and machine learning engineers will steadily grow in demand. In fact, data scientist was named Glassdoor's Best Job in America in 2018, with a median base salary of $110,00 and over 4,500 job openings. Meanwhile, LinkedIn's 2017 Emerging Jobs Report listed machine learning engineer as the #1 “emerging position" with “nearly 10 times more LinkedIn members listing it as their profession now than five years ago." In this same report, data scientist was #2.
According to data from Glassdoor, machine learning engineers earn a base salary of $114,826 on average. Data scientists earn $139,840.
It is clear from these numbers that careers in machine learning and data science pay major dividends. Both fields offer a strong job outlook and very high median salaries. Once you have an understanding of the differences between these two roles, you can determine whether you fit into one than the other. Whichever path you choose, you will come out a winner.