Operations
Backups, secrets, and patterns for reliable services: graceful shutdown, health checks, resilience to failures.
Backups
What a backup isn't, RPO and RTO, 3-2-1, snapshots, RAID, databases, and restic.
RAID, replication, and snapshots look like insurance, but they protect against different things. We break down which data loss scenario each mechanism actually covers.
How much data you can afford to lose, and how fast the system must come back up. How these requirements determine backup frequency and storage method.
Three copies, two kinds of media, one copy off-site. What immutable storage adds, and why zero verification errors became part of the scheme.
How restore chains work, how deduplication differs from an incremental backup, and how the grandfather-father-son retention scheme works.
How a snapshot happens in a second, how copy-on-write differs from a copy, and why the difference between crash-consistent and application-consistent matters for a database.
Mirroring, parity, and striping in plain terms. Degradation, rebuild, the risk of a second failure, and why RAID belongs in a backup track.
How pg_dump differs from copying the cluster's files, why you need a WAL archive, and how to restore to the minute before a bad query.
File backup with deduplication and encryption: init, backup, snapshots, restore, forget with prune, and check.
Nine questions on RPO and RTO, the 3-2-1 rule, snapshots, RAID, PITR, and restic. You can retake it.
Operations
Application secrets and incident reviews.
Where to keep passwords and keys: the problem with secrets in code, external stores vs file encryption, and rotation.
How to review outages without hunting for someone to blame: the incident lifecycle, blameless postmortems, and working on root causes.
Application patterns
Graceful shutdown, health checks, config, resilience, idempotency.
Why an application must shut down cleanly on SIGTERM, how to finish serving in-flight requests, and how to avoid dropped connections during a deploy.
How liveness differs from readiness, why an app needs a separate /healthz, and how both connect to load balancing and the orchestrator.
Why config lives in the environment, what 'one artifact for every environment' means, and which 12-factor principles are about operations.
How services survive other services' failures: timeouts, safe retries with backoff, and a circuit breaker against cascading failures.
Why a repeated request shouldn't create a duplicate: idempotent methods, the idempotency key, and safe retries.