Thinking About CI/CD? Here's What You Need to Know
December 03, 2019

Valerie Silverthorne
GitLab

Now that every organization is a software company, the pressure to produce better code faster has never been more intense. An increasing number of organizations choose DevOps to bring traditionally siloed developers and ops teams together and they count on continuous integration and continuous deployment (CI/CD) to speed up the process.

If DevOps is a car, CI/CD is the transmission that connects all the moving parts together to allow for a smooth drive. No modern software development effort can thrive without CI/CD so if you're just getting started here's everything you need to know.

What's in a Name?

Let's break CI/CD down into its relevant components. Continuous integration is a way to tackle the always tedious and time-consuming job of testing code and it does so in a way that does not add any extra burden to developers. Code tests and checks are automated and the results are delivered back to the developer. CI also allows developers to split tests and builds across different machines which cuts the time involved and makes multitasking possible. 

Continuous deployment picks up where CI leaves off — tested and checked code can be automatically deployed to production using the CI server.

So, together, CI/CD represent a way to automate the most time consuming steps in software development and deployment.

The Solution to Universal Problems

Virtually every company struggles with the same set of problems that CI/CD can potentially solve.

Toolchain sprawl is pervasive — a surprising number of companies use more than 15 toolchains and that of course means time and human resources to maintain it all. An integrated out of the box CI/CD solution eliminates that problem and frees up resources for things that matter.

Even in a DevOps shop it can still feel like it's Devs vs. Ops because the priorities of the two groups are so wildly dissimilar. Devs are incentivized to create new features while Ops pros are rewarded by having a stable environment with a lot of uptime. CI/CD can help bring those opposing forces together around a single toolchain and let each group do what they do best without playing the blame game.

Code can also get stale while waiting around to either be tested or for devs to get energized about "context switching." CI/CD can tighten that loop to minutes rather than days or weeks ensuring everyone is working as efficiently as possible.

And while CI/CD is often hailed as a boon to developers, it's worth pointing out some concrete benefits to age-old Ops problems. An integrated CI/CD solution will bring automatic monitoring so error rates and infrastructure costs can suddenly be measured easily. And automated deployments free Ops pros to focus on value-added tasks rather than waiting around for developer hand-offs.

Every company knows the struggle involved in hiring tech talent but did you know CI/CD can play an important role in this area too? The Stack Overflow 2019 Developer Survey found languages, frameworks and other technologies as the most important factor for developers when looking for a job. In other words, the tech solutions a potential employer chooses matter and a cutting edge CI/CD solution in a DevOps shop offers some "sizzle" to job candidates.

Measure Success

CI/CD can bring solid benefits but it's vital to understand how to measure success or recognize under-performance. A good place to start is with cycle time. We like to think of cycle time as the period between starting work on an idea and delivering it to production or in to the hands of the end user. Your definition may vary but what matters is to compare cycle time without CI/CD to cycle time with CI/CD. Some companies report cycle times that took months now take hours with an integrated CI/CD solution

Time to value is another factor to consider because, done right, CI/CD should shorten that timeframe dramatically. Companies should also consider uptime, error rates and infrastructure costs.

Remember the Culture Change

When our organization transitioned to CI/CD, we noticed a dramatic cultural shift on the engineering team. Gone were the days of weekly deploys and long waits to see the impact of a code merge. Our "definition of done" changed and how we spent our time changed too.

In an internal 2018 survey, we found the delivery team spent 60% of their time babysitting deploys and 26% of their time on manual or semi-manual tasks in the 14 days leading up to a release. Fast forward to 2019 and 82% of the team said they were free to work on other tasks during the same 14-day pre-release time period.

CI/CD can bring speed, consistency and even happiness into your software development and deployment efforts. Start small, get it running and then build it out. Your DevOps team will thank you.

Valerie Silverthorne is Senior Content Editor at GitLab
Share this

Industry News

January 14, 2021

Oracle is making its popular APEX low-code development platform available as a managed cloud service that developers can use to build data-driven enterprise applications quickly and easily.

January 14, 2021

Parasoft announced its C/C++test update to support IAR Systems' build tools for Linux for Arm.

January 14, 2021

Harness raised $115 million in financing, reaching a valuation of $1.7 billion in just three years after launching from stealth.

January 13, 2021

Slim.ai launched with its cloud-based DevOps automation platform built specifically for software developers.

January 13, 2021

WhiteSource announced new WhiteSource Advise support for JetBrains' PyCharm and WebStorm integrated development environments (IDEs).

January 12, 2021

Red Hat has added new features to Red Hat Runtimes.

January 11, 2021

KubeSphere announced its expanded relationship with AWS to offer KubeSphere as an AWS Quick Start.

January 07, 2021

Red Hat announced its intent to acquire StackRox

January 07, 2021

Cigniti Technologies announced a partnership with Sonatype to help enterprise customers innovate faster and easily mitigate security risk inherent in open source.

January 07, 2021

Lacework announced a $525 million growth round with a valuation of over $1 billion.

January 06, 2021

BMC announced several new capabilities and enhancements for the BMC Automated Mainframe Intelligence (AMI) and Compuware portfolios that enable BMC mainframe customers to protect uptime and availability, defend the mainframe against cybersecurity threats, and advance enterprise DevOps.

January 06, 2021

Sysdig has achieved Service Organization Control (SOC) 2 Type II compliance for the Sysdig Secure DevOps Platform.

January 05, 2021

Allegro AI announced a rebranding of its key product Allegro Trains as ClearML.

January 05, 2021

Acryl unveiled a pilot service for Jonathan, an integrated AI platform that can be used in a variety of industries with a spectrum of users from non-experts to professional developers.

January 05, 2021

Weaveworks announced a $36.65 million Series C funding round.