The Testing Academy · AI for QA

ML Engineer vs AI Engineer vs
Deep Learning Engineer

Three titles that get used interchangeably, for three genuinely different jobs. One trains models on business data, one ships features on foundation models, one designs the neural networks themselves. Here is how to tell them apart, and which door a tester should walk through.

The nesting picture Day-to-day per role Three litmus questions The QA route in

Three titles, one family tree. Recruiters use ML Engineer, AI Engineer, and Deep Learning Engineer as if they were interchangeable, and this tab gives you the single mental picture that untangles them.

ROLE_

ML vs AI vs DL Engineer

three titles, one decision, zero fog

Same "AI job", three different careers. One trains predictive models on business data, one builds products on foundation models, one designs neural networks from the math up. This page teaches you to tell them apart in one read of a job posting.

ML Engineer

models from your data

AI Engineer

features on model APIs

DL Engineer

the networks themselves

The litmus test

train it, or call it?

How the role decoder works

1. Read
The posting
ignore the title

Titles are marketing; duties are truth

2. Ask
Train or call?
model.fit vs api.chat

The single sharpest divider

3. Ask
What data?
tables vs pixels/text

Structured leans ML, unstructured leans DL

4. Ask
What ships?
artifact vs feature

A model file, or a product capability

5. Match
Your strengths
math vs systems

Depth of calculus vs breadth of product

6. Choose
Your ladder
prompts -> evals

Then climb it one project at a time

Run any posting through these six reads and the real role falls out, whatever the title says.

Job Posting DecoderIllustration

signals it scans for

"train and deploy models"ML
"RAG, agents, prompts"AI
"PyTorch, CUDA, transformers"DL
"feature engineering, drift"ML
"vector DB, guardrails, evals"AI
"loss curves, distributed GPUs"DL

reading mode

duties over title

tie-breaker

deliverableartifact / feature

paste posting › scan signals › apply litmus › verdict

"Senior AI Engineer: own our recommendation model retraining pipeline, feature store, and drift monitoring."
Decoderduties > title
  • Title says AI Engineer, duties say retraining, features, drift
  • Litmus 1: this role trains models, it does not call them
  • Litmus 2: recommendation data is structured business data
  • Litmus 3: the deliverable is a model pipeline, not a product feature
  • Verdict: this is an ML Engineer role wearing an AI title

verdict traced to

[1]duty"retraining pipeline"ML
[2]duty"feature store"ML
[3]duty"drift monitoring"ML
paste the next job posting...

The three roles, one line each

ML

trains predictive models

AI

ships model-powered features

DL

designs neural networks

data

tables vs media

math

stats vs calculus

ship

artifact vs feature

What this page settles

  • The nesting: AI contains ML, ML contains DL
  • What each engineer actually does all day
  • The stacks: scikit-learn vs LangChain vs PyTorch
  • Three litmus questions that decode any posting
  • Which path fits your strengths, honestly
  • The QA route in, mapped to real projects

Quickstart (local)

# 1. taste the AI engineer path
ollama pull llama3.2:3b
pip install deepeval

# 2. at the prompt
ollama run llama3.2:3b

# 3. then follow the ladder
prompts -> RAG -> agents -> MCP -> evals

Why testers should care

Every AI feature that ships needs someone who can prove it works, and most teams are weakest exactly there. Your QA instincts (oracles, edge cases, regression thinking) map straight onto the eval and reliability gap most AI teams have.

3roles decoded
7tabs
14diagrams
5path questions
1ladder for QA

Why the three titles confuse everyone

The nesting: one umbrella, two subsets

AI: the umbrellaany system that automates decisions or perceptionML: learns from datapatterns from examples instead of hand-written rulesDL: neural networksmulti-layer nets, mostly for images, audio and text
The nesting: every DL engineer works in ML, every ML engineer works in AI

Titles are marketing, responsibilities are the truth

Job postingignore the titleRead the dutieswhat does it build?Litmus questionstrain or call? tables ormedia?Real roleML, AI, or DL
Decode the role from the duties, never from the title
Trap. Because AI is the umbrella term, beginners assume the AI Engineer title implies the deepest expertise. By current convention it is usually the opposite on math: the deepest math lives in the DL specialization, while the AI Engineer path leans on systems and product engineering instead. The umbrella word does not mean the umbrella skill set.

Start with the baseline everything else is measured against: the next tab breaks down the ML Engineer, the classic role that ships predictive models on your company's own data.

The ML Engineer is the classic role of the three: the engineer who turns a company's own structured data into predictive models, then keeps those models honest in production.

What an ML engineer builds

The day-to-day

Raw datatables, events,logsFeaturesclean, join,engineerTrain + evaluatepick the winningmodelDeployserve behind an APIMonitorwatch for drift
The ML engineer's core pipeline, from warehouse to watched model

The role at a glance

AspectDetail
What they buildPredictive models on structured business data: fraud, ranking, recommendations, churn, forecasting, anomaly detection
Core loopClean data, engineer features, train and evaluate, deploy behind an API, monitor drift, retrain
Typical stackPython, pandas, scikit-learn, XGBoost/LightGBM, SQL, model registries, Airflow-style schedulers, Docker, cloud ML platforms, MLflow-style experiment tracking
Math depthSolid statistics and evaluation methodology; feature and label thinking
OutputA trained model artifact plus a serving pipeline plus monitoring
Failure modes ownedData leakage, drift, stale features, silent accuracy decay
Litmus answersTrains models (not just calls them), structured data, deliverable is a model artifact

A week in the life

  1. Start in SQL and pandas. Pull fresh data, profile it, and clean the issues that would poison training; unglamorous, but everything downstream depends on it.
  2. Build and refine features. Encode the business signal into columns, and think hard about labels so future information cannot leak into the training data.
  3. Train, evaluate, and track. Fit candidates with scikit-learn or XGBoost/LightGBM, log every run in MLflow-style experiment tracking, and pick a winner on honest held-out metrics.
  4. Ship it behind an API. Containerize with Docker, register the artifact in the model registry, and deploy on the cloud ML platform so callers get predictions, not notebooks.
  5. Close the loop. Wire up drift monitoring and the Airflow-style retraining pipeline, because a good week ends with drift caught by the pipeline before users ever see it.
Model in productionserving predictionsAccuracy decaysdata drifts under itRetrain on fresh dataship the new versionthe retraining loop
Drift is not a failure, it is the schedule
Trap. The failure modes an ML engineer owns are quiet ones: data leakage flatters your offline metrics, drift erodes accuracy after launch, and stale features rot without an error message. Nothing crashes; the numbers just stop being true. That is why monitoring and retraining are part of the role, not an afterthought.

Baseline set. The remaining titles are departures from it: one builds on foundation models someone else trained, the other goes all-in on neural networks. Next up: the AI Engineer, the title that changed its meaning.

The newest title of the three, and the one whose meaning moved. In the LLM era, an AI Engineer usually builds on foundation models that other people trained, and turns them into product features that hold up in production.

What the title means now

Day-to-day work

Pick a model APIhosted or open-weightsGround itRAG over your dataAdd toolsagent takes actionsGuardrails +evalsprove it behavesShip the featuremonitor cost andlatency
The AI engineer's pipeline: composition, not training

The shape of the work

# shape of an AI feature (pseudo-config, not a real vendor file)
model:      hosted foundation model, routed per task
retrieval:  vector database over product docs, best matches into the prompt
tools:      ticket search, order lookup, bug filing (the agent part)
guardrails: input filters, output schema checks, refusal rules
evals:      golden set plus LLM-as-judge, run on every prompt change
budget:     p95 latency and cost per request, tracked like test coverage

At a glance

AspectDetail
Core questionCan I ship a reliable feature on top of a model someone else trained?
Trains or callsCalls: foundation models reached through APIs
Works withA hosted model plus your product's documents, data, and APIs
Day-to-dayPrompts, RAG, agents, routing, guardrails, evals, vector DBs, latency and cost
Typical stackModel APIs (OpenAI, Anthropic, Groq, open-weights via Ollama), LangChain or LangGraph style orchestration, vector DBs (Chroma or Pinecone style), eval harnesses (DeepEval, PromptFoo), normal backend skills
Math depthLightest of the three: systems and product depth carry the role
DeliverableAn AI-powered feature or agent, with evals and monitoring around it

The train-vs-call divide

Trains modelsOwns data prep and featuresRuns training jobsDelivers a model artifactClassic ML and DL workCalls modelsStarts from a foundation modelOwns prompts, RAG, agentsDelivers a product featureThe LLM-era AI engineerVS
The sharpest divider between the roles: train it, or call it
Titles drift. Some companies still use AI Engineer in the broad classic sense: anything under the AI umbrella, including symbolic, vision, or robotics work. Job descriptions beat titles, so judge the role by what it builds, not by what it is called.

Next up is the opposite end of the spectrum: the Deep Learning Engineer, the specialist who designs and trains neural networks like the ones behind those hosted APIs.

The specialist of the three. A Deep Learning Engineer designs and trains neural networks, mostly for unstructured data, and works with the deepest math and the narrowest job market of the three roles.

The specialist inside ML

Day-to-day work

Pick architectureCNN, transformer,or variantPrepare dataaugment and labelTrain on GPUshours to weeksTuneread the losscurvesCompress + servequantize, distill,deploy
The DL engineer's loop lives closest to the metal

Anatomy of a training run

  1. Pick and adapt an architecture. Start from a proven family, a CNN for images or a transformer for sequences, and modify it for the task instead of inventing from a blank page.
  2. Prepare the data and augmentation. Label, split, and augment the raw media (crops, flips, noise) so the network sees more variety than you could ever collect.
  3. Launch the run on GPUs. Kick off training, often distributed across machines, and let it run while you watch the metrics rather than the clock.
  4. Read the loss curves and tune. A diverging or plateauing curve sends you back to the hyperparameters; this feedback loop is where most of the craft lives.
  5. Compress and serve. Quantize or distill the trained network, then export it through an ONNX or TensorRT style path so inference meets the latency budget.

At a glance

AspectDetail
Core questionCan I train a network that learns this task from unstructured data?
Trains or callsTrains: designs and trains neural networks from the data up
Works withUnstructured data: images, audio, video, text
Day-to-dayArchitectures, GPU runs, loss curves and tuning, augmentation, compression
Typical stackPyTorch or TensorFlow, CUDA and GPUs, distributed training, ONNX or TensorRT for serving, vector math everywhere
Math depthDeepest of the three: linear algebra, calculus and backprop intuition, optimization
DeliverableA trained network plus its training recipe, often research-adjacent
Where the jobs areFewest openings: companies that train their own models (vision, speech, robotics, foundation-model shops)

The math depth ladder

DL engineer: deepest mathlinear algebra, calculus, optimization, dailyML engineer: solid statisticsevaluation methodology and feature thinkingAI engineer: lightest mathsystems and product depth instead
Math depth is the honest ladder between the three
Trap. Do not pick this path because the title sounds the most advanced. It has the fewest openings of the three and clusters in companies that train their own models; everywhere else, the network arrives pretrained behind an API.

That completes the three roles. The next tab drops the titles and puts the actual work side by side; the two after it hand you the sorting questions and the QA route in.

Same umbrella, three different jobs. This table puts the roles side by side so you can compare them in one pass, and the tells below let you classify any posting at a glance.

One table, three roles

AspectML EngineerAI EngineerDeep Learning Engineer
What they buildPredictive models on structured business data: fraud detection, ranking, recommendations, churn, forecasting, anomaly detectionProduct features and agents on top of existing foundation models: RAG pipelines, tool-calling agents, model routing, guardrailsNeural networks themselves: CNNs and transformers for images, audio, video, and text
Data they touchThe company's own structured data: tables, events, transactionsMostly text and documents flowing through a model someone else trained, plus the retrieval corpora behind RAGUnstructured media: images, audio, video, raw text used for training
Core loopClean data -> engineer features -> train and evaluate -> deploy behind an API -> monitor drift -> retrainDesign prompts -> wire retrieval and tools -> run evals -> ship the feature -> tune latency and cost -> monitorPick or modify an architecture -> run GPU training -> read loss curves -> tune and augment -> compress for inference
Typical stackPython, pandas, scikit-learn, XGBoost/LightGBM, SQL, model registries, Airflow-style schedulers, Docker, MLflow-style experiment trackingModel APIs (OpenAI, Anthropic, Groq, open-weights via Ollama), LangChain/LangGraph-style orchestration, vector DBs (Chroma/Pinecone-style), eval harnesses (DeepEval, PromptFoo), normal backend skillsPyTorch or TensorFlow, CUDA and GPUs, distributed training, ONNX/TensorRT for serving
Math depthSolid statistics and evaluation methodology, feature and label thinkingLightest of the three: systems and product engineering depth insteadDeepest of the three: linear algebra, calculus and backprop intuition, optimization
Main deliverableA trained model artifact plus serving pipeline and monitoringAn AI-powered feature or agent, with evals and monitoring around a model someone else trainedA trained network plus its training recipe, often research-adjacent
Failure modes they ownData leakage, drift, stale features, silent accuracy decayUngrounded answers, prompt and retrieval regressions, weak guardrails, runaway latency and costUnstable training runs, wasted GPU budget, networks too heavy or slow to serve without quantization or distillation
Where the jobs areThe broadest classic pool: nearly every company with its own data has ranking, fraud, churn, or forecasting problemsThe lane that grew fastest in the LLM era: every product team wants AI features, and calling a model is cheaper than training oneThe smallest and most specialized: concentrated where companies train their own models (vision, speech, robotics, foundation-model shops)
ML EngineerPredictive models on business datascikit-learn, XGBoost, SQLOwns drift and retrainingShips a model behind an APIAI EngineerFeatures on foundation modelsLangChain-style tools, vector DBsOwns prompts, RAG, evalsShips an AI-powered featureVS
Structured-data models vs product features on models someone else trained

The fastest tells

DL EngineerDesigns the networks themselvesPyTorch, CUDA, GPU clustersDeepest math of the threeResearch-adjacent, fewest openingsThe other twoML: trains classic models on business dataAI: ships features on hosted modelsLighter math, broader toolsFar more openingsVS
The specialist against the two generalists

That is the map. The next tab turns it into a decision: a short set of questions that tells you which of the three lanes fits the skills you already have.

Forget the titles for a minute. Answer five questions honestly and the right lane usually picks itself.

Five questions that sort it

  1. Do you want to train models or call them? If the exciting part is training on your own data, you are looking at ML or DL work. If the exciting part is shipping something users touch by calling a foundation model, that is the AI Engineer lane.
  2. Structured business data or unstructured media? Tables, events, and transactions point at ML Engineer. Images, audio, video, and raw text you train on point at Deep Learning. Documents you retrieve and feed to a model point at AI Engineer.
  3. Is the deliverable a model artifact or a product feature? If success means a trained artifact plus its pipeline and monitoring, choose ML or DL. If success means a feature or agent in production, with evals wrapped around a model someone else trained, choose AI Engineer.
  4. How much math do you actually want? The deepest appetite (linear algebra, calculus and backprop intuition, optimization) fits DL. Solid statistics and evaluation methodology fits ML. If you would rather go deep on systems and product engineering than on math, that is the AI Engineer profile.
  5. Product taste or research taste? DL work is often research-adjacent: architectures, loss curves, training recipes. ML lives in pipelines, retraining, and monitoring. AI Engineer sits closest to the product, shipping features and tuning latency and cost.
Read the postingduties, not titleAsk the five questionsthree litmus, two tasteMatch your strengthsmath, data, product tasteChoose the ladderthen climb one rung at atime
A decision you can make in one honest afternoon

Pick your lane

Titles are marketing. The same posting can carry any of the three names depending on who wrote it, and some companies still use "AI Engineer" in the older, broad sense (anything AI, including vision and robotics work). Responsibilities are the truth: read what the role builds, not what it is called.
DL Engineerchoose when the math itself excites youML Engineerchoose when company data and pipelines excite youAI Engineerchoose when shipping product fastest excites you
Three rungs, three temperaments: pick the one you would do on a bad day

Whichever rung you choose, prove it with a small build before you rewrite your resume: an eval suite for a chatbot, RAG over your own test docs, or a bug-triage agent. The title follows the things you ship.

If you test software for a living, you are closer to this field than you think. The AI Engineer path is the natural door in for a QA or SDET, because the thing most AI teams are worst at, proving the system actually works, is the thing you already do all day.

The skills you already carry

QA skill you haveWhere it pays off on the AI Engineer path
Python or JS scriptingCalling model APIs, building RAG glue code, wiring agents and eval harnesses
API testingContract tests around model endpoints: schemas, timeouts, failure modes
CI/CD pipelinesRunning DeepEval and PromptFoo suites as merge gates instead of manual spot checks
Oracle and edge-case thinkingDesigning LLM evals: defining "correct" for fuzzy, non-deterministic output
Regression mindsetCatching prompt and model changes that silently break behavior that used to work

The transition ladder

Promptstalk to themodel wellRAGground it inyour docsAgentsgive it toolsMCPstandard toolplumbingLLM evalsDeepEval andPromptFooAI testingtoolsjudge themhands-on
The blueprint ladder: each rung reuses the skills from the one below

Entry projects that sound like your job

Your first stretch of building

  1. Set up once, properly. A working Python or Node environment, one model API key or a local open-weights model, and a repo you commit to from the first script. Good looks like: a fresh clone runs in minutes.
  2. Ship a prompt, not a course. Write a small script that sends a real task from your week to a model and prints the answer. Momentum beats syllabus, and the first rung of the ladder is deliberately small.
  3. Ground it with RAG. Point the same script at your own test documents so answers cite your material instead of guessing. You now understand retrieval because you built it, not because you watched it.
  4. Give it hands, carefully. Grow the script into a small agent with one or two tools, then expose those tools over MCP so they plug into other clients. The bug-triage agent is a natural candidate here.
  5. Write the evals before you trust it. DeepEval and PromptFoo suites that score correctness, groundedness, and regressions, wired into CI so every prompt or model change gets judged automatically.
  6. Harden, ship, and loop. Add monitoring, latency and cost budgets, and failure handling, then show the thing to someone. Start the next small feature with the same loop, carrying your eval suite forward.
Build a small AI featurescoped to one weekWrite evals for itdefine correct firstHarden and shipbudgets, monitoring, CI gatethe QA advantage loop
Every cycle compounds: the last feature's evals guard the next one
The eyeball trap. Reading a model's output and nodding is not evaluation, it is the manual checking you already automated out of your life once before. If a feature has no eval suite, you do not know it works, you only know it worked the last time you looked. Bring the same discipline here that you brought to regression testing, and you become the reliability engineer most AI teams are missing.

Ready to climb? Do the boring part first: the batch setup guide walks you through the keys, tools, and repo layout, so your first rung is a build session, not a fight with your machine.