What is an AI engineer?
An AI engineer builds products on top of existing models. It is a different job from training the models.
Words on this page (12)
- training
- : Adjusting a model's parameters on data so its predictions improve.
- weights
- : The learned numbers that define a trained model. A model whose weights are published is called open-weight.
- prompt
- : The input text you give a model, including instructions, examples and data.
- retrieval
- : Finding the most relevant pieces of text for a query.
- tool
- : A function the model can ask your program to run, described by a name, description and argument schema.
- eval
- : A repeatable test of AI output quality, run before and after every change.
- skill
- : A folder of instructions and scripts an agent loads only when a task needs it.
- trace
- : The full record of one run: inputs, model calls, tool calls, outputs, timing and cost.
- latency
- : The time you wait for a response.
- AGI
- : Artificial general intelligence: a loosely defined label for AI as capable as people across most tasks. There is no agreed test.
- policy
- : A rule for choosing actions. In a language model, the model itself is the policy.
- API
- : Application programming interface: a way for one program to call another, usually over HTTP.
The roles
An AI researcher invents new methods and trains frontier models. A machine learning engineer trains and deploys custom models on an organization's data. An AI engineer uses pretrained models through APIs or open , and builds the system around them: , , , and deployment. Software engineers already have most of the : APIs, databases, testing and operations. What is new is working with a non-deterministic component.
What the work looks like
Choose a model. Design prompts and context. Add retrieval and tools. Build evals to know whether it works. and monitor it in production. Control cost and . Keep it safe. The roadmap in this site follows that order.
AI is narrow, AGI is a goal
All current systems are narrow in the sense that they have uneven abilities: superhuman on some tasks and brittle on others. , artificial general intelligence, has no agreed definition. Do not design around it. Design around what the model measurably does on your task today.
How to grow
Build small projects that break in interesting ways. Read traces of your own system. Learn evals early. Keep a short list of sources and ignore the noise.
A worked example: a day in the life of an AI engineer
Morning: read yesterday's failed conversations from the assistant and group them by cause. Midday: change a prompt, add a missing tool, rerun the test set to see if the pass rate moved. Afternoon: check cost and speed dashboards, review a pull request, talk to the people who use the product. Notice how little of it is " a model" and how much is testing, reading and fixing.
What you need to start
Basic programming, comfort reading error messages, curiosity about why something failed, and the habit of measuring. Math helps for understanding but is not required to build. This path covers the math in a gentle way so you can follow the research when you want to.
A worked example: finding which stage failed
A support assistant tells a customer the refund window is 60 days. The says 30. The work is locating the stage that failed.
- Open the trace, the logged record of the conversation and every step inside it.
- Check whether the retrieved documents included the 30 day policy.
- If not, the retrieval step is the problem. Fix how documents are split or searched.
- If yes, the prompt or the model ignored it. Reword the instructions or try another model.
- Add this case to the test set and rerun all cases, so the fix cannot quietly break something else.
Trade-offs: call an API, run open weights, or train
Calling a hosted model through an is the fastest start. You pay per use, your data leaves your systems, and the provider can change or retire the model. Running open weights gives you control and privacy, but you now operate the servers. Training your own model makes sense only when you have enough data and nothing existing meets the need. Most products should start with the first option and move only when a measured problem pushes them.
What goes wrong in the role
Three symptoms come up again and again.
- The demo works but production fails. The cause is usually testing on five easy examples. Build a test set of real cases.
- A change feels better but you cannot tell. Without a score, you are guessing. Run the same set before and after.
- Results differ between runs. The model is non-deterministic, so run each case several times.
Try it yourself
Take a document you own. Write 10 questions whose answers you know. Ask any chat model, mark each answer right or wrong, and note the score. Change the instructions and rescore. Expect the score to move by a case or two, sometimes up and sometimes down on identical input. That noise is why real projects need larger test sets than 10.
Common mistake
Waiting to feel "ready". The field changes every few months, so nobody is. Build something small this week.
Two friends learn about AI. One spends two years studying how to train models and joins a research lab. The other learns to call models well, add the company's documents and tests, and ships a support assistant in six weeks. Both are valuable, and the second one is what most companies are hiring for.
Check yourself
How does an AI engineer differ from an ML engineer?
Not quite. The first builds systems around existing models. The second trains models.
Why not design a product around AGI?
Not quite. Design around measured behavior on your own task today.
You are starting out and the field changes every month. What is the best first step?
Not quite. Building something small teaches more than waiting, and the habits carry over.
You got 0 of 3 right.
Go deeper
- Tool
roadmap.sh · A community roadmap of the skills, to compare with this path.
- ArticleThe Rise of the AI EngineerArticle
swyx · The essay that named the role.
- Article
Louis-François Bouchard · A learning guide organized by how you like to learn.
Spotted a mistake or something unclear? Report it on GitHub.