Is your agency’s culture ready for DevOps?
Connecting state and local government leaders
Implementing DevOps is harder than buying and installing new technology. It requires a different culture, greater collaboration, new metrics and the right infrastructure to be successful.
Speaking at a government symposium in November, U.S. Special Operations Command CIO Lisa Costa described how her unit deployed DevOps with an analogy that any Navy Seal or Army Ranger would understand: tactical shooting.
“What do you do in tactical shooting?" she said. "You remove all extraneous movement, and that’s how you get efficiency.” Similarly, Costa said, her team focused on stripping away processes that had accumulated over the years and were now slowing down development.
Reflecting on the impact of rapid technological change on operations and the need for much faster development, Costa called for adopting an enterprisewide view of DevOps. “I don’t think anything is going to change our culture more,” she said.
DevOps, an evolving software delivery methodology, is making application development quicker, cheaper and more collaborative. The software development framework addresses a traditional and problematic handoff between an organization’s developers and its operations staff by encouraging both teams to collaborate on a project from start to finish.
While Costa’s comments focused on the potential of DevOps to transform culture and accelerate innovation, agency decision makers increasingly recognize that the right culture must be in place to maximize the benefits DevOps can deliver. No matter where agencies are in their DevOps journey (even if it has not yet begun), there are several strategies to consider in creating a DevOps culture.
Move beyond current metrics
With DevOps requiring different processes and environments than what is in place, comparing the existing state to the desired state isn’t applicable. Likewise, trying to leverage current metrics for the shift is resource-intensive and, in most cases, not cost effective. To move forward, agencies must take into account what they’re measuring now and couple it with qualitative justifications and goals. They must identify what’s important and define their metrics accordingly, collecting data from all sources, including the IT team and users.
Communication is key. Because DevOps is iterative, and there isn’t a true endpoint, so IT managers should share metrics and empower their teams, motivating them to move forward. Being open to new ideas and encouraging outside-the-box thinking across all levels of the organization will inspire the innovation that will drive business forward. And then, of course, measure the results.
Stay tuned into end goals
There are many benefits to adopting a DevOps culture, including reducing risk and becoming more agile, collaborative and efficient. Although these goals have metrics tied to them, most agencies don’t move beyond the macro level. If they’re pushing to move faster, they may measure a release date and not take into account functionality that was dropped to meet the goal. By diving deeper into the pieces of the development processes that affect the end goal, agencies can evaluate outcomes, rather than just outputs. In a 5K race, for instance. Winning isn’t simply the result of running faster; it’s about increased training levels, improved gait and numerous other factors (both predictable and unpredictable) that affect the end result.
Gain workforce and executive buy in
DevOps is about people, culture and processes. In many agencies, there’s a development team and an operations team – with varying degrees of cohesion. The developers just want to develop -- they write code, publish code and then fix code. The IT operations team is concerned about compliance, security, performance and cost. Getting staff to buy in to DevOps calls for bringing the two teams together and communicating the vision.
Moving from an environment focused on fixed project cycles to iterative, ongoing processes is an organizational shift, so breaking down silos between people, data, tools and processes is a top priority. Starting with smaller pilot projects that prove successful will show the benefits of working in new ways.
Team members may fear the change; shifting roles and new responsibilities can create discomfort and uncertainty. Describing what jobs will look like in a DevOps environment and providing the training to set staff up for success (both in the agency and in their careers) will help alleviate some of the growing pains that can hamper progress.
And while it’s important to acknowledge successes, the most successful DevOps projects have buy-in from the executive team who can say, “This isn’t optional, guys. You need to do this.”
Build the right infrastructure
Without the right architecture to build, manage and distribute data to the people and places it needs to reach, agencies won’t meet their goals. Cloud architecture in particular is critical to success. Last year, the DevOps Research and Assessment research firm reported that teams embracing the essentials of cloud computing – such as on-demand self service, resource pooling and rapid elasticity -- are 24 times more likely to be a lead performer when it comes to successful DevOps.
Agencies must evaluate their current infrastructure and identify gaps. Moving toward an environment that can support the automation, integration and monitoring will foster agility and efficiency, on-premises or in the cloud.
Building in security is key
Building security into the development process can be a challenge because it may be perceived as an “interruption” in the developer’s workflow and considered a productivity hit. A DevOps culture that accounts for security at the beginning of the development process by injecting security checks into the workflow. For example, after a developer submits code, security software can evaluate that code to check for practices that may lead to a vulnerability. Throughout the workflow, agencies can leverage software to run against the binary to uncover any additional vulnerabilities, which will generate a bug if something suspicious is found.
Implementing DevOps is harder than buying and installing new technology. It requires a different culture, greater collaboration, new metrics and the right infrastructure to be successful.