Skip to content
Back to Blog

Your deployment pipeline is your biggest #fail

Robert Carpenter

May 15, 2017 11:00:00 AM

A well tuned software toolchain and deployment pipeline saves every developer on your team between two and three hours a week. On a team of 12 developers, that’s almost an entire man-week of time saved every week (36 hours).

As a software developer, repeated computer tasks simply bore me. If it’s possible to make my fancy machines do the job for me, I want to do that. Software deployment is a smart use case of automation tools because it’s the worst possible case of a repeated risk.

A manual deployment pipeline:

  • Limits how frequently your team will deploy

  • Limits how many people on your team are capable of reacting to a critical bug

  • Happens infrequently enough that you’re likely to forget a step

  • Happens frequently enough that it’s a big time sink

  • Requires constant communication about what steps are required to deploy

  • Depends on manual checks for deployment validation

Manual deployment is the worst kind of repeated risk. A lot is on the line, it takes time, and it breeds overconfidence.

In contrast, an automated deployment pipeline:

  • Minimizes the dreaded context switch

  • Prevents unexpected downtime by ensuring tests pass before deploying

  • Allows everyone to share the responsibility of reacting to critical bugs

  • Serves as a canonical source of steps required to execute a deployment

  • Automatically validates deployment success

The gold standard for what an automated software pipeline should provide include these developer most loved features as well:

  • Continuous Integration to run and validate tests before code is merged

  • Test coverage and source code lint analysis tools, if you’re into that

  • Automatic deployment to staging or test environments

  • Automatic, sanitized production database dumps

  • Push button, zero downtime deployments

Depending on your software stack, setup time on these tools can be as short as a week. The earlier automation is introduced, the easier it is to implement and the more time it’ll save.

Luckily, a lot of the tooling required to set up these developer favorites is out there, waiting to be implemented for your stack. A dozen available CI providers and API driven cloud providers can make quick work of a deployment pipeline, if you’re willing to invest the time.

Robert Carpenter is a deployment engineer and cloud architect with Tumbler Lock consulting. He has 15 years of full stack experience with software startups and loves making developers more productive through automation.

Written By:

Robert Carpenter

Want to get our totally not sh*tty weekly newsletter?

Sometimes The Wayfarer is funny, sometimes insightful, but always the least spammy newsletter this side of Tatooine.