Duraid Wadie

Head of M&A Architecture

Medium Article · 2 min read · Jan 18, 2017

Shipping Was the Hard Part-Not Building It

DeploymentArchitectureDevOpsCloud MigrationAI

Article summary

Shipping Was the Hard Part-Not Building It We finished the feature on time. But it didn’t ship. Merge conflicts, environment drift, untested deployment steps-it all turned into a wall between “done” and “live.” That’s when we realized: delivery isn’t a phase. It’s part of architecture. The Reality We Faced in Early 2017 Our tech stack looked fine on paper: CI scripts existed Tests were green (when run) Staging environments were up (most of the time) But when it came time to release: Deployments failed silently DB scripts weren’t idempotent Rollbacks were improvised CI was entirely manual, requiring engineers to run build scripts locally and upload artifacts by hand We built software that could work. But not software that could move. What We Changed to Make Shipping Predictable 1.

Read Full Article on Medium

Practical takeaway

The main idea behind Shipping Was the Hard Part-Not Building It is to help teams move from broad theory to clear, repeatable decision making. When teams apply this thinking, they reduce ambiguity and focus on improvements that deliver measurable momentum.

Example scenario

Imagine a team facing competing priorities. By applying the ideas in Shipping Was the Hard Part-Not Building It, they can map dependencies, identify risks and choose the next move that produces progress without destabilizing their system.

Common mistakes to avoid

How to apply this in real work

Start by identifying where Shipping Was the Hard Part-Not Building It already shows up in your architecture or delivery flow. Then pick one area where clarity would reduce friction. Apply the idea, measure its effect and share the learning.

Signs you are doing it correctly

Share: in LinkedIn 𝕏 Twitter