Still so new, yet rapidly gaining momentum – DevOps has been touted as a must for all software companies. Seeing as every business is becoming a software company, that means everyone needs get onboard with DevOps.
However, because DevOps is so new, many practitioners
are continually having to hone what they view as a best practice. Giving an insight into DevOps benefits, tools and best practices, Adam Bowen from Delphix demystifies DevOps with CBR’s Ellie Burns.
EB: Do all companies need DevOps?
AB: DevOps continues to gain momentum in the UK. According to our research, most UK organisations surveyed have introduced dedicated budgets and support teams for DevOps, with 35 per cent spending £1 million or more per year.
It is uncertain how companies aim to compete in the marketplace without embracing DevOps. There are clear business benefits to be gained from those that do and adoption has been fueled by greater demands on IT to deliver more, faster, continuously and in an automated fashion. Our research shows that on average 40% of respondents indicated that their day is spent re-coding due to bugs and takes an average of 2 hours to reset an environment after a test cycle. DevOps helps reduce this time and can have a real and substantial impact on efficiency and effectiveness.
EB: Which types do?
AB: All software companies need DevOps, and now that all companies are becoming software dependent this makes DevOps important across all industries. Today’s major companies rely on software to deliver upon the needs of the business; whether these are backend ERP systems or the customer-engaging applications. Companies like eRetail startup Etsy have used DevOps to rapidly develop their products and capture huge market share. Likewise, DevOps has also brought lightning agility to established giants such as Amazon, Apple and Dell, enabling them to deploy thousands of times a day.
EB: What business benefits can DevOps provide?
AB: As the volume of applications that businesses support increases, teams need to deliver software faster, release code more frequently and reduce the number of bugs found late in the development cycle.
Traditionally IT could update applications once or twice a year, but today expectations are much higher, with releases being pushed out weekly, daily or even hourly. In the world of DevOps, days, weeks, and years are just too long to wait to “get it wrong.”
DevOps allows companies to quickly innovate with new ideas that might not be 100 per cent and quickly improve on those innovations with the immediate feedback until they get it right. With DevOps, this whole process of cycles can be accomplished in minutes. In today’s competitive business landscape, DevOps is a solution that gives organisations a competitive edge and enables them to keep pace with ever-changing industry demands.
EB: What tools do you need to make DevOps a success?
AB: DevOps teams have become experts in building up environments very quickly and running tests automatically. However, the tests are lacking in depth because they typically work on only a subset, or synthesis, of data. To correctly model the production environment, DevOps teams need to become experts in being able to create and work with up-to-date copies of production data instantly. The only way to do this is through data virtualisation.
DevOps is no longer a separate initiative from security. Today, DevOps implements security from the very beginning. As DevOps becomes ubiquitous, there will be a greater need for individuals with skills in data preparation, such as data masking, as security constraints expand. The need to instantly create copies of data also requires the ability to mask out personally identifiable information to comply with the incoming General Data Protection Regulation (GDPR). Additionally, organisations will continually search for ways to reduce the risk of damage caused by data breaches and masking skills can essentially eliminate the risk of data breaches for all non-production data, which is up to 90 per cent of many organisations’ attack surface.
EB: What lessons can be learnt from the collaborative aspect of DevOps and how can this be applied to the wider workforce?
AB: DevOps sole function need not be rolling out software quickly. There are numerous culture takeaways that can be applied to the wider workforce. In the long-term, applying key learnings from DevOps programmes, such as more effective collaboration on common goals, will help break down silos and promote unity, which will result in a more agile and productive workplace.
EB: In 2017, what goals should DevOps practitioners adopt that will have enormous results on the ability to meet the demands of users?
Make paying off debt a priority
Most companies are so saddled with technical debt, that they hire more people just to cope with it. This is like just putting more hoses on a forest fire. When fighting a forest fire, a portion of the team creates a firebreak to deprive the fire of fuel. Likewise, organisations need to dedicate a portion of their workforce to do nothing but eliminate the technical debt that is fueling operational fires.
Set ambitious goals, but don’t sweat the details
Have goals and objectives, but allow the minutiae to be developed over the course of short intervals. Business-level objectives must be set for DevOps teams, but be careful not to over prescribe the details. There are many tools and methods, and more arrive every day. Teams should plan to work in two-four week sprints with measurable outcomes, instead of six-month project plans. Use the feedback and lessons learned from those short sprints to inform the next sprint’s work.
Don’t leap, but get moving
DevOps is meant to be about quickly moving product from left to right. A common mistake is for organisations to wait for “the perfect moment” and then jump headlong into DevOps, creating a lot of disruption at once. This is a recipe for disaster. Identify work streams that are ripe for improvement from DevOps and start with moving one new benefit from concept to production. Remember, single piece flow is your friend.