days, job titles like data scientist, machine learning engineer, and Ai Engineer are everywhere — and if you were anything like me, it can be hard to understand what each of them actually does if you are not working within the field.
And then there are titles that sound even more confusing — like quantum blockchain LLM robotic engineer (okay, I made that one up, but you get the point).
The job market is full of buzzwords and overlapping roles, which can make it difficult to know where to start if you’re interested in a career in machine learning.
In this article, I’ll break down the top machine learning roles and explain what each one involves — plus what you need to do to prepare for them.
Data Scientist
What is it?
A data scientist is the most well-known role, but has the largest range of job responsibilities.
In general, there are two types of data scientists:
- Analytics and experiment-focused.
- Machine learning and modelling focused.
The former includes things like running A/B tests, conducting deep dives to determine where the business could improve, and suggesting improvements to machine learning models by identifying their blind spots. A lot of this work is called explanatory data analysis or EDA for short.
The latter is mainly about building PoC machine learning models and decision systems that benefit the business. Then, working with software and machine learning engineers, to deploy those models to production and monitor their performance.
Many of the machine learning algorithms will typically be on the simpler side and be regular supervised and unsupervised learning models, like:
- XGBoost
- Linear and logistic regression
- Random forest
- K-means clustering
I was a data scientist at my old company, but I mainly built machine learning models and didn’t run many A/B tests or experiments. That was work that was carried out by data analysts and product analysts.
However, at my current company, data scientists don’t build machine learning models but mainly do deep-dive analysis and measure experiments. Model development is mainly done by machine learning engineers.
It all really comes down to the company. Therefore, it is really important that you read the job description to make sure it’s the right job for you.
What do they use?
As a data scientist, these are generally the things you need to know (it’s not exhaustive and will vary by role):
- Python and SQL
- Git and GitHub
- Command Line (Bash and Zsh)
- Statistics and maths knowledge
- Basic machine learning skills
- A bit of cloud systems (AWS, Azure, GCP)
I have roadmaps on becoming a data scientist that you can check out below if this role interests you.
Machine Learning Engineer
What is it?
As the title suggests, a machine learning engineer is all about building machine learning models and deploying them into production systems.
It originally came from software engineering, but is now its own job/title.
The significant distinction between machine learning engineers and data scientists is that machine learning engineers deploy the algorithms.
As leading AI/ML practitioner Chip Huyen puts it:
The goal of data science is to generate business insights, whereas the goal of ML engineering is to turn data into products.
You will find that data scientists often come from a strong maths, statistics, or economics background, and machine learning engineers come more from science and engineering backgrounds.
However, there is a big overlap in this role, and some companies may bundle the data scientist and machine learning engineer positions into a single job, frequently with the data scientist title.
The machine learning engineer job is typically found in more established tech companies; however, it is slowly becoming more popular over time.
There also exist further specialisms within the machine learning engineer role, like:
- ML platform engineer
- ML hardware engineer
- ML solutions architect
Don’t worry about these if you are a beginner, as they are pretty niche and only relevant after a few years of experience in the field. I just wanted to add these so you know the various options out there.
What do they use?
The tech stack is quite similar for machine learning engineers as for data scientists, but has more software engineering elements:
- Python and SQL, however, some companies may require other languages. For example, in my current role, Rust is needed.
- Git and GitHub
- Bash and Zsh
- AWS, Azure or GCP
- Software engineering fundamentals like CI/CD, MLOps and Docker.
- Excellent machine learning knowledge, ideally a specialism in an area.
AI Engineer
What is it?
This is a new title that cropped up with all the AI hype going on now, and to be honest, I think it’s an odd title and not really needed. Often, a machine learning engineer will do the role of an AI engineer at most companies.
Most AI engineer roles are actually about GenAI, not AI as a whole. This distinction normally makes no sense to people outside of the industry.
However, AI encompasses almost any decision-making algorithm and is larger than the machine learning field.
The current definition of an AI engineer is someone who works mainly with LLM and GenAI tools to help the business.
They don’t necessarily develop the underlying algorithms from scratch, mainly because it’s hard to do unless you’re in a research lab, and many of the top models are open-sourced, so you don’t need to reinvent the wheel.
Instead, they focus on adapting and building the product first, then worrying about the model fine-tuning afterwards. So, they wu
It is a lot closer to traditional software engineering than the machine learning engineer role as it currently stands. Although many machine learning engineers will operate as AI engineers, the job is new and not fully fleshed out yet.
What do they use?
This role is evolving quite a bit, but in general, you need good knowledge of all the latest GenAI and LLM trends:
- Solid software engineering skills
- Python, SQL and backend langauges like Java or GO are useful
- CI/CD
- Git
- LLMs and transformers
- RAG
- Prompt engineering
- Foundational models
- Fine tuning
I also recommend you check out Datacamp’s associates AI engineer for data scientist track, that will also set you up nicely for a career as a data scientist. This is linked in the description below.
Research Scientist/Engineer
What is it?
The previous roles were mainly industry positions, but these next two will be research-based.
Industry roles are mainly associated with business and are all about generating business value. Whether you use linear regression or a transformer model, what matters is the impact, not necessarily the method.
Research aims to expand the current knowledge capabilities theoretically and practically. This approach revolves around the scientific method and deep experiments in a niche field.
The difference between what’s research and industry is vague and often overlaps. For example, a lot of the top research labs are actually big tech companies:
- Meta Research
- Google AI
- Microsoft AI
These companies initially started to solve business problems, but now have dedicated research sectors, so you may work on industry and research problems. Where one begins and the other ends is not always clear.
If you are interested in exploring the differences between research and industry more deeply, I recommend you read this document. It’s the first lecture of Stanford’s CS 329S, lecture 1: Understanding machine learning production.
In general, there are more industry positions than research, as only the large companies can afford the data and computing costs.
Anyway, as a research engineer or scientist, you will essentially be working on cutting-edge research, pushing the boundaries of machine learning knowledge.
There is a slight distinction between the two the jobs. As a research scientist, you will need a Phd, but this is not necessarily true for a research engineer.
A research engineer typically implements the theoretical details and ideas of the research scientist. This role is usually at large, established research companies; in most situations, the research engineer and scientist jobs are the same though.
Companies may offer the research scientist title as it gives you more “clout” and makes you more likely to take the job.
What do they use?
This one is similar to machine learning engineering, but the depth of knowledge and qualifications is often greater.
- Python and SQL
- Git and GitHub
- Bash and Zsh
- AWS, Azure or GCP
- Software engineering fundamentals like CI/CD, MLOps and Docker.
- Excellent machine learning knowledge and a specialism in a cutting-edge area like computer vision, reinforcement learning, LLM, etc.
- PhD or at least a master’s in a relevant discipline.
- Research experience.
This article has just scratched the surface of machine learning roles, and there are many more niche jobs and specialisms within these four or five I mentioned.
I always recommend starting your career by getting your foot in the door and then pivoting to the direction you want to go. This strategy is much more effective than tunnel vision for only one role.
Another thing!
I offer 1:1 coaching calls where we can chat about whatever you need — whether it’s projects, Career Advice, or just figuring out your next step. I’m here to help you move forward!
1:1 Mentoring Call with Egor Howell
Career guidance, job advice, project help, resume reviewtopmate.io