Skip to main content
NewSix System Design Problems, and the New Problem Each Fix Creates

Learn DevOps by doing,
not just reading.

725+ articles, guides, and hands-on learning tools for engineers who prefer a terminal over a slide deck.

Join 5,000+ DevOps engineers learning every week

kubectl --watch
$
devops-daily --stats

// featured

Interactive Simulators

Browse all simulators

// categories

Popular Categories

Explore our content by topic

// exercises

Hands-On Exercises

Practice real-world DevOps scenarios with step-by-step guidance

View all exercises

// quizzes

Test Your Knowledge

Short interactive quizzes across Docker, Kubernetes, Terraform, networking, and more

// posts

Latest Posts

Stay up to date with the latest DevOps content

DevOps

Six System Design Problems, and the New Problem Each Fix Creates

Caching, read replicas, sharding, queues, WebSockets, retries, circuit breakers and CQRS each solve a real problem and hand you a new one. A practical map of the six problems every growing system meets, the usual fixes, and what each fix costs you.

|15 min read
Terraform

Terraform Module Outputs, Inputs and Sources: How Modules Pass Data to Each Other

How to get a value out of a Terraform module, pass a resource into another module, chain modules with for_each, pin a Git branch or tag as a module source, and fix the "Provider configuration not present" error that shows up when you refactor. All examples were run on Terraform 1.15.

|11 min read
Terraform

Terraform State: Remove, Move and Migrate Resources, and Set Up a Remote Backend

The state questions every Terraform team hits: how to stop managing a resource without deleting it, rename one without a rebuild, move it to another project, bootstrap a remote backend, and why the DynamoDB lock table is on its way out. Every command here was run on Terraform 1.15.

|12 min read
DevOps

The No-Backend Backend: Neon Data API, RLS and 27 Attacks

A team task board with no server code: static React, Neon Auth, and the Neon Data API with row-level security as the only guard. A signed-in attacker tried 27 ways in. What held, the four mistakes that would have let her through, and the 15-minute gap.

|14 min read
DevOps

Deploy a Complete AI Incident Backend on One Neon Branch

Build and verify a disposable incident-search backend with Neon Auth, Object Storage, Functions, AI Gateway, and Lakebase Postgres—then remove the complete environment with one guarded command.

|16 min read
CI/CD

CI Passed 6 of 6 Migrations. A Neon Branch of Production Passed 1

How to test Postgres migrations before production: branch production on Neon in seconds, run each migration while an app keeps reading and writing, and gate on errors, failed queries, lock stalls and lost rows. The six migrations that passed on our fixture database failed five times on the branch.

|17 min read

// guides

Latest Guides

Step-by-step tutorials to boost your DevOps skills

// tools

DevOps Tools and Calculators

Free, browser-only utilities. CIDR, JWT, base64, UUID, cron, K8s sizing, YAML. No sign-up, no server.

// about

DevOps Daily is a free, independent education platform for engineers who want to learn by running things, not by reading pitch decks. Kubernetes, Docker, Terraform, CI/CD, observability, and security, through hands-on simulators, quizzes, exercises, and a weekly newsletter.

Free
$0
forever
Tools
59
interactive
Subscribers
5,000+
engineers
Cadence
Weekly
no spam
devops-daily --subscribe
$ echo "Weekly DevOps digest. No spam. Unsubscribe anytime."
Weekly DevOps digest. No spam. Unsubscribe anytime.
$ subscribe --email
$

5,000+ engineers subscribed