Plumbing... Chaos...
and the Most Unexpected Lesson on Legacy Systems

July 2, 2025

By Nicholas Johnson, Founder of Ataviz Consulting

It was supposed to take 30 minutes.

Just a simple faucet swap in our primary bathroom. New fixture, two connections, done before lunch.

Instead, I ended up elbow-deep in a mess of old copper pipes, mismatched fittings, tape over compression joints, and what I can only describe as “creative plumbing decisions made under pressure.”

By the time I was drying off the floor (and my pride), I realized something that hit me harder than the wrench slipping and catching my knuckles:

This wasn’t just a faucet. This was a legacy system.

The Sink Is a Lie

When you walk into a bathroom, you see the polished part: the sleek faucet, the clean countertop, maybe even a fancy LED mirror if you’re feeling fancy.

What you don’t see is everything underneath—decades of patchwork plumbing decisions layered one on top of the other.

That’s exactly what I ran into. The previous homeowners had clearly replaced the faucet once… maybe twice. But instead of rebuilding the foundation, they just worked around it.

  • Different piping materials spliced together with makeshift adapters
  • A shutoff valve that looked fine but spun uselessly
  • Teflon tape holding back what optimism couldn’t

I didn’t inherit a plumbing problem. I inherited a series of shortcuts.

Welcome to Technical Debt: Home Edition

It hit me halfway through the third hardware store trip:

This is exactly what technical debt looks like.
  • Quick fixes that worked at the time, but created problems down the road
  • Decisions optimized for speed, not stability
  • No clear documentation, no logic trail... just vibes and duct tape (sometimes literally)

We do this in our systems, too.

We patch bugs without refactoring code. We onboard new tools without retiring old ones. We build workflows on top of outdated assumptions—and hope no one pulls too hard on the faucet.

Until, one day, the “small change” turns into a whole weekend with a bucket under the sink.

Why Legacy Systems Are So Hard to Kill

What really struck me wasn’t how broken it was. It was how functional it appeared.

The sink worked. The water flowed. Everything looked fine.

That’s what makes legacy systems so dangerous in business. They work… until they don’t. And by the time someone finally decides to upgrade them, they’re dealing with:

  • Incompatible components
  • Dependencies no one remembers
  • People who’ve long since moved on (or worse, still there but in denial)

What the Faucet Taught Me About Tech Strategy

When I finally got everything working again (and my hands stopped smelling like old brass), I sat back and thought about what this faucet had taught me:

  1. Shortcuts are the most expensive path in the long run. That “quick fix” in 2006? It cost me hours in 2025. Multiply that across a business, and it’s years of compounding inefficiency.
  2. If you don’t document it, you’re just building problems for future-you. The only thing worse than bad plumbing is mystery plumbing. Same goes for undocumented systems.
  3. Eventually, someone has to crawl under the sink. You can ignore legacy systems, but someone—maybe you—is going to face them eventually. You can make that job easier… or a total disaster.

The Systems Under the Surface

Every organization has a bathroom faucet problem: A visible, functioning system that hides decades of patchwork behind the scenes.

And whether it’s CRM architecture, data pipelines, or the way you handle internal requests—your ability to scale, pivot, or innovate depends on how clean the plumbing is beneath the surface.

So the next time someone says “it’s just a small change,” ask what’s under the sink.

-- Your Hidden CTO


Stay in the loop

Get updates straight to your inbox.