Business has always been competitive – a survival of the fittest mentality – but the pressure has never been greater than it is in this age of digital transformation. If organizations don’t innovate and deliver – fast – then customers may go elsewhere and never return.
One of the tools today that is critical for being success under such pressure is development and operations, more popularly known as DevOps. It’s purpose is to enhance communication and collaboration between development and IT operations by breaking down organizational silos and by streamlining processes.“
DevOps simply adds the idea that small, cross-functional teams should own the entire delivery process from concept through user feedback and production monitoring,” says IT leader Mark Schwartz.
Specifically, the “guiding principles” of DevOps include culture, measurement, automation and sharing. This is a new approach to the more traditional application lifecycle management (ALM) process. The aim is to ensure an organization serves its customers better and competes more effectively in a rapidly evolving marketplace.
DevOps Comes of Age
About a decade ago, DevOps was really only of interest to startups and tech companies that knew speed and automation were critical to the evolution of applications. But as applications quickly became more complex and were being employed by a wide array of businesses, DevOps became an integral part of being able to survive by offering flexibility, speed and responsiveness.
As of 2018, only 9 percent of technology professionals worldwide who are responsible for the development and quality of web and mobile applications reported that they had not adopted DevOps and had no plans to do so. Thirty percent reported that the entire company, or a majority of teams in an organization, had adopted DevOps. That number is expected to tick up quickly as another 42 percent say that either a few teams are undertaking DevOps or are just starting the DevOps journey.
Among the companies that are using DevOps to great advantage: Amazon, Netflix and Target. For example, Amazon used to waste 40 percent of its server capacity (up to three-fourths during the busy holiday season) when it operated on dedicated servers. But after moving to the Amazon Web Services (AWS) cloud, then engineers had the flexibility to scale capacity up or down. This cut server capacity spending, but also heralded a continuous deployment process that let any developer deploy code to the necessary servers at any time. The duration and number of outages were cut, and engineers were deploying code an average of every 11.7 seconds.Despite such benefits, there have been some growing pains with DevOps.
Organizations like ING have discovered that when they transformed software delivery to DevOps from Agile software development, they didn’t take advantage of what they had gained through Agile.
“What you can’t do — and this is what I see many people do in other companies — is start to cherry pick from the different building blocks. For example, some people formally embrace the agile way of working but do not let go of their existing organizational structure and governance. That defeats the whole purpose and only creates more frustration,” says Peter Jacobs, former ING Netherlands CIO.
That’s backed up in a survey of 5,296 software developers, CTOs and software professionals by GitLab. That study found that that the integration and delivery of DevOps was more successful when there was a “clear DevOps culture.” The highest performing teams had a clear-cut DevOps culture, while underperforming teams did not, the research found.
Adopting DevOps
While DevOps can make an organization more competitive, simply implementing it without doing the homework may result in less-than-desirable results. In order to make the most of what it has to offer, it’s important to understand all the DevOps facets. Here are some answers to common questions:
What are the advantages of DevOps? Because DevOps combines practices, tools and an organization’s culture, it makes it much more conducive to cross-collaboration among various teams. Doing away with silos and various departmental processes increases the speed at which companies can develop and bring products to market in comparison to using traditional software development and infrastructure management processes. With DevOps, the process “becomes increasingly transparent as all individuals work towards a common goal,” explains Vepambattu Chandu.
Is it reliable? There are some practices that can boost reliability. For example, using continuous integration is a DevOps practice that allows software developers to regularly put their code changes into a central repository, which is then automatically tested. This allows problems to be spotted sooner and improve the software quality as well as cutting the time it takes to validate and release new software updates. Organizations can also monitor metrics and logs to determine how application and infrastructure performance is affecting a product’s end user. This makes it much clearer to determine how changes or updates are affecting users or help to spot problems at their source.
Can DevOps be scaled out? Yes. Processes for infrastructure and development are automated and consistent, which means you manage systems no matter how much they change or how complex they may become – and you can do it with less risk. For example, for those who use scalable infrastructure such as cloud-based platforms, it means that a team’s access to hardware resources grows, which then also improves testing and deployment speed.
What about the cost? According to a 2017 KMS Technology DevOps survey, most (44 percent) cost between $100,000 and $500,000, with nearly one-third of 200 respondents citing the biggest spending went toward tools and technologies. Another 40 percent projected that their DevOps-related expenses (software development, testing and services) would tick up 25 percent for the next year.
How long does a DevOps transition take? KMS reports that the majority of transitions took a year or less to complete.
What are some best practices? No matter the industry or size of the organization, the key to successful DevOps is the people, whether it’s the customers or the teams. Are your team members adaptable? Will they accept change? Can they work cross-functionally? “There’s one thing we cannot forget is that whenever it looks like a technical problem, whenever we think we have a technical issue, it’s always a human problem at hand,” says Almudena Rodriguez Pardo, a business agility consultant. Middle managers may be flummoxed – or even resent – the self-directed DevOps teams, so it’s important to share the data showing why DevOps works and get buy-in from them with small changes in the beginning.
What about security? A Puppet, CircleCI and Splunk report finds that combining security with development isn’t difficult, doesn’t slow down processes and leads to better business results. Specifically, research shows that those with better security are more successful in deploying to production on demand much faster than those with lower levels of security integration. “This year’s findings are clear: Good security practices and better security outcomes are enabled by DevOps practices,” the report says. Among the recommendations: security and development teams collaborate on threat models and security tools be integrated in the development integration pipeline.
Industries from banking to retail to entertainment have used digital transformation to become more competitive and responsive to their customers. Software is an integral part of that transformation, and is critical when it comes to streamlining processes and making organizations more efficient in all parts of the operation. Companies must understand that they just can’t make a better product or service — they also must evolve how they build and deliver software to support those products and services.