Track · ~7 months · 39 nodes
Backend.
APIs, databases, auth, and shipping production services.
Foundations
How the server side of the web actually works.
Language
The runtime you'll write services in, and how to debug it.
- Node.js fundamentalsThe event loop, modules, async I/O, and the standard library.
- Data structures essentialsArrays, maps, sets, queues — and when each one fits.
- Error handling & loggingThrowing, catching, structured logs, and useful messages.
- Debugging server codeBreakpoints, inspectors, stack traces, and reproducing bugs.
- Package managementnpm/pnpm, semver, lockfiles, and dependency hygiene.
Databases
Storing, querying, and not losing data under load.
- SQL fundamentalsSELECT, JOIN, GROUP BY — the language of relational data.
- PostgreSQL deep diveTypes, schemas, constraints in the relational leader.
- Indexing & query plansWhy a query is slow and how an index fixes it.
- TransactionsACID, isolation levels, and not corrupting your data.
- NoSQL: when and whyDocument, key-value, and wide-column — and their trade-offs.
- Redis & cachingIn-memory stores, cache strategies, and invalidation.
APIs
The contracts other systems and frontends talk to.
- REST API designResources, verbs, status codes, and versioning that scales.
- GraphQLSchemas, resolvers, and when a graph beats REST.
- tRPCEnd-to-end typesafe APIs without a schema language.
- OpenAPI & docsDescribing an API so humans and tools can consume it.
- WebSockets & streamingReal-time channels, server-sent events, and backpressure.
Auth & Security
Who is this, what can they do, and how not to get breached.
Production
Ship it, containerize it, watch it, keep it fast.
- ObservabilityLogs, metrics, and traces — knowing what your service does.
- Deployment optionsVPS, PaaS, serverless, containers — picking the right one.
- Docker basicsImages, containers, and reproducible runtime environments.
- CI/CD pipelinesAutomated test, build, and deploy on every push.
- Performance & scalingProfiling, connection pools, and horizontal scaling.
- PostgreSQL in productionBackups, replication, migrations, and connection limits.
System design
Thinking in systems when one box stops being enough.
- Systems thinkingLatency, throughput, bottlenecks, and reasoning about scale.
- Queues & background jobsOffloading slow work and retrying it safely.
- Event-driven basicsPub/sub, message brokers, and eventual consistency.
- Multi-region considerationsReplication lag, data residency, and failover.
- Cost & trade-offsReading a cloud bill and choosing what to optimize.
Beyond the basics
Testing depth, interviews, and the job hunt.
- Testing the backendUnit, integration, and contract tests for services.
- Working with AI toolsUsing Copilot/Claude on backend code without shipping bugs.
- System design interviewsStructuring the whiteboard answer hiring teams expect.
- Get hired (backend)Portfolio services, resume, take-homes, and interviews.
Outcomes
When you finish this track:
- Design and ship a REST or GraphQL API backed by PostgreSQL to production.
- Add auth, logging, and monitoring so a service is safe to run unattended.
- Reason about scale — caching, queues, and trade-offs — in a design interview.
Schedule
~220 hours total.
At 8–10 hours a week, that’s about 7 months. Each stage has its own pace.
- Foundations
- Language
- Databases
- APIs
- Auth & Security
- Production
- System design
- Beyond the basics