Let's start with a definition. 'DevOps' is a set of practices that combines software development (Dev) and operations (Ops) to help teams build, test, and release software faster and more reliably. In slightly less abstract terms, DevOps is the coming together of the people responsible for building applications (developers and admins) with the people responsible for releasing, monitoring and maintaining those applications (typically admins, team leads or release managers). Working more closely with shared patterns, practices and tools, DevOps has the ultimate end goal of completely blurring the lines between these two distinct roles. This blog post gives you a short overview of what DevOps is, and how every team working within the Salesforce ecosystem can benefit. Devops course in pune
Although relatively new to Salesforce, DevOps has long been established as the best way of creating and managing software on other platforms and software stacks - so it isn't some new and unproven invention, but an approach that has well-documented benefits. Teams across the tech industry adopt DevOps because it helps them to deploy much more reliably and frequently. For example, a 2018 report by DevOps Research and Assessment (DORA) and Google Cloud found that high-performing teams use DevOps to release 46 times faster. Not only that, the same teams had 'change lead times' that were 2,555 times faster than those of low performers, plus much lower change failure rates and much faster incident recovery times. All in all, DevOps leads to shorter, more robust development and release cycles, which ultimately saves companies a huge amount of time and money.
From release management to Salesforce DevOpsAs a cloud-based platform, Salesforce is designed to make it easy for you to add new capabilities and customizations to your orgs without worrying about things like infrastructure, networks, data storage and security. A lot of what would traditionally be considered the operations side is handled for you by Salesforce. For this reason, Salesforce admins and developers typically think about their process in terms of release management, with changes and new features deployed from sandboxes or added directly into production orgs.
But there's more to DevOps than managing infrastructure and releases. Over the last couple of years, Salesforce teams have been taking note of the trend set by development teams on other platforms, and have started to adopt ever more elements of DevOps best practice. They're automating parts of their process, taking an incremental and iterative approach to development, and using tools such as Git-based version control that are widely used within other software environments. In merging development and operations, they're also empowering admins and developers 🚀 by making it easy for everyone in the team to contribute to releases and spin up development environments. And at the same time, they're removing organizational silos that previously prevented a stream of ongoing good work flowing quickly to end users.
There are two main aspects to DevOps. Firstly, it's a philosophy, or a way of working, that empowers development teams to be more agile. It unites development and operations through automation to give teams the ability to manage their own releases rather than handing them over to an operations team. But in a more hands-on sense, it's also a set of tools to enable this philosophy - tools that let you replace fragile, manual processes with reliable, repeatable automated ones.
The benefits of DevOpsThe whole purpose of DevOps is to increase the ability of teams to deliver new features and solve critical issues quickly and with confidence. So it's no surprise that high-performing teams who use DevOps are also the ones that achieve:
A higher frequency of new releases to productionShorter lead times for making changes and developing new featuresFewer bugs and fewer service disruptions due to poor quality codeFaster restore times in the event of service outagesIn fact, Google's industry survey for 2019 showed that high-performing teams deploy 208 times more frequently and make changes 106 times faster than low performers, with a 'change lead time' of less than one day at the high end. High performers also report change failure rates of 0-15%, compared with change failure rates of up to 60% among lower performers. What's more, elite performers are able to restore service in less than an hour when there are disruptions, whereas low performers reported restore times of between one week and one month.
At Gearset we're seeing similar trends among our users. Teams that make use of Gearset's continuous integration (CI) tools, for example, deploy 17 times more frequently than teams who deploy manually, and have a 90% success rate when releasing to production. In short, teams that have adopted DevOps practices dramatically outpace those that haven't.
17x more deployments!Over the past year, 10 top-performing Salesforce teams used a subset of Gearset's DevOps features to make an awesome 6,424 deployments on average - or just under 18 deployments a day. More amazingly, an equivalent group of top ten teams added Gearset's CI automation tools into the mix to deploy a mind-blowing 106,945 times. That's 293 deployments a day! Not only that, these stellar performers achieved a success rate of more than 90% for their final releases to production. DevOps is having a truly transformational effect on Salesforce teams. Just adding a few DevOps features gets you deploying more regularly than most other teams, while adding CI supercharges your whole release process. How often do you deploy? DevOps is about tools, processes and ways of working. Luckily, adopting DevOps for Salesforce doesn't necessarily mean you have to make lots of changes to the way your team works, or make large changes all at once. In fact, much of what the more advanced Salesforce teams are already doing falls under the label of DevOps. That said, Salesforce teams who are moving towards a more agile, faster and automated development process will incorporate the following four pillars of DevOps.
Sign in to leave a comment.