Move Fast and Fix Things

May 2, 2023

Move Fast and Fix Things

I've been thinking a lot about shipping software, and why it tends to slow down in teams. Speed isn’t just about hitting deadlines. It’s about creating feedback loops, accelerating learning, and delivering real value to customers. We’re fortunate to work in a field where we can ship quickly and iterate safely. Unlike a car manufacturer, we’re not shipping faulty brakes. Yet despite that, many teams treat shipping as the final step in a long, cautious process. In reality, the only reliable way to build great software is to ship early, ship often, and learn along the way.

Why is it that teams end up shipping slowly? It usually doesn’t start as a conscious decision. It creeps in through well-intentioned habits. Adding “just one more feature,” waiting for perfect alignment, polishing internal presentations, or trying to future-proof a system before it’s used. Process grows to protect quality, but eventually becomes a substitute for progress. Over time, the team forgets what it feels like to ship unfinished work, and that muscle atrophies.

Slowness Is Usually a Choice

Teams rarely admit they’re choosing to move slowly. But they are, when they over-plan, over-architect, or over-debate. Some slowness is necessary (security reviews, migration safeguards), but most of it is just fear dressed up as process.

Shipping is scary. But the alternative (shipping nothing), is worse.

80% Right Is Enough (If You Actually Ship It)

If your team routinely waits for perfect clarity before launching anything, you're already behind. Most product ideas don’t fail because they were built badly. They fail because they never made it to users.

If something feels 80% right, ship it. Learn from what actually happens. Fix it forward.

Velocity is a feedback loop.

Fast teams don't cut corners. They shorten the distance between idea and reality. They understand that no design doc, however detailed, can substitute for real-world feedback. Planning is still important, but its job is to unblock execution, not to delay it.

Speed builds muscle. Every day you ship, you learn.

Shipping is the only thing customers see.

You can have great ideas, excellent discussions, and beautiful architecture diagrams, but if it doesn’t ship, it doesn’t count. Customers don’t care about your internal processes. They care about what’s in their hands. And that only changes when something gets released.

Engineering excellence is only meaningful when it leads to customer value. Everything else is a bet with no payoff.

Momentum compounds.

Teams that ship weekly will always outpace teams that ship quarterly, not just in volume but in insight. They build the habit of progress. They stop anchoring success on alignment and start anchoring it on results.

Steps to ship faster on a team

  • Shorten planning cycles. Don’t aim for perfect clarity. Aim for clear enough to start.
  • Timebox everything. Constraints create focus. “We have two weeks” is more useful than “we’ll ship when it’s ready.”
  • Unblock autonomy. Let engineers ship safely without always needing approval.
  • Invest in observability. Confidence to move fast comes from knowing you’ll catch issues quickly.
  • Default to iteration. Deliver a slice of value, then improve from there.
  • Make deployment boring. A reliable release pipeline removes fear and friction.
  • Celebrate progress. Publicly recognize fast, thoughtful delivery—it turns into culture.

Good luck shipping!