Data scientist, data engineer, data analyst, ML engineer: what is the difference?

Four positions on one pipeline. One diagram, four different searches.

Article summary

  • A data engineer builds the pipelines that move and reshape data so everyone else can use it, and the work is closest to backend engineering.
  • A data analyst answers business questions from existing data, usually with SQL and dashboards.
  • A data scientist builds statistical and machine learning models to explain or predict, and the work leans on statistics.
  • An ML engineer puts models into production and keeps them running, which is engineering work with model knowledge attached.
  • A data pipeline is the automated path data takes from where it is produced to where it is used, and ETL is the older name for that work.

Data scientist, data engineer, data analyst, ML engineer: what is the difference?

The four titles are four positions on one assembly line. A data engineer moves and shapes the raw data. A data analyst answers business questions with it. A data scientist builds models from it to explain or predict. An ML engineer takes those models and runs them in production.

The line runs in that order, and each position hands its output to the next. That is why the titles blur together on job boards and in hiring manager conversations: all four people touch the same data, often in the same tools, sometimes at the same desk pod. What separates them is what each one produces. Pipelines, answers, models, and running systems are four different outputs, made with four different skill mixes, and they are four different searches.

The rest of this lesson walks the line position by position, then covers the storage vocabulary that shows up next to these titles on every resume: data warehouse, data lake, Snowflake, and dbt.

What is the pipeline these four sit on?

A data pipeline is the automated path data takes from the systems that produce it to the places it gets used. The database behind a product records what happens: orders, signups, page views, messages. Those records are shaped for running the product, and they live in a system tuned for that job. Analysis needs the same information in a different shape and a different place. A pipeline is the code that copies the data out, cleans it, reshapes it, and lands it where analysts and scientists work. It runs on a schedule, without a person touching it.

ETL is the older name for that work. It stands for extract, transform, load: pull the data out, reshape it, put it where it belongs. The acronym still appears in job descriptions constantly, and a candidate who lists ETL experience is describing pipeline work. The order of the steps has shifted in modern setups, and some postings write it as ELT, but the job is the same.

Everything downstream depends on this plumbing. When a pipeline breaks, the dashboards go stale and the models train on old data, which is why the person who owns it is a real engineering hire.

What does a data engineer do?

A data engineer builds and maintains the pipelines. They write the code that moves data between systems, they design the shape it lands in, and they keep the whole thing running as the company's data grows. Of the four roles, this one sits closest to backend engineering, and many data engineers started as backend developers. The daily tools are SQL and Python, the same pair the database lesson flagged as durable, plus the pipeline tooling built on top of them.

One tool is worth knowing by name. dbt is the standard tool for the transform step: it lets a team write the reshaping logic in SQL, with commit history and testing, the way application code is written. It appears on data engineer and analyst resumes so often that it works as a marker of modern practice.

A data engineer is measured on whether the data arrives complete, on time, and in the agreed shape. It is the same kind of reliability ownership the operations roles carry, applied to data instead of the product.

What does a data analyst do?

A data analyst answers business questions from existing data. Which region grew last quarter, which feature drives renewals, where the signup funnel leaks. The raw material is the cleaned data the engineer landed, the main tool is SQL, and the main output is a dashboard: a screen of charts that stays current on its own, so the sales lead or the CFO can check the number on their own.

The role sits at the business end of the line. A strong analyst is valued for judgment about which question matters and what the numbers actually support, with enough SQL to get the answer themselves. Coding beyond SQL is a bonus in this role rather than the core. Analysts who add statistics and Python often grow toward the scientist title, which is one reason the two get confused.

What does a data scientist do?

A data scientist builds statistical and machine learning models to explain what happened or predict what will. Which customers are likely to churn, what a fraud attempt looks like, how demand will move next season. Data science is the field this work belongs to: statistics plus code, applied to a company's own data.

The word "model" here carries a specific sense. The AI lesson on models covered software whose behavior is learned from data rather than written line by line, and that definition holds. A data scientist trains models of that kind on the company's own records. They are usually far smaller than an LLM, built for one narrow question, and trained in hours on ordinary machines. The craft is in framing the question, choosing the data, and knowing whether the answer can be trusted, which is why the role leans on statistics harder than any other title in software.

What does an ML engineer do?

An ML engineer puts models into production and keeps them running. A model sitting in a scientist's notebook predicts nothing for customers. Someone has to wrap it in an API, serve it fast enough for the product, watch its accuracy as real-world data drifts away from the training data, and retrain it when it slips. That is the ML engineer's job, and it is engineering work with model knowledge attached, sitting between data science and backend.

The title holds a routing decision. A company doing applied work needs this role: a strong engineer who understands models well enough to operate them. A company inventing new model techniques needs a researcher, which is a different background and a different, much smaller pool. The posting's description tells you which one you are holding. The nearby title of AI engineer, and how it overlaps with this one, gets its own treatment in the next lesson.

The title and the work drift apart

Data titles inflate more than most. Plenty of postings say data scientist and describe dashboard and SQL work, which is an analyst search, and some say analyst while wanting models built. Match the hiring manager's description to an output, pipelines, answers, models, or running systems, and let that name the search. Sourcing from the wrong pool on title alone burns weeks in this family.

Is this math, coding, or business analysis?

All three, mixed in different proportions at each position on the line. The analyst runs on business judgment and SQL. The data engineer runs on coding. The scientist runs on statistics and coding in roughly equal measure. The ML engineer runs on coding with a working command of how models behave.

The mix also moves by company, and that movement is the useful fact. At a large company the four titles are four separate people with clean boundaries. At a startup one data scientist may cover the entire line, building the pipeline, the dashboard, and the model alone, the same compression the team overview describes for every discipline. So the same title means a specialist in one place and a generalist in another, and three sentences of description settle which one a req wants.

What are a data warehouse and a data lake?

A data warehouse is a database built for analysis. It holds cleaned, structured data, organized for answering questions across the whole business rather than for running the product. It is where the pipeline lands and where the analyst and scientist work. Snowflake is the best-known warehouse product, a company and product in the same way the database lesson paired Postgres with the idea of a relational database, and its name on a resume signals warehouse-side work.

A data lake holds raw data of any shape, cheaply, before anyone has decided what to do with it. Logs, files, exports, images, everything gets poured in as it comes, and structure is applied later, when someone needs it. Companies keep lakes because storage is cheap and future questions are unpredictable.

The two words place a candidate on the line. Warehouse experience points at the modeled, business-facing end where dbt and SQL live. Lake experience points at the raw end, closer to heavy pipeline engineering. Most mature companies run both, with the pipeline flowing from lake to warehouse, and the quartet arranged along it: the engineer building the flow, the analyst and scientist drawing from the warehouse, and the ML engineer carrying models back out into the product.

FAQs

What is the difference between a data scientist and a data analyst?

A data analyst answers business questions from existing data, mostly with SQL and dashboards. A data scientist builds statistical or machine learning models to explain or predict, which requires more statistics and more coding.

What does a data engineer do?

A data engineer builds and maintains the pipelines that move data from where it is created to where it is analyzed, and shapes it along the way. The work is close to backend engineering.

What does an ML engineer do?

An ML engineer puts machine learning models into production and keeps them running reliably. The role sits between data science and backend engineering, and it is a different search from a research role.

What is a data pipeline?

A data pipeline is the automated path data takes from the systems that produce it to the places it gets used, including the steps that clean and reshape it. ETL is the older name for the same idea.

What is the difference between a data warehouse and a data lake?

A data warehouse holds cleaned, structured data ready for analysis. A data lake holds raw data of any shape, cheaply, for use later.

Is data science math or coding?

It is both, in different proportions by company. The common core is statistics plus enough coding to work with real data, and the balance is one of the things worth pinning down for a specific req.