The speed of innovation can be daunting. Just as daunting is the understanding that innovation will happen no matter what—we must keep up, or we will absolutely fall behind.
In today’s federal space, innovation drivers are things like cybersecurity, the Internet of Things (IOT), and ubiquitous computing. The adoption of cloud technology, which took center stage in 2011 with the introduction of the Federal Cloud First Policy, and although this policy didn’t take hold as quickly as anticipated due to funding and cybersecurity and regulatory requirements, it is now pushing the envelope even farther, and faster.
What does this faster-than-light innovation mean? It means the heat is on to deliver services now. It means we must move to an environment of continuous integration and continuous delivery and deployment (CI/CD) just to keep up with end-user demands. It means now is the time to adopt a DevOps approach, so we can be ahead of the transformation that is absolutely coming to federal IT.
DevOps: Definition and First Steps
DevOps is simply an organizationally focused approach to software development. It dissolves the siloes between the development and operations teams and encourages shared processes and shared accountability. DevOps is a culture that feeds organizational agility and scalability.
In a more traditional software development model, one team writes the code, another tests it, and another deploys or runs the software. This is an incredibly time-consuming approach, and one that exacerbates finger-pointing if something goes wrong. In other words, using this approach means customers are not getting the quality of service that they’re looking for.
With a DevOps culture and mindset, developers share responsibility for testing and operations; everyone is accountable for performance; and everyone shares the same tools and goals. In a nutshell, DevOps absolutely helps federal IT pros meet the service-delivery needs of a demanding user base with accountability and transparency.
Despite its value, moving to a DevOps culture does not happen overnight. That cannot be overstated; it’s a process change that will take agreement and coordination across the organization. That said, you can absolutely take the first steps toward embracing DevOps by laying the foundation today.
Step One: Monitoring
A DevOps process requires that everything is monitored. Monitoring provides intelligence in the form of visibility and awareness, and helps to get all members of the team on the same page. Monitoring tools give developers and operations manager’s visibility into how code is performing and how systems are behaving; this allows for quick-and-easy identification and resolution of any problems that pop up. Performance monitoring in particular is a critical metric for the entire team—poor performance affects everyone from developers to IT operations to end-users. Measuring performance all the time, everywhere, is a critical first step toward implementing a DevOps approach.
Step Two: Visibility
What good is monitoring if nobody can see the results? Visibility across all the different domains being monitored—across the entire application stack and into everything that drives performance—is a critical piece of the collaboration that is the hallmark of a successful DevOps approach. A broad brush view that shows the results, and impact, of every change should be available across the organization. A single point of truth that is quickly surfaced is the ideal for visibility.
Step Three: Automation
One of the key components of CI/CD—and, in turn, DevOps—is automation. The reason? Speed. If code deployments, tests, monitoring, alerts, and more are automated, everything moves much faster. Automation tools allow for rapid releases and scaling tasks as well as auto-remediation of known issues.
In addition to these three steps, other solutions to put in place to support a DevOps environment include configuration management, a code repository, and logging tools. Logging tools provide the necessary play-by-play of what’s happening in the DevOps environment that is essential for troubleshooting.
As I mentioned earlier, adopting a DevOps approach is neither quick nor easy. That said, it is an absolutely critical piece in transforming service delivery within the federal government. Adopting DevOps will help federal IT pros deal with, embrace, and excel in an increasingly fast-paced environment that is not slowing down any time soon.
Kong Yang is Head Geek of Virtualization & Cloud Practice at IT management software provider SolarWinds, based in Austin, Texas.