4 top tips for starting your database DevOps journey
If you’ve read the Accelerate State of DevOps Report from DORA and the 2019 State of Database DevOps report from Redgate, you’ll see how they resonate in terms of the benefits to be gained from adopting DevOps.
In short, 85% of organizations have already adopted DevOps or plan to do so in the next two years, 77% of application developers are also now responsible for database development, and applying DevOps practices like version control and continuous integration to the database is seen as key to driving high performance in DevOps.
That said, you may feel a rumble of envy that some businesses are already living the benefits of implementing a DevOps culture, achieving improvements to their metrics, streamlining their processes, and saving time while visibly delivering more value to the business. In summary, they’re ‘doing it right’.
A crucial part of that is ensuring the database is included as a part of DevOps processes. In the section on managing database changes, the Accelerate report talks about version control and the automation of database changes alongside the application, and concludes: When teams follow these practices, database changes don’t slow them down, or cause problems when they perform code deployments.
As well as speeding up the delivery of value, including the database means better collaboration between DBAs and developers, a positive impact on meeting compliance requirements, and gaining the freedom to innovate without fearing database deployments.
It’s understandable, however, that the worry of disrupting how businesses currently work with the database stems from fear of the data itself. It’s a Gordian knot of complexity and, because of this, there’s often a belief that implementing database DevOps can take years. Interestingly, however, it doesn’t take as long as you might think.
In the 2019 State of Database DevOps report, we found that 83% of organizations that have already adopted DevOps for application development estimate it would take less than 12 months to move from traditional database development practices to a fully automated process for deploying database changes. Around half also say it would take less than six months – a modest investment of time considering the impact DevOps will have on the speed of software delivery after implementation
So how can you make the shift in your organization and demonstrate that your software delivery processes are a key driver of business value and success? Here are some key tips for how to kickstart your DevOps journey.
1. Engage stakeholders from across the organization
This is not a solo mission, and you won’t be able to get very far on your own. As the Database DevOps Report points out:
“A wide range of stakeholders are involved in implementing a DevOps initiative, from IT Directors or Managers to Developers and the C-level, all of whom need to understand the benefits to be gained.”
It’s important, therefore, to gather allies from around the business and ensure they understand how embracing DevOps, and including the database, can address their key concerns and focuses. To help you, we’ve written a number of posts that can help highlight those benefits for particular roles like the CEO, CIO and IT Manager.
Once you have support from those key stakeholders around the business, not only will it make the implementation process easier but also support the overall shift in culture that comes with DevOps.
2. Demonstrate the ROI your business will gain
Do your research before reaching out to execs for support. By arming yourself with facts and figures that back up your request for the investment, you’ll be better prepared to field any blockers before they arise.
In your efforts, don’t just look at the financial Return on Investment that can be gained. Look too at the business benefits that adopting DevOps for the database can bring. We did some landmark research into this in a recent whitepaper that shows how the monetary ROI can be calculated, and balances it with the value-driven benefits for different stakeholders.
It’s also worth considering what objections you might come up against. When we asked in the Database DevOps Report, for example, what the main obstacles were to implementing a DevOps approach, lack of skills and disruption to workflows headed the list:
3. Begin with the basics
If DevOps is a completely new concept for your organization, you may find pushing for full automation right away creates a culture shock that can fail at the first hurdle. So start by laying the foundations and getting your developers singing from the same hymn sheet first.
At the very heart of DevOps is uniform processes, and introducing standardization across teams is more important than ever before, especially if you work in geographically distributed teams. Standardizing code and working from a single source of truth using version control, for example, aids collaboration and avoids unnecessary rework or merge conflicts.
It also enables compliance to be demonstrated early in the DevOps journey. By checking changes regularly into version control, problems can be found and fixed sooner, and a robust and demonstrable audit trail can be created.
Once you have a team working in sync with each other, you’ll start to see the benefits coming through. This will make the move to automating processes further down the development pipeline much more natural and you’ll already have evidence to hint at what full DevOps can bring your organization.
4. Monitor everything
The faster speed and frequency of releases that DevOps brings to database development increases the importance of monitoring the effect of those releases. While DevOps does reduce errors by testing proposed changes earlier, should a breaking change reach production, the cause needs to be identified quickly.
Many organizations use hand-rolled scripts to monitor their servers, with the use of more comprehensive third party tooling normally rising in companies of more than 100 people, where there are more than ten servers, or where the frequency of deployments increases.
This typically allows them to view their entire SQL Server estate at a glance, discover issues before they have an impact, and drill down to the root cause of any performance issues in minutes rather than hours.
Effective monitoring can also contribute towards compliance requirements by alerting you immediately to security problems that might put your data at risk, such as unauthorized access attempts.
What’s your next step?
Beginning your DevOps journey doesn’t need to be a daunting five-year task that completely disrupts your business. There is business value to be gained from each step, and you could be closer to introducing it than you think.
A good place to start is our online Database DevOps Maturity Assessment tool, which can benchmark your database DevOps maturity level and show you where you are, what you need, and what you can do next. It will take just a few seconds to complete, but it will save hours of desktop research and also provide a tailored report packed full of practical advice and insights.