A 26-week, hands-on path from senior product manager to product engineer
Weeks completed: 0/26
A 26-week, hands-on path for experienced product managers who want to build, ship and measure real software, and hold their own with software and data engineers.
Experienced product managers who already know discovery, prioritisation and stakeholders, and want the engineering half: the CLI, git, Python and TypeScript, full-stack apps, data pipelines on Databricks, AI features with evals, and production operations.
It also suits designers, analysts and founders who want to build. No prior coding is assumed, but you’ll need a Mac (or Linux; Windows with WSL works with small changes) and 8–10 hours a week.
Not the goal: senior-engineer depth, designing large distributed systems alone, or production on-call.
Each week (8–10 hours):
An AI coding assistant is your pair programmer from week 5. For weeks 1–4, you type everything yourself.
| Phase | Weeks | You ship |
|---|---|---|
| 0. Workstation | 1 | A reproducible dev setup in git |
| 1. CLI fluency | 2–3 | A CLI tool: API → JSON → CSV |
| 2. Git & GitHub | 4 | CI on every PR |
| 3. Code core | 5–8 | A typed, tested FastAPI service and TypeScript client |
| 4. Full-stack product | 9–11 | A deployed Next.js + Postgres app with real users |
| 5. Data engineering & Databricks | 12–15 | A medallion pipeline deployed from CI, plus a dbt/Dagster comparison |
| 6. AI engineering | 16–19 | Structured outputs, RAG, an MCP agent with evals in CI, a voice-agent prototype |
| 7. Production | 20–22 | Containers, tracing, flags, an A/B test, a runbook and a postmortem |
| Capstone | 23–26 | One product: discovery → data → AI → shipped → measured → defended |
One topic a week: product engineers vs PMs, AI-native teams, agent swarms for discovery, continuous discovery, Shape Up, evals-driven development, trunk-based development and DORA, instrumentation-first, Team Topologies, cost-aware building, reading an engineering org, working with data teams, honest estimation, and communicating trade-offs.
Every lesson uses one simple running example that anyone can follow: a support-ticket service with tickets, customer accounts, messages and a help centre.
Domain packs let you swap in your own industry from week 12 onwards. Each pack gives you the entity mapping, public datasets, compliance topics and capstone ideas, so the portfolio you finish with is relevant to the work you want to do. Packs cover:
Public or synthetic data only. No real personal data.
macOS · Homebrew · Ghostty · zsh · mise · uv · pnpm · Docker/OrbStack · git · GitHub Actions · Python · FastAPI · pydantic · TypeScript · zod · Next.js · Postgres (Supabase) · Drizzle · Playwright · DuckDB · Databricks (Delta, Unity Catalog, Lakeflow, Bundles) · dbt · Dagster · Kafka/Redpanda · Claude API · MCP · pgvector · whisper.cpp · OpenTelemetry · Jaeger · OpenTofu · PostHog · Sentry · Vercel
A typed FastAPI service skeleton with an ADR
The ticket service backed by a real database, with a layered test suite
A typed TypeScript client and CLI for the ticket service
A merged (or submitted) open-source PR and contract tests between service and client
A Next.js app reading and writing Postgres, running locally, plus a product brief
FollowUp deployed with auth, accessible, and security-reviewed; 5 user conversations done
FollowUp v1 in the hands of 5+ real users, with e2e tests and RLS
A star-schema model of synthetic support data in DuckDB with an analysis notebook
Support data loaded into Unity Catalog Delta tables with governance controls and a scheduled job
A bronze → silver → gold declarative pipeline fed by incremental file drops, plus a local Kafka demo
The pipeline deployed from CI with Bundles, plus a dbt/Dagster rebuild of one gold table
A support-conversation triage service that returns validated structured output via an API endpoint
A cited Q&A over a help-centre and policy knowledge base, with a retrieval test set
An MCP server plus an agent with an eval suite gating CI, and a red-team report
A local voice-agent prototype with a measured latency budget and a launch-review pack
The ticket service containerised, traced end to end, with infra as code and an experiment plan
FollowUp with flags and staged rollout, a STRIDE threat model, and a debugging-drill log
An A/B test readout, a runbook, and a postmortem from a simulated incident
A capstone brief, architecture design doc and shaped build plan
Capstone data pipeline and API running in CI and deployed to a dev environment
Capstone AI feature gated by evals, a usable accessible UI, instrumentation and flags
Capstone live with pilot users, measured, defended, and written up publicly