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 pictureDay-to-day per roleThree litmus questionsThe 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.
"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 promptollama 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
They name circles, not silos. AI, ML, and DL are not three rival fields: they nest inside each other, so all three titles can truthfully claim to "work in AI", which flattens the real differences between the jobs.
One label quietly changed meaning. By current industry convention, AI Engineer most often means an engineer who builds on existing foundation models, yet some companies still use it in the older, broad sense: anything AI at all, including symbolic, vision, and robotics work.
Postings recycle whichever title is trending. The same set of responsibilities may be advertised under any of the three names, so two identical jobs can carry different titles and two very different jobs can carry the same one.
Learners pick a label before the work. Chasing a fashionable title instead of a concrete kind of work leads to the wrong study plan; the fix is to decode roles from what they actually build, which is exactly what this guide does.
The nesting: one umbrella, two subsets
AI is the umbrella. Any system that automates decisions or perception qualifies, whether it learns from data or follows hand-written rules.
ML is the subset that learns. Machine learning systems learn patterns from data instead of relying on hand-written rules: that one sentence is the entire boundary between ML and the rest of AI.
DL is the subset that goes neural. Deep learning is machine learning done with multi-layer neural networks, and it is where most work on unstructured data (images, audio, video, text) lives.
The chain runs one way. Every DL engineer works in ML, and every ML engineer works in AI, but the reverse does not hold: an AI engineer may never train a model, and an ML engineer may never touch a neural network.
The nesting: every DL engineer works in ML, every ML engineer works in AI
Titles are marketing, responsibilities are the truth
Read the deliverable, not the header. The title on a posting is a branding choice; the "what you will build" section is the actual role, and it outranks the title every time.
Expect mislabeled postings. Since any of the three names can sit on top of the same job, treat the title as a hint at best and verify it against the listed responsibilities before judging fit.
Three litmus questions cut through it. Do you train models or call them? Structured business data or unstructured media? Is the deliverable a model artifact or a product feature? The rest of this guide keeps returning to these.
Answers beat adjectives. Every posting says "cutting-edge AI"; the litmus answers (train vs call, structured vs unstructured, artifact vs feature) are hard to fake and map a posting to its real role in seconds.
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
Predictive models on the company's own data. The bread and butter is structured business data: fraud detection, ranking, recommendations, churn prediction, forecasting, and anomaly detection.
Learned behavior, not hand-written rules. The whole point of the role is replacing brittle rule lists with systems that learn patterns from historical data and generalize to new cases.
A three-part deliverable. The output is a trained model artifact plus a serving pipeline plus monitoring: all three together, not just a model file handed over the wall.
Statistics-first math. The required depth is solid statistics and evaluation methodology, with constant feature and label thinking; heavy neural-network math is not the default requirement here.
Clear litmus answers. Against tab 1's questions: trains models rather than only calling them, lives in structured business data, and delivers a model artifact rather than a product feature.
The day-to-day
Clean data and engineer features. Most work starts in the data itself: fixing quality issues and turning raw columns into features a model can actually learn from.
Train and evaluate models. Run experiments, compare candidates, and apply careful evaluation methodology so the offline numbers can be trusted.
Deploy behind an API. Package the winning model and serve it so product systems can call predictions like any other service.
Monitor for drift. Watch production behavior, because the world changes and yesterday's accurate model quietly stops matching today's data.
Automate retraining pipelines. The MLOps side of the job: schedulers, model registries, and experiment tracking that make retraining routine instead of an emergency.
The ML engineer's core pipeline, from warehouse to watched model
The role at a glance
Aspect
Detail
What they build
Predictive models on structured business data: fraud, ranking, recommendations, churn, forecasting, anomaly detection
Core loop
Clean data, engineer features, train and evaluate, deploy behind an API, monitor drift, retrain
Typical stack
Python, pandas, scikit-learn, XGBoost/LightGBM, SQL, model registries, Airflow-style schedulers, Docker, cloud ML platforms, MLflow-style experiment tracking
Math depth
Solid statistics and evaluation methodology; feature and label thinking
Output
A trained model artifact plus a serving pipeline plus monitoring
Failure modes owned
Data leakage, drift, stale features, silent accuracy decay
Litmus answers
Trains models (not just calls them), structured data, deliverable is a model artifact
A week in the life
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.
Build and refine features. Encode the business signal into columns, and think hard about labels so future information cannot leak into the training data.
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.
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.
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.
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
Builds on foundation models. The industry convention today: an AI Engineer ships systems on top of existing models reached through an API, rather than training models from scratch.
The model is a component, not the project. The engineering happens around it: retrieval to ground answers, tools to take actions, guardrails to contain output, evals to prove it works.
The deliverable is a feature. The output is an AI-powered feature or agent with evals and monitoring, not a trained model artifact.
Lightest math, heaviest product and systems. Of the three roles this one asks for the least mathematics and the most backend, API, and product engineering judgment.
Closest to a normal software job. The stack is model APIs plus ordinary backend skills, which is why this path has the shortest on-ramp for working engineers and testers.
Day-to-day work
Prompt design. Writing and versioning the instructions that steer the model, and treating every change as something to test.
RAG pipelines and vector databases. Chunking, embedding, and indexing the company's documents so the model answers from real knowledge instead of guessing.
Tool-calling agents. Wiring the model to APIs so it can look things up and take actions, then constraining what it is allowed to do.
Model routing. Sending each request to the model that fits it, so simple work does not pay for premium reasoning capability.
Guardrails and evals. Input filters, output checks, and LLM-as-judge eval suites that catch regressions when prompts or models change.
Latency and cost tuning. Watching response times and per-request spend the way a backend engineer watches any other production budget.
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
Aspect
Detail
Core question
Can I ship a reliable feature on top of a model someone else trained?
Trains or calls
Calls: foundation models reached through APIs
Works with
A hosted model plus your product's documents, data, and APIs
Model 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 depth
Lightest of the three: systems and product depth carry the role
Deliverable
An AI-powered feature or agent, with evals and monitoring around it
The train-vs-call divide
The one-question filter. Ask of any role: do you train models or call them? The answer places the job faster than the title does.
The training side. Classic ML and DL work: cleaning data, engineering features, running training jobs, shipping a model artifact, watching for drift.
The calling side. AI engineering: designing prompts and retrieval, orchestrating tools and routing, wrapping guardrails and evals around a hosted model.
Reliability lives on both sides. Training work monitors drift and silent accuracy decay; calling work monitors evals, latency, and cost. Neither side gets to skip the watching.
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
A subset of a subset. Deep learning is machine learning done with multi-layer neural networks, so every DL engineer works in ML and in AI, while the reverse does not hold.
Unstructured data is home turf. Images, audio, video, and text: the data where classic feature engineering runs out of road and the network learns the representations instead.
Research-adjacent by nature. The deliverable is a trained network plus the training recipe that produced it, and the role sits closer to research than either of the other two.
The deepest math of the three. Linear algebra, calculus and backprop intuition, and optimization are daily working tools here, not background theory.
The narrowest market. Fewest openings of the three, concentrated in companies that train their own models: vision, speech, robotics, and foundation-model shops.
Day-to-day work
Architecture selection and modification. Choosing and adapting network families, CNNs for images and transformers for sequences, to fit the task at hand.
GPU training runs. Launching long runs, often distributed across many GPUs, and keeping them healthy while they grind through the dataset.
Loss curves and hyperparameter tuning. Reading training and validation curves, then adjusting learning rate, batch size, and the rest of the knobs until the network converges.
Data augmentation. Stretching a limited dataset with transformations so the network generalizes instead of memorizing what it saw.
Model compression. Quantization and distillation that shrink a trained network so inference is fast and affordable in production.
The DL engineer's loop lives closest to the metal
Anatomy of a training run
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.
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.
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.
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.
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
Aspect
Detail
Core question
Can I train a network that learns this task from unstructured data?
Trains or calls
Trains: designs and trains neural networks from the data up
Works with
Unstructured data: images, audio, video, text
Day-to-day
Architectures, GPU runs, loss curves and tuning, augmentation, compression
Typical stack
PyTorch or TensorFlow, CUDA and GPUs, distributed training, ONNX or TensorRT for serving, vector math everywhere
Math depth
Deepest of the three: linear algebra, calculus and backprop intuition, optimization
Deliverable
A trained network plus its training recipe, often research-adjacent
Where the jobs are
Fewest openings: companies that train their own models (vision, speech, robotics, foundation-model shops)
The math depth ladder
DL engineer: deepest. Linear algebra, calculus, and optimization are how you debug a training run when the loss refuses to fall.
ML engineer: solid statistics. Evaluation methodology and feature-and-label thinking carry the classic role more than heavy calculus does.
AI engineer: lightest. Systems and product engineering depth substitutes for math depth when the model arrives pretrained.
Use the ladder as a filter. If reasoning about gradients sounds like fun, DL fits; if shipping features on strong model APIs sounds better, the AI engineer path fits.
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
Aspect
ML Engineer
AI Engineer
Deep Learning Engineer
What they build
Predictive models on structured business data: fraud detection, ranking, recommendations, churn, forecasting, anomaly detection
Product features and agents on top of existing foundation models: RAG pipelines, tool-calling agents, model routing, guardrails
Neural networks themselves: CNNs and transformers for images, audio, video, and text
Data they touch
The company's own structured data: tables, events, transactions
Mostly text and documents flowing through a model someone else trained, plus the retrieval corpora behind RAG
Unstructured media: images, audio, video, raw text used for training
Core loop
Clean data -> engineer features -> train and evaluate -> deploy behind an API -> monitor drift -> retrain
Design prompts -> wire retrieval and tools -> run evals -> ship the feature -> tune latency and cost -> monitor
Pick or modify an architecture -> run GPU training -> read loss curves -> tune and augment -> compress for inference
Model APIs (OpenAI, Anthropic, Groq, open-weights via Ollama), LangChain/LangGraph-style orchestration, vector DBs (Chroma/Pinecone-style), eval harnesses (DeepEval, PromptFoo), normal backend skills
PyTorch or TensorFlow, CUDA and GPUs, distributed training, ONNX/TensorRT for serving
Math depth
Solid statistics and evaluation methodology, feature and label thinking
Lightest of the three: systems and product engineering depth instead
Deepest of the three: linear algebra, calculus and backprop intuition, optimization
Main deliverable
A trained model artifact plus serving pipeline and monitoring
An AI-powered feature or agent, with evals and monitoring around a model someone else trained
A trained network plus its training recipe, often research-adjacent
Failure modes they own
Data leakage, drift, stale features, silent accuracy decay
Ungrounded answers, prompt and retrieval regressions, weak guardrails, runaway latency and cost
Unstable training runs, wasted GPU budget, networks too heavy or slow to serve without quantization or distillation
Where the jobs are
The broadest classic pool: nearly every company with its own data has ranking, fraud, churn, or forecasting problems
The lane that grew fastest in the LLM era: every product team wants AI features, and calling a model is cheaper than training one
The smallest and most specialized: concentrated where companies train their own models (vision, speech, robotics, foundation-model shops)
Structured-data models vs product features on models someone else trained
The fastest tells
Listen for the verb. "Train" on your own business data says ML Engineer, "train at scale on GPUs" says Deep Learning Engineer, "integrate" or "call" a model API says AI Engineer.
Read the stack line. scikit-learn and SQL point at ML, PyTorch and CUDA point at DL, LangChain-style orchestration and a vector database point at AI Engineer.
Check the data. Tables and transactions mean ML, images and audio mean DL, prompts and documents fed to a foundation model mean AI Engineer.
Ask what ships. A model artifact with a serving pipeline is ML, a trained network with a training recipe is DL, a feature or agent inside a product is AI Engineer.
Probe the math. Interviews heavy on statistics and evaluation signal ML, backprop and optimization signal DL, system design and product tradeoffs signal AI Engineer.
Look at what monitoring means. Drift dashboards belong to ML, loss curves belong to DL, eval suites with latency and cost budgets belong to AI Engineer.
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
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.
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.
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.
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.
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.
A decision you can make in one honest afternoon
Pick your lane
Pick ML Engineer if. You enjoy turning messy business tables into features and labels, and a well-monitored pipeline feels like a finished product to you.
Pick ML Engineer if. Statistics and evaluation methodology are your comfort zone and you want the broadest pool of classic openings to aim at.
Pick AI Engineer if. You want to ship user-facing features fast by building on foundation models: prompts, RAG, agents, guardrails, and evals rather than training runs.
Pick AI Engineer if. You already have backend or QA instincts (APIs, CI/CD, an evaluation mindset) and want the lightest math on-ramp of the three.
Pick DL Engineer if. Linear algebra and backprop intuition genuinely excite you, and research-adjacent work on architectures and training recipes sounds like fun rather than a chore.
Pick DL Engineer if. You want to work on images, audio, video, or speech at companies that train their own networks, and you accept the smallest, most specialized market in exchange.
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.
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
Scripting is covered. The Python or JavaScript you use for automation is the same language this stack speaks: calling model APIs, gluing pipelines together, writing harnesses.
API skills transfer straight across. A model behind an endpoint is still an endpoint: auth, payloads, status codes, timeouts, contract thinking. You have tested harder APIs than this.
CI and CD become eval gates. The pipelines you already build for regression suites are exactly where LLM evals need to live, so nobody ships a prompt change blind.
The evaluation mindset is the rare part. Oracles, edge cases, regression thinking: most AI teams struggle to define what "correct" even means for a model. You have a whole career of answering that question.
That mix points at one role. It maps most directly onto the AI Engineer path, building on existing models, because evals and reliability are the weak spot of most teams and your strongest muscle.
The other two doors cost more up front. The ML Engineer route asks for statistics depth and feature pipelines before you ship anything, and the DL route demands the heaviest math for the fewest openings. Start where your edge pays off on day one, and keep the option to go deeper later.
QA skill you have
Where it pays off on the AI Engineer path
Python or JS scripting
Calling model APIs, building RAG glue code, wiring agents and eval harnesses
API testing
Contract tests around model endpoints: schemas, timeouts, failure modes
CI/CD pipelines
Running DeepEval and PromptFoo suites as merge gates instead of manual spot checks
Oracle and edge-case thinking
Designing LLM evals: defining "correct" for fuzzy, non-deterministic output
Regression mindset
Catching prompt and model changes that silently break behavior that used to work
The transition ladder
Climb in order. Prompts first, then RAG, then agents, then MCP, then LLM evals with DeepEval and PromptFoo, then the AI testing tools built on top of all of it. Each rung reuses the one below.
This is the AI Tester Blueprint sequence. The ladder is not invented for this page: it is the order the batch teaches, because it is the order the skills depend on each other.
Get the words straight early. If model, agent, and tool-calling still blur together, LLM vs AI agent draws the line before you start climbing.
The middle rungs have guides.RAG for QA covers grounding a model in your own documents, and AI agents for QA covers giving it tools and a loop.
The top rungs are your edge. Evals are where a tester stops following this field and starts leading it: begin with the DeepEval masterclass, then bring PromptFoo alongside it for prompt-level comparisons.
The blueprint ladder: each rung reuses the skills from the one below
Entry projects that sound like your job
An LLM eval suite for a chatbot. Pick any bot you can reach, define what a good answer looks like, and score it with DeepEval and PromptFoo. It is a portfolio piece almost no other applicant has.
RAG over your own test docs. Index your test plans, runbooks, and bug reports, then ask questions against them. You learn chunking, retrieval, and grounding on data you already understand deeply.
A bug-triage agent. Feed it incoming bug reports and let it label severity, flag likely duplicates, and draft repro steps. Agents click fastest when the workflow is one you already do by hand.
Contract tests around a model API. Treat the model endpoint like any third-party dependency: schema checks, latency budgets, failure-mode tests, and alerts when behavior drifts.
Your first stretch of building
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.
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.
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.
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.
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.
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.
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.