This blog post is an excerpt from GovLoop’s recent guide, “Make DevOps a Reality at Your Agency.”
While we see pockets of innovation in state and local government, the overarching perception of the public sector is one of slow evolvement. In a recent interview, Billy Hylton, Digital Services Director for the state of North Carolina, explained why government has gotten that reputation – and how DevOps can speed up progress.
“Traditionally in enterprise IT and large organizations like a state government, there are a number of controls and testing in place to keep everything secure and meet requirements,” he said. “We cover those controls well but then, at times, we don’t move at a pace to meets the business’s needs.”
In his interview, Hylton shared how DevOps has transformed the way his team manages the digital footprint of North Carolina so they can move more quickly to improve citizen services. Hylton’s team started their DevOps journey about three years ago, when they began migrating the websites of various agencies to one content management system. Now, DevOps is becoming a standard process for managing the state’s Digital Commons platform, a single portal that allows employees to curate and update more than 30 related government websites.
“DevOps makes sense for us because we’re trying to move fast to meet business needs – that is creating websites, applications, and new functionality quickly and effectively,” he said. “At the same time, there’s an accountability piece that we have to maintain, and balance with our efficiencies. DevOps helps us reconcile those two things, which are often in tension.”
In addition to fostering collaboration between developers and operations staff, the department has seen significant efficiency benefits from the process. In fact, Hylton said his team is now in a process of continuous development, meaning they are consistently updating and improving the Digital Commons platform, rather than scheduling long, waterfall cycles of code deployments. “That’s crucial for us,” he said. “In our case, we have so many websites on one platform, we have the constant need to do patching, keep the system secure and roll out incremental changes.”
His team is also building out prioritized lists of tasks using a shared task management tool, so that developers constantly have a clear idea of where to allocate resources. Next, the team will focus on building continuous integration capabilities, allowing developers to integrate code into shared repositories several times a day.
However, this goal, as well as the general expansion of DevOps in North Carolina state government, isn’t without its challenges. As Hylton explained, developing a new process within an individual department can be challenging because that department often interacts with, or even reports to, other teams who have separate processes. Enterprise-wide IT change management processes can potentially be in conflict with the fast, iterative pace of DevOps.
Additionally, when other departments rely on closed technologies, rather than open source tools, Hylton said it can be difficult to integrate DevOps. His team uses Drupal and a Git repository for most of their work, while other parts of North Carolina government use more closed systems. That makes it difficult to share code and development across department boundaries.
That’s why his team has focused on engraining DevOps within its own processes first. Then, it can spread best practices to other departments gradually, as team members learn lessons from DevOps processes internally. “I’m being a little cautious because we’re trying to push the envelope a little bit and innovate,” Hylton said. “But at the same time, we want to be considerate of our colleagues and existing processes in place.”
To acclimate other department users to the DevOps cycle, Hylton’s group hosts weekly coding sessions in the government’s data visualization studio. Personnel from various departments are invited to come and assist developers in executing specific tasks within the Digital Commons platform. These “coding dojos” help spread the ideals of DevOps and involve non-IT professionals in the process.
“DevOps lends itself to ongoing collaboration and a growth of skills to harness the capabilities of others outside of our team,” Hylton said. “There definitely is an ethos that everyone can participate and learn. Not everyone is a hard core programmer, but there are pieces that they can play in the process.”
That’s the ultimate objective for Hylton – applying DevOps when and where it makes sense for his team, rather than trying to push it to the entire government at once. “That’s the advice I would give,” he said. “Don’t focus on what exactly DevOps is or think about the five tools or technologies you need to put in place. It is more about a mindset, and identifying what practices and values from DevOps fit into your business model.”
For Hylton, that means collaborating across teams without pushing the process where it doesn’t make sense from an operational or technical standpoint. Nevertheless, he’s confident that DevOps will grow in practice across North Carolina government.
“DevOps practices bring our two sides together: the need for agility to meet business needs quickly, while also being mindful of policy, standards of security and legislation,” Hylton concluded. “We couldn’t get to where we are today doing things the traditional way.”