FutureStackDev AI Agent Development

Applied GenAI Engineering

From API calls to production systems. Organised by shipped increments, not topics. You deploy in week 4, and every four weeks after that — seven sprints, seven ships.

Created by Baljeet Dogra

Course Objectives

The destination is the same as a topic-ordered GenAI course: you start calling LLM APIs and you leave able to build and deploy a RAG or agent system. The route is different. Engineers who deploy seven times learn things that engineers who deploy once at the end do not.

  • Ship a reliable LLM service in month one — schema, retries, streaming, cost and latency on a dashboard.
  • Put evaluation second, not last, so everything after is gated in CI.
  • Make retrieval work on messy documents, with citations and abstention, not a clean FAQ demo.
  • Build the agent loop yourself, then bound it: budgets, approval, tracing, and a kill switch.
  • Treat fine-tuning as a decision to justify, and hardening as SLOs, injection and a runbook.
  • Defend a real system on trade-offs, failure modes and cost — not on the demo.

What you will produce

Seven deployed artefacts, not seven notebooks. Each sprint: week 1 concepts and a guided build, week 2 a harder requirement, week 3 you break it and fix it, week 4 you deploy, instrument, and defend in peer review. Nothing is complete until it runs off your laptop.

Ship #1

Instrumented LLM API

Schema-validated output, retries, streaming, live cost and latency dashboard.

Ship #2

Eval harness in CI

Golden set on real data, gating deploys of Ship #1, with a baseline report.

Ship #3

RAG over messy documents

Citations, abstention, retrieval metrics through the same harness.

Ship #4

Tool-using agent

Real multi-step task, guardrails, budgets, full run tracing.

Ship #5

Fine-tune with a verdict

Adapter behind an API, plus an honest report on whether it was worth it.

Ship #6

Hardened deployment

Latency and cost SLOs, tracing, alerting, runbook. Cut Ship #3 cost ~50%.

Capstone

Deployed system and 20-minute defence

Problem, ADR, evals, cost per task, runbook, known limits. Assessment: capstone 35%, six ships 30%, eval rigour 15%, peer review 10%, debugging 10%. No exams.

28-week curriculum

Seven sprints. About 3 hours live each week plus about 5 hours of lab. Each classroom lesson has a talk, a diagram, a ship, and a scenario quiz. Expand a sprint for the syllabus. Content stays searchable when closed.

01 From API calls to a reliable service Weeks 1–4 · Ship #1

Most first LLM code fails in production for reasons that have nothing to do with AI.

  • 1.1 Mental model. Tokens, windows, sampling, what the model can know. Cost and latency as functions of tokens.
  • 1.2 Prompts that survive users. Structure, delimiters, few-shot, empty and adversarial input.
  • 1.3 Structured output. JSON schemas, constrained generation, validation, repair loops.
  • 1.4 Flaky dependency. Timeouts, backoff, rate limits, streaming, degradation, provider fallbacks.
  • 1.5 Instrumentation. Prompts, responses, tokens, latency and cost per request from day one.

Ship #1: deployed LLM-backed API with schema-validated output, retries, streaming, and a live cost/latency dashboard.

02 Evaluation before ambition Weeks 5–8 · Ship #2

Deliberately second, not last. Everything after this sprint gets measured.

  • 2.1 Defining success. Testable specification, acceptance criteria, good enough to ship.
  • 2.2 Golden dataset. Real inputs, labelling, edge cases, test data out of prompts.
  • 2.3 Automated evaluation. Deterministic checks first, then a judge you calibrate.
  • 2.4 Regression in CI. A prompt change that breaks 8% of cases fails the build.
  • 2.5 Reading results honestly. Sample size, variance, why 3% on 20 examples is not an improvement.

Ship #2: eval harness on real data, gating deploys in CI, with a baseline report on Ship #1.

03 Retrieval that works on messy data Weeks 9–12 · Ship #3

The unglamorous 60% is document processing. That is where most RAG projects actually fail.

  • 3.1 Document processing. Multi-column PDFs, scans, tables, HTML cruft, near-duplicates.
  • 3.2 Chunking with intent. Fixed, recursive, semantic, structure-aware; metadata; parent-child. Evaluated, not guessed.
  • 3.3 Search. Embeddings, vector stores, BM25, hybrid fusion — including when keywords win.
  • 3.4 Reranking. Cross-encoders, top-k, latency versus quality.
  • 3.5 Trustworthy answers. Grounding, citations, abstention, conflicting sources.
  • 3.6 Diagnosing failures. Parse, chunk, retrieve, rank, assemble, or generate — with evidence.

Ship #3: deployed RAG over a genuinely messy corpus, with citations, abstention, and retrieval metrics in the Sprint 2 harness.

04 Tools and agents Weeks 13–16 · Ship #4

Build the loop yourself before a framework hides the bug.

  • 4.1 Function calling. Tool schema, validation, idempotency, recoverable errors.
  • 4.2 The agent loop. Plan, act, observe, repeat — built by you first.
  • 4.3 Frameworks in perspective. Where complexity earns its keep, and where it obscures the bug.
  • 4.4 State and memory. History, summarisation losses, session state, what belongs in a database.
  • 4.5 Bounded autonomy. Step limits, cost ceilings, timeouts, approval, kill switch.
  • 4.6 When not to use an agent. Most “agentic” tasks are a fixed pipeline.

Ship #4: deployed agent on a real multi-step task with tools, guardrails, budgets and full run tracing.

05 Customising model behaviour Weeks 17–20 · Ship #5

Fine-tuning is a decision to justify, not a trophy model.

  • 5.1 Decision framework. Prompting vs retrieval vs fine-tuning on your own failing cases.
  • 5.2 Training data. Construction, formatting, deduplication, splits. Quality dominates method.
  • 5.3 LoRA / QLoRA. Small open model, focused task, hyperparameters, overfitting.
  • 5.4 Proving it worked. Sprint 2 baseline, regression checks, adapter behind an API.
  • 5.5 Small models as a cost strategy. Routing, distillation, measured savings.

Ship #5: fine-tuned model serving behind an endpoint, with an evidence-based report — including whether it was worth it.

06 Production hardening Weeks 21–24 · Ship #6

Cut Ship #3 cost about in half without measurable quality loss. Then operate it.

  • 6.1 Serving. Containers, concurrency, streaming, pooling, health checks, load tests.
  • 6.2 Cost engineering. Caching, trimming, batching, routing, per-tenant budgets.
  • 6.3 Observability. Tracing, token and cost attribution, drift alerts after a provider update.
  • 6.4 Safety. Direct and indirect prompt injection, PII, output filters, least-privilege tools, what never to log.
  • 6.5 Operating it. Versioned prompts, staged rollout, rollback, runbooks, incident walkthrough.

Ship #6: hardened deployment with published latency and cost SLOs, tracing, alerting, and a runbook.

07 Capstone Weeks 25–28 · Ship #7

A real problem — ideally from your workplace — from statement to deployed system. The 20-minute defence is questions on trade-offs, failure modes and cost, not the demo.

  • Written problem definition with success criteria agreed up front.
  • Architecture decision record: what you chose and what you rejected.
  • Retrieval and/or agents as the problem warrants.
  • Evaluation against a stated baseline; deployed; cost per task; runbook; known limitations.

Deliberately excluded: transformer internals beyond practical decisions, pre-training, RLHF, GPU kernel work, and tool surveys. You learn two or three tools properly. Anything that cannot be deployed in the sprint it is taught does not belong here. If you want that depth afterwards, take Becoming an AI Principal Engineer.

Who this is for

Software engineers (3+ years)

You are calling OpenAI or Anthropic APIs with prompt-and-hope. Target: owning an LLM feature end to end.

Backend and platform engineers

Strong systems skills, little LLM exposure. Target: running LLM services in production.

Data engineers and analysts

Pipelines and SQL, curious about GenAI. Target: retrieval systems over company data.

Technical leads

You review AI work you cannot fully assess. Target: making and defending architecture calls.

Prerequisites

  • Comfortable Python: functions, classes, async basics, virtual environments
  • You have built or consumed a REST API
  • Git in a team, and you can read a stack trace without panic
  • You have deployed something — server, container or serverless
  • Comfortable with a terminal

You do not need machine learning, maths beyond basic statistics, or prior model training. This is software engineering applied to LLMs.

Not a fit if

  • You are new to programming
  • You want a management overview of AI
  • You expect to pass without writing and debugging code every week

Still choosing which architecture to ship? Start with LLM Apps: Architecture by Use Case. Prefer a topic-ordered path? Take Production Generative AI Systems. Already shipping and need judgment under incomplete information? Take Scenarios alongside this, not instead of it.

Questions

How is this different from Production Generative AI Systems?

Same tier, same destination. That course is organised by topic; first deployment is late. This one is organised by shipped increments: first deploy in week 4, then every four weeks. Evaluation is its own sprint, second, gating everything after. You leave with seven deployed artefacts and more deployment scar tissue; they leave with more theoretical grounding. Choose based on what Monday morning actually asks of you.

How much time is this?

28 weeks, 84 hours live: about 3 hours live each week plus about 5 hours of lab. Expect around 40% of contact time in labs and reviews. If it drifts back toward lectures, it becomes another topic-ordered course.

What compute do I need?

API credits for most sprints, plus a single GPU for Sprint 5. Materially lighter than an advanced principal-level track.

Ready to ship in month one?

28 weeks, seven ships, a 20-minute defence on trade-offs. Create an account to enrol in the next cohort.

Enrol now