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

February 02, 2023

Red Hat announced a multi-stage alliance to offer customers a greater choice of operating systems to run on Oracle Cloud Infrastructure (OCI).

February 02, 2023

Snow Software announced a new global partner program designed to enable partners to support customers as they face complex market challenges around managing cost and mitigating risk, while delivering value more efficiently and effectively with Snow.

February 02, 2023

Contrast Security announced the launch of its new partner program, the Security Innovation Alliance (SIA), which is a global ecosystem of system integrators (SIs), cloud, channel and technology alliances.

February 01, 2023

Red Hat introduced new security and compliance capabilities for the Red Hat OpenShift enterprise Kubernetes platform.

February 01, 2023

Jetpack.io formally launched with Devbox Cloud, a managed service offering for Devbox.

February 01, 2023

Jellyfish launched Life Cycle Explorer, a new solution that identifies bottlenecks in the life cycle of engineering work to help teams adapt workflow processes and more effectively deliver value to customers.

January 31, 2023

Ably announced the Ably Terraform provider.

January 31, 2023

Checkmarx announced the immediate availability of Supply Chain Threat Intelligence, which delivers detailed threat intelligence on hundreds of thousands of malicious packages, contributor reputation, malicious behavior and more.

January 31, 2023

Qualys announced its new GovCloud platform along with the achievement of FedRAMP Ready status at the High impact level, from the Federal Risk and Authorization Management Program (FedRAMP).

January 30, 2023

F5 announced the general availability of F5 NGINXaaS for Azure, an integrated solution co-developed by F5 and Microsoft that empowers enterprises to deliver secure, high-performance applications in the cloud.

January 30, 2023

Tenable announced Tenable Ventures, a corporate investment program.

January 26, 2023

Ubuntu Pro, Canonical’s comprehensive subscription for secure open source and compliance, is now generally available.

January 26, 2023

Mirantis, freeing developers to create their most valuable code, today announced that it has acquired the Santa Clara, California-based Shipa to add automated application discovery, operations, security, and observability to the Lens Kubernetes Platform.

January 25, 2023

SmartBear has integrated the powerful contract testing capabilities of PactFlow with SwaggerHub.

January 25, 2023

Venafi introduced TLS Protect for Kubernetes.