AI Engineering: The Complete Course
Learn to build AI applications that keep working when real people use them.
Most courses stop when the demo works. This one starts there. Across 14 modules you build one product, a customer-support assistant for a fictional online store called BrightCart, and you take it all the way from a single model call to a deployed, tested, monitored service.
Who this course is for
| You are… | Start at |
|---|---|
| New to programming, or new to Python | Module 0, then Module 1 |
| Comfortable with Python | Module 0, then Module 2 |
| A working developer who has built and deployed software | Module 0, skim Modules 3-6, then go deep from Module 7 |
| A data scientist who knows ML already | Module 0, then Modules 1, 7-13 |
Every module's first page lists what you need to know before starting it, so you can check whether it is safe to skip the one before.
What you need
- A Google account, to run code in Google Colab. Nothing to install.
- One free API key, from Groq or Google Gemini, to use in Colab. Or no key at all, if you run a model on your own computer with Ollama and work in a code editor.
Setup takes about ten minutes: course-guide/02-setup-colab-and-llm-providers.md.
The modules
| # | Module | What you add to BrightCart | Status |
|---|---|---|---|
| 0 | Quick Win | A first working model call | Ready |
| 1 | Programming Foundations | An API client with retries and safe secrets | Ready |
| 2 | Data Handling | Clean, validated help-centre documents | Ready |
| 3 | Machine Learning Basics | A ticket-classifier baseline | Ready |
| 4 | Deep Learning Basics | A tiny neural network and an embedding explorer | Ready |
| 5 | NLP for Applications | Keyword search over the documents | Ready |
| 6 | Transformers | A prompt-versus-retrieve-versus-fine-tune decision | Ready |
| 7 | LLM Engineering | A reliable, structured, cost-tracked, defended answer engine | Ready |
| 8 | RAG | Answers grounded in documents, with citations | Ready |
| 9 | Agents and Tool Use | Tools and actions with human approval | Ready |
| 10 | Backend Engineering | A FastAPI service with auth and tests | Ready |
| 11 | Data Stores | PostgreSQL, vector storage, caching, background jobs | Ready |
| 12 | Evaluation and Observability | An evaluation harness, tracing and dashboards | Ready |
| 13 | Deployment and Operations | Docker, CI, cloud deployment, rollback | Ready |
| 14 | Professional Practice | A portfolio-ready write-up | Ready |
How each lesson works
Every lesson is a walk through one BrightCart example, one picture at a time: a figure, a short paragraph that says what it shows, a short block of code that proves it, and a walkthrough of every line. Each lesson:
- The situation: a problem at BrightCart.
- A real case, first: something that really happened, from a published source, cited.
- The idea: fifteen to thirty figures, one idea each, one running example.
- Run it: the smallest code that works, ready to paste into Colab, with a code walkthrough.
- Break it: you make it fail on purpose, then fix it.
- In production: what teams do with this at scale.
- Check yourself: a few questions, one exercise, key terms and sources.
Each module ends with a lab (a guided build of that module's piece of BrightCart) and an incident file (a real, published failure replayed on BrightCart and fixed).
More detail: course-guide/01-how-this-course-works.md.
The tools you will use
Python throughout. LangChain for calling language models and LangGraph for multi-step workflows and agents, so the same code works with Groq, Gemini or Ollama. Where it helps you understand, a lesson builds the mechanism by hand first and then shows the framework's version.
Course guide
| File | Read it when |
|---|---|
| 01-how-this-course-works.md | Before your first lesson |
| 02-setup-colab-and-llm-providers.md | Before you run any code |
| 03-the-brightcart-project.md | To see what you are building |
| 06-shared-data.md | To see the BrightCart data every module reuses |
| 04-style-guide.md | Only if you are writing or editing lessons |
| 05-image-style-guide.md | Only if you are drawing the course figures |