Systems7 months

Backend Engineering

APIs, data modelling, caching, queues and the operational reality of running services.

  1. Step 01

    Language depth

    Pick one of Go, Java, Node or Python and go deep: memory model, concurrency primitives, error handling, stdlib.

    GoNode.jsPython
  2. Step 02

    Databases

    Relational modelling, normalisation, indexes, transactions, isolation levels and reading query plans.

    PostgreSQLSQLIndexing
  3. Step 03

    API design

    REST semantics, pagination, idempotency, versioning, validation and when GraphQL or gRPC earns its complexity.

    RESTgRPCOpenAPI
  4. Step 04

    Auth & security

    Sessions vs JWT, OAuth2/OIDC, password hashing, RBAC, rate limiting and the OWASP Top 10.

    OAuth2JWTOWASP
  5. Step 05

    Caching & queues

    Redis patterns, cache invalidation, background jobs, outbox pattern and exactly-once myths.

    RedisKafkaWorkers
  6. Step 06

    Reliability

    Structured logging, metrics, tracing, SLOs, alerting that pages a human only when it should.

    OpenTelemetrySLOs
  7. Step 07

    Scale

    Replication, sharding, consistency trade-offs, idempotent retries and designing for partial failure.

    Distributed Systems