Skip to content
José da Cruz

Enterprise Architect, and Life Thinker

José da Cruz

Enterprise Architect, and Life Thinker

Tag: systems thinking

architecture

Essential Reading: Normal Accidents — Why Complex, Tightly Coupled Systems Fail by Design

josedacruz, September 18, 2026September 18, 2026

TL;DR: Charles Perrow’s Normal Accidents argues that in sufficiently complex, tightly-connected systems, catastrophic failures aren’t rare flukes caused by bad luck or careless operators — they are a structural inevitability the system was built to eventually produce. For anyone running distributed systems, that reframes “we had an outage” from a…

Continue Reading
architecture

Brooks’s Law: Why Adding Developers to a Late Project Makes It Later

josedacruz, September 17, 2026September 17, 2026

TL;DR: Fred Brooks’s famous rule says that adding people to a late software project usually makes it later, not sooner. New hires need time and attention from the very people already doing the work, and every extra person adds more communication paths to manage. If a project is behind, cutting…

Continue Reading
architecture

The Tragedy of the Commons: Why Your Shared Staging Environment Always Breaks

josedacruz, September 2, 2026September 2, 2026

TL;DR: A shared staging environment breaks for the same reason an overgrazed field turns to dust: everyone benefits from using it a little carelessly, but nobody personally pays for the mess they leave behind. The fix isn’t asking people to be more responsible — it’s changing the setup so carelessness…

Continue Reading
architecture

Hyrum’s Law: Why Every Observable Behavior of Your API Becomes Someone’s Dependency

josedacruz, August 17, 2026August 17, 2026

TL;DR: Hyrum’s Law says that if enough people use your software, every observable behavior of it — not just the parts you documented and promised — will eventually become something someone depends on. That means “we never promised that” is not the same as “it’s safe to change.” This post…

Continue Reading
architecture

Normalization of Deviance: How ‘It Worked Last Time’ Becomes Your Next Outage

josedacruz, August 11, 2026August 11, 2026

TL;DR: Normalization of deviance is what happens when a team skips a safety step, nothing bad happens, and the skip quietly becomes “how we do things” until it eventually causes a real outage. This is a practical playbook for catching that drift early — name shortcuts out loud, track near…

Continue Reading
architecture

Goodhart’s Law: Why Your Engineering Metrics Stop Working the Moment You Target Them

josedacruz, August 9, 2026August 9, 2026

TL;DR: Any metric you turn into a target stops being a reliable measure, because people (reasonably) start optimizing for the number instead of the thing it was supposed to represent. This is called Goodhart’s Law, and it quietly wrecks engineering metrics all the time. The fix isn’t to stop measuring…

Continue Reading
architecture

Chesterton’s Fence in Code Reviews: Why You Should Never Delete What You Don’t Understand

josedacruz, August 7, 2026August 7, 2026

TL;DR: When you find a weird piece of code and you don’t know why it’s there, resist the urge to delete it right away. Chesterton’s Fence is a simple rule of thumb: don’t tear down a fence until you understand why someone put it up. In code review, that means…

Continue Reading
architecture

Reinforcing vs. Balancing Feedback Loops: Why Retries Can Make an Outage Worse

josedacruz, August 3, 2026August 3, 2026

You get paged at 2am. A payment service is running slow. You watch the dashboard, and something strange happens: the more you look at it, the worse it gets. Error rates climb. Latency climbs. Then, ten minutes after the first alert, the whole checkout system goes down — not because…

Continue Reading
architecture

Conway’s Law in the Wild: Why Your Microservices Look Suspiciously Like Your Org Chart

josedacruz, July 29, 2026

Here’s a strange but reliable pattern: if you look at the architecture diagram of almost any mid-size tech company, you can guess how their org chart is drawn. Not because someone planned it that way. It just… happens. This pattern has a name: Conway’s Law. It was named after Melvin…

Continue Reading
Systems Thinking

Thinking in Systems – An Introduction

josedacruz, April 20, 2025April 20, 2025

Welcome to a practical and eye-opening introduction to Thinking in Systems — a powerful way to understand and navigate complexity in your daily life, work, and projects. In this video, you’ll discover:✅ What a system really is (it’s more than just tech)✅ The 3 essential parts of any system: Elements,…

Continue Reading
  • architecture (154)
  • artificial-intelligence (6)
  • books (2)
  • courses (4)
  • decision-frameworks (4)
  • finances (1)
  • java (8)
  • life-improvement (20)
  • metrics (3)
  • observability (2)
  • puzzles and challenges (3)
  • reviews (1)
  • security (8)
  • spring-boot (36)
  • Systems Thinking (3)
  • GitHub Weekly: MCP Tools Trending Right Now (September 28 – October 4, 2026)
  • The Bulkhead Pattern: Why One Slow Dependency Shouldn’t Sink the Whole Ship
  • Essential Reading: A Philosophy of Software Design — Fighting Complexity One Module at a Time
  • GitHub Weekly: Top 10 Trending Repos (September 21 – September 27, 2026)
  • The Volunteer Tax: Why Raising Your Hand in a Meeting Makes You the Permanent Owner
©2026 José da Cruz | WordPress Theme by SuperbThemes