We’re living in exciting but demanding technological times. Big Data, Internet of Things, Apple Watch, ubiquitous computing, smart machines, robotics, and home automation . . . things that were the talk of science fiction only a few short years ago are on every CIOs wish list today. But to the point, the revolution in technology has led to major shifts in how organizations today ideate, plan, develop, and deploy software solutions. It used to be that software release cycles would take upwards of 18-24 months or more. Now, with the innovations spurred on by the consumerization of IT and heightened customer demands and business competition, companies today are hard-pressed to get applications out the door as fast as possible.
DevOps is essentially a transformation in IT culture for the 21st century involving rapid service delivery through the adoption of agile, lean practices and which ultimately puts people over processes. So the obvious question to ask is this: “How is your organization leveraging DevOps?” When it comes to your IT infrastructure, what are you doing to ensure faster production cycle times, more efficient workflows, and better cost savings and revenue generation? If a blank is drawn on these questions, then you need to put together a DevOps strategy.
At the same time, it’s not always that easy. In fact, there tends to be a lot of confusion around what DevOps is and how to kickoff a strategy. So let’s walk through some key steps for ramping up your DevOps initiative and hopefully making your software or product development cycle as efficient and streamlined as possible.
1. Define DevOps for your organization
Gartner defines DevOps as “a change in IT culture, focusing on rapid IT service delivery through the adoption of agile, lean practices in the context of a system-oriented approach, where system-oriented is the process of understanding how things, regarded as systems, influence one another within a whole.” Now that’s a mouthful but it really boils down to this. DevOps is not just about technology but it’s about people and process. It’s about effective collaboration and communication across the organization. To accomplish the change in culture, you start with incremental changes in behavior and over time things will begin to transform. Start by creating an environment in which innovation and brainstorming are welcomed practices. Reward people for their ideas. Host a monthly innovation contest by providing a free lunch or $50 gift certificate to whoever finds the best solution to a manual, time-consuming process. Incentivize it and make your employees know they’re important contributors in the process of IT transformation.
2. Develop an application with DevOps
Rather than theorizing about DevOps, there’s no better way to get started than by picking a project and going into it with a DevOps mindset. Gartner recommends this path. While improved culture and collaboration will follow, the best results of driving towards DevOps adoption is through systems of innovation in real time. Developing your application with a lean, automation-oriented, and continuous delivery mindset will provide a great opportunity for bringing your organization or department together towards a common goal.
3. Teamwork makes the dream work
Your DevOps strategy won’t fly without a properly constituted team who “get the big picture” when it comes to being lean and agile. Organizations must be fast, focused, and serious about continuous delivery. This all revolves around proper team synergies and alignments between developers and operations personnel. Keep your team small and agile. The advantage here is that small teams self-organize more efficiently and can catch mistakes faster and work to not repeat them. It’s easier to hold your colleagues accountable and to keep a deeper level of trust when the team is small.
4. Measure quality not quantity
Everything today is about metrics and performance. Indeed, the growing complexity of physical, virtual, and cloud environments today requires a more holistic approach to monitoring the numerous devices, systems, and transactions within an IT infrastructure. But as Gartner points out, there’s been a tendency within organizations to drive metrics for the sake of preserving a “hero mentality” and rewarding those who can fix the most issues. It goes on to advise a better approach: “Build new shared metrics that align with the business needs and impacts, but, more importantly, help people realize that they must work together. Goals should be service-focused, with an eye toward improving agility (velocity) and improving business value (quality).”
5. DevOps is about automation
The benefit of automating the testing and deployment process hardly needs explanation. With just a few clicks a continuous integration tool will run a series of unit tests, deploy the code to a new server, and then carry out a series of integration tests. The obvious takeaway is that continuous integration automation reduces cost and increases efficiency so that developers can spend their time writing code instead of tracking and fixing bugs.
Developing the ability to automate an organization’s infrastructure may seem like the most daunting of tasks, and it’s at this point that companies usually become their own worst enemy. However, there are a significant number of automation tools on the market now that can help make your build, test, monitoring, and deployment process efficient and effective. A tool like Monitis can give your organization a jump start on your DevOps strategy by providing continual performance, testing, and monitoring updates for your infrastructure.
6. Build a DevOps roadmap
Once your selected team has built an app and employed some automation and taken in some metrics with a DevOps mindset, it will begin to see the cumulative benefits of all the changes. The next step is to take what you’ve learned and apply the principles across the organization in a more systemic manner. Share what you’ve learned with other teams and get executive buy-in. As you organize your strategy and outline the scope and approach, begin to ask yourself what the endgame is and what you want to achieve in 3 months, 6 months, 1 year, and 5 years? Obviously, you want to produce higher quality products and services faster and more efficiently, but you’ll need to wrap some context around that. To monitor your progress on the path to full DevOps adoption, begin to set some standards for performance based KPIs such as:
* Time to set up an environment
* Time from change request to release
* Number of deployments per week or month
* Mean time to resolution
7. Realize DevOps takes time
There is no quick fix solution to creating a DevOps environment. It takes time to get key stakeholders onboard and to change policies and practice. Cultural change is a non-linear and incremental process. And so don’t go and scare people off by attempting a whole-scale DevOps rollout in 3 months. What you essentially want to do is show a modest business case and frame up a simple POC to describe the value of DevOps to your stakeholders. Following the steps above will show them that you’ve thought things through carefully and deliberately. Each new success will play in your favor and to the benefit of the whole organization.