Skip to content
Learning path

Systems Programming

Compression, container runtimes, schedulers, log aggregators — the infrastructure layer between apps and the kernel.

mixed8 courses124 lessons~31 hoursFree
Start pathor sign up to track progress

Course sequence

  1. 01

    Build Your Own Compression Algorithm

    Not started

    Build a complete data compressor from first principles. You'll compute Shannon entropy, build Huffman trees, implement LZ77 sliding-window matching with hash chains, and combine them into a DEFLATE-style compressor with CRC checksums. By the end you'll deeply understand what gzip, zstd, brotli, and every modern compressor actually do.

    intermediate15 lessons~4h
  2. 02

    Build a Cron Scheduler from Scratch

    Not started

    Build a fully-featured cron daemon from the ground up. You'll parse cron expressions, compute next firing times across timezones, schedule jobs with a min-heap, and handle real-world concerns like missed jobs, overlapping runs, and timezone DST. By the end you'll deeply understand the scheduler behind every "do this on a schedule" system you've ever used.

    intermediate12 lessons~3h
  3. 03

    Build Your Own Load Balancer

    Not started

    Build a production-grade L7 load balancer from scratch. You'll implement round-robin, weighted, and least-connection selection; active and passive health checks; circuit breakers; consistent hashing; sticky sessions; rate limiting; TLS termination (SNI); and Prometheus metrics. By the end you'll deeply understand what NGINX, HAProxy, Envoy, and AWS ALB actually do.

    intermediate17 lessons~4h
  4. 04

    Build Your Own Package Manager

    Not started

    Build a complete package manager from scratch — semver parsing, constraint matching, dependency tree expansion, deduplication, backtracking SAT-style resolution, lockfile generation, hash verification, lifecycle scripts, and vulnerability auditing. By the end you'll deeply understand what npm, yarn, pnpm, cargo, and pip actually do.

    intermediate12 lessons~3h
  5. 05

    Build a CI Runner

    Not started

    Build a CI/CD runner like GitHub Actions: parse YAML workflows, expand build matrices, topologically sort job DAGs, execute steps with logs, manage artifacts and caches, handle self-hosted runners, and protect secrets. Used by every modern engineering team.

    intermediate10 lessons~3h
  6. 06

    Build Your Own Docker

    Not started

    Build a container runtime from scratch using Linux namespaces, cgroups, and overlayfs. You'll implement PID/mount/network namespace isolation, memory and CPU resource limits, layered image storage with copy-on-write, and the full container lifecycle. By the end you'll deeply understand what Docker, Podman, runc, and containerd actually do.

    advanced19 lessons~5h
  7. 07

    Build Redis from Scratch

    Not started

    Build a fully functional Redis clone from the ground up. You'll implement the RESP protocol, key-value storage, expiry, lists, hashes, sets, sorted sets, and transactions — all through test-driven exercises. By the end, you'll deeply understand how one of the world's most popular databases works internally.

    advanced29 lessons~7h
  8. 08

    Build a Log Aggregator

    Not started

    Build a Loki/Splunk-style log aggregator: ingest log lines via HTTP, structure them into label-keyed streams, store as compressed chunks, query by label + substring/regex (LogQL-style), aggregate over time, manage retention, and alert on thresholds. The observability stack every team eventually builds.

    advanced10 lessons~3h

Create a free account to track your progress across this path.

Systems Programming