8
Module 8
Production reality
Deploying, observability and security, performance and scale. The skills that come after the code runs locally.
Module roadmap
3 chapters ยท 53 lessons
Deploying
Ch 2417 lessons
Vercel, Railway, Fly, Cloudflare. CI/CD with GitHub Actions. Preview deploys, rollbacks, migrations in CI. The pipeline that ships your work to the public.
- 24.0Orientation: what shipping means
- 24.1What "deploy" actually means
- 24.2The deploy unit: container vs function vs edge
- 24.3Hosting options without religion
- 24.4Vercel for the Next.js frontend
- 24.5Railway and Fly for the Nest backend
- 24.6Managed Postgres: Neon, Supabase, Railway, RDS
- 24.7Domains: buying, DNS records, the wait
- 24.8HTTPS in 2026
- 24.9Environment management: dev, staging, prod
- 24.10Secrets: where they live, how they reach the runtime
- 24.11CI/CD with GitHub Actions
- 24.12Preview deployments per PR
- 24.13Database migrations in CI
- 24.14Rollbacks: the one-command kind
- 24.15Zero-downtime deploys (the basic version)
- 24.assignAssignment: Ship the full-stack app with domain, staging, and rollback
Observability and security
Ch 2518 lessons
Logs, metrics, traces. Sentry. The OWASP top 10 as ten stories. The instrumentation that lets you answer 'what broke' in under two minutes.
- 25.0Orientation: what "observable" actually means
- 25.1The three pillars: logs, metrics, traces
- 25.2Structured logging
- 25.3Log levels and what each one is for
- 25.4Log aggregation: Better Stack, Logflare, Axiom
- 25.5Metrics: counters, gauges, histograms
- 25.6Tracing: spans, parent-child, the request as a tree
- 25.7OpenTelemetry, lightly
- 25.8Sentry for errors
- 25.9SLOs and error budgets, conceptually
- 25.10OWASP top 10, each one as a story
- 25.11Injection attacks (SQL, command, prompt) drawn out
- 25.12Authentication and session security
- 25.13Secrets management: never in Git
- 25.14Dependency vulnerabilities, `npm audit`, Dependabot, Snyk
- 25.15Rate limiting in production
- 25.16Incident response basics
- 25.assignAssignment: instrument the app so "what broke?" takes under two minutes
Performance and scale
Ch 2618 lessons
Core Web Vitals, the critical render path, caching layers, database indexes. When you actually need Redis or a queue. Measure first, every time.
- 26.0Orientation: measure first, fix second, measure again
- 26.1Why perf actually matters (and when it doesn't)
- 26.2Measuring first: the one rule
- 26.3Frontend perf: Core Web Vitals
- 26.4The critical render path
- 26.5Image optimisation: modern formats, srcset, lazy loading
- 26.6Bundle splitting and tree shaking
- 26.7Font loading without layout shift
- 26.8Backend perf: profiling Node, finding slow handlers
- 26.9Database indexes, with measurement this time
- 26.10Query analysis with EXPLAIN
- 26.11Caching layers: browser, CDN, app, DB
- 26.12When you actually need Redis
- 26.13When you actually need a queue
- 26.14The myth of "scale" for a side project
- 26.15Load testing with k6
- 26.16Reading flame charts and waterfalls
- 26.assignAssignment: take a slow app and double its speed