Why DevOps in Salesforce?

March 2, 2020 Roarke Lynch

DevOps is a collection of practices that are widely adopted across all forms of software development. These practices focus on the flow of change (Build, Test, Deploy) from ideation, through development and into production.   

These practices have been maturing in the software development ecosystem for more than a decade. However, it’s only now gaining traction with Salesforce. Companies are shifting their mindset from just ‘release management’ to DevOps, enabling faster innovation without sacrificing trust in their applications. For companies that adopt it, DevOps brings a number of other cultural benefits, including increased transparency, better communication, and unified objectives.    

In the wider software development community, DevOps is generally characterized by a few common qualities:  

  1. Version Control to manage the movement of code – if you don’t have version control, you don’t have a DevOps stack and you don’t have DevOps. 
  2. Automation to drive testing, code promotion, and continuous integration / continuous delivery (CICD). 
  3. Virtualization and Infrastructure as Code to create reproducible environments.  
  4. Most importantly that code is the source of truth.  

Roarke Lynch Director of AppirioDX DevOps quote

In the past, Salesforce as a platform had a hard time adopting DevOps because it couldn’t turn orgs into code and then create copies from that code. This meant that code could not be the source of truth. 

Salesforce’s investment in the developer experience, Salesforce DX, has opened the platform to some of the most powerful trends in software development today, including overcoming the challenges to adopting DevOps.  

  • The introduction of the source format as a successor to the legacy metadata format makes capturing a trackable version history of the configuration of your org much more compatible with version control technologies like Git. 
  • The Salesforce DX command line tool and its ability to help programmatically control and script deployments, testing, and configuration in orgs let users put industry-standard CICD tools like Jenkins, Circle CI, GitLab CI and GitHub Actions at the heart of their automations. 
  • New capabilities like org shape, scratch org snapshots, and lightning sandboxes let users create and destroy environments on -the- fly, fostering developer independence, development environment isolation, and other key DevOps principles. 
  • And last, but not least, scratch orgs let us fully realize the promise of code as the source of truth where not only the metadata but even the features and editions of our development and testing environments are generated dynamically 100% from source code. 

The maturity of the Salesforce DX initiative has reached a tipping point, and the ecosystem is taking notice. There is a clear differentiator for companies that take the initiative to move from legacy release management to adopt the principles of DevOps. 

For our part, our Appirio DX tools and methodologies pick up where Salesforce DX leaves off to transform development on the Salesforce platform. It is a set of licensable tools and professional services from Appirio. To learn more, reach out to an Appirio DevOps expert

Related Content

The Growing Significance of DevOps in Salesforce

Why Version Control is a Pillar of Salesforce DevOps

Understanding Package-Based Development on Salesforce

Demystifying Scratch Orgs for Salesforce

About the Author

Roarke Lynch

Roarke Lynch is Director of DevOps and Appirio Labs for Appirio’s Products and Innovation team. He is 8x Salesforce certified and has been developing and integrating on the Salesforce platform for over eight years. Roarke is from the Washington D.C. area and now lives with his wife in Houston, TX. In his spare time, you’ll find him chasing his one-year-old, fostering kittens, or geeking out over math, science, and economic innovations.

Follow on Linkedin More Content by Roarke Lynch
Previous Article
Breaking Down the DevOps Stack
Breaking Down the DevOps Stack

The DevOps stack allows you to innovate at scale. It provides a common path for developers and teams to mov...

Next Article
Six Questions to Ask when Transforming Your Customer Experiences
Six Questions to Ask when Transforming Your Customer Experiences