Chapter 19 · Projects to Build

Theory means nothing without projects. Do three of these in the next quarter.


Ten project ideas, in rough order of increasing difficulty. Each is scoped to a real learning outcome. All of them are portfolio-worthy if shipped in public.

In plain English. Reading about AI without building is like reading about swimming. You can understand the strokes perfectly and still drown in three feet of water.

How the projects build on each other

flowchart TB
    P1[1. Slack docs bot
RAG basics] --> P3[3. PR reviewer bot] P1 --> P6[6. Internal search] P2[2. Personal MCP server] --> P3 P2 --> P4[4. SQL analyst agent] P4 --> P5[5. Incident triage agent] P3 --> P9[9. Autonomous coding agent] P5 --> P9 P6 --> P10[10. Research agent] P7[7. Evals harness] --> P9 P8[8. Distilled tiny classifier] --> P9 P9 --> Star((Architect of
agentic systems)) P10 --> Star

Pick three. Do them. Write a blog post per project. By the end of the quarter, you will be a different engineer.

19.1 "Ask our team's docs" Slack bot

Time: 1–2 weeks. Difficulty: low.

Teaches: RAG end-to-end, embeddings, pgvector, hybrid search, structured outputs, feedback logging.

flowchart LR
    S[Slack /ask] --> API[FastAPI]
    API --> PG[(pgvector)]
    API --> LLM[Claude Sonnet]
    PG --> LLM
    LLM --> API --> S

19.2 Personal MCP server for something you touch daily

Time: 1 weekend. Difficulty: low.

Teaches: MCP server development, tool design, stdio transport.

19.3 PR reviewer bot

Time: 1 week. Difficulty: low–medium.

Teaches: CI integration, structured outputs mapping to specific lines, prompt-as-policy, prompt caching.

19.4 Natural-language to SQL agent

Time: 2 weeks. Difficulty: medium.

Teaches: tool use, schema introspection as context, safety, pagination, evals on SQL correctness.

flowchart LR
    U[User question] --> A[Agent]
    A --> T1[list_tables]
    A --> T2[describe_table]
    A --> T3[sample_rows]
    A --> T4[run_sql_readonly]
    T4 --> DB[(DB)]
    A --> R[Answer + SQL + table]
    R --> U

19.5 Incident triage agent

Time: 3 weeks. Difficulty: medium.

Teaches: multi-tool parallel use, time-series queries, deploy introspection, report generation, on-call empathy.

Time: 3–4 weeks. Difficulty: medium.

Teaches: multi-source ingestion, ACL at query time, rerankers, hybrid search, UI design for AI, feedback loops.

19.7 Evals harness for your team

Time: 1 week. Difficulty: medium. Leverage: enormous.

Teaches: eval design, LLM-as-judge patterns, CI/CD for AI, regression discipline.

19.8 Fine-tuned tiny classifier (distillation)

Time: 2 weeks. Difficulty: medium–hard.

Teaches: distillation, LoRA/QLoRA, vLLM serving, A/B testing, drift monitoring.

19.9 Autonomous coding agent in a sandbox repo

Time: ongoing. Difficulty: hard.

Teaches: real agentic engineering, prompt-as-product, human-in-the-loop design, your own appetite for autonomy.

19.10 Multi-hop research agent for a domain you love

Time: 2–3 weeks. Difficulty: hard.

Teaches: multi-agent orchestration, planning, source triangulation, citation design, cost management on long runs.

flowchart TB
    Q[Question] --> P[Planner]
    P --> R1[Researcher 1] --> S1[Summary + citations]
    P --> R2[Researcher 2] --> S2[Summary + citations]
    P --> R3[Researcher 3] --> S3[Summary + citations]
    S1 --> SYN[Synthesizer]
    S2 --> SYN
    S3 --> SYN
    SYN --> CC[Citation checker]
    CC --> O[Report]

19.11 Bonus — teach one of them in public

Write each project up. A blog post, a GitHub README, a short video, a talk at a meetup. Publishing doubles the learning and triples the career return. Your future self will Google themselves and find these posts; so will hiring managers.

19.12 How to pick which three

Choose one project from each of these buckets, not three from the same bucket:

Starting over today, I'd do: Project 1, Project 7, then Project 8 — in that order, over a quarter. RAG for leverage. Evals for durability. Fine-tuning for depth and cost savings.

19.13 Rules for shipping

Further reading & watching