Want Better and Happier Developers? Use Continuous Delivery
By Jenny Medeiros
Photo credit: Pexels
For many development teams, the phrase “software release” is still a source of anxiety. It means long periods of tedious testing, scrambling to fix last minute issues, and nervously waiting around during the gut-wrenching event we call deployment. You look forward to the celebration, after which you can settle back into your routine and watch the tickets roll in from users who likely won’t see an update for at least another few months. That’s just the way it is.
Image credit: Atlassian Blog
Here’s some bad news: this development model isn’t sustainable in today’s market. Users are impatient and want mind-blowing features at the drop of a hat. To keep their interest, companies need to roll out software updates and fixes frequently and reliably to avoid users switching to a more efficient alternative. Today, faster delivery has become critical to staying competitive.
Teams who try to keep up with this new pace without building an automated software delivery pipeline first will only end up with unreliable products and overworked developers. Here’s where Continuous Delivery (CD) swoops in. It’s a practice where software changes are deployed in a fast, safe, and automatic way to streamline delivery and reduce team burnout.
Interested? Here are a few reasons why CD is better for developers (and for business).
Less time between releases
If you’re familiar with the concept of agile software development, you’ll know that the aim is rapid delivery of working software in iterative spurts to get user feedback as quickly as possible.
CD works in the same way. New software is released in short cycles so users can begin interacting with the functionalities and send in their feedback. Forget those big, formal releases, CD lets teams push features and fixes live as soon as they’re ready. These shorter release cycles keep developers on their toes, their minds engaged, and a greater sense of ownership over their own code.
Faster feedback, better software
Delivering frequent software changes means you’ll also receive frequent customer feedback. Users will promptly let you know what works and what doesn’t, what features are missing and which ones aren’t being used. Broken things get fixed faster, unwanted functionalities can be scrapped to save time and effort, and users can enjoy software improvements much sooner.
With CD, you’ll essentially be in a position where you can improve the customer experience faster than other competing companies.
Increased developer efficiency
When there is a long waiting period between commit and deploy, the code is susceptible to unexpected compatibility issues, bugs, and new layers of code that may create even more trouble. But when code is deployed tout suite, library versions and APIs are current so there is less chance of issues arising. If (more like when) trouble does show up, developers can react to it while the change is still fresh in their minds, not months after they hit commit.
Innovation thanks to automation
As the lead developer on the Atlassian Bamboo team says, “Free people up to solve problems, and make a computer do the rest.”
When you’re not stuck testing the login functionality for the 20th time that day, you’ll find yourself free to move onto a new feature or tackle the overflowing backlog. Explore a new technology for an upcoming functionality, or turn a good feature into an excellent one. When the boring stuff is being done for you, you get to be engaged with new and interesting challenges. Say hello to renewed job satisfaction.
What to do with this information
Companies both large and small have embraced the benefits of CD. Atlassian, Google, Netflix, Facebook, Adobe, and Tesla; just to name a few. If you’re eager to join the light side of software delivery, take a look at this ebook on CD which also introduces you to an open source platform for CD called Spinnaker, created and used by the one-and-only Netflix. Have questions? Tweet them here.
Jenny Medeiros is an engineer by degree turned writer by trade. She spent her first years working with Virtual Reality in South America before moving onto UX-focused Web Design and Development in Washington D.C. Now as a serial remote worker, she partners with tech-savvy companies to create content that helps people and computers understand each other better. In her spare time, she hangs with Netflix and often asks Alexa how to fold a fitted sheet.