I am Kalbir Sohi and I'm an Infrastructure Digital Service Manager at HMRC. I lead a Web Operations team whose job is to make sure that we meet the infrastructure needs of teams delivering digital services in HMRC. I've written this post to follow up on some questions that we were asked as part of our London Tech Week session on how we build digital services in HMRC. We were asked a number of more detailed questions about how we do infrastructure in HMRC Digital and what our plans are for the future. We will be writing a series of blog posts that explain how we are focusing on cloud computing and infrastructure automation as ways to build more efficient and user friendly digital services.
The benefits of infrastructure automation
In HMRC we are scaling up our cloud infrastructure as we prepare to deliver more new and redesigned digital services. These services sit on the "Tax Platform", our internal platform as a service. Over the last two years developing the Tax Platform we've been automating the creation of infrastructure to ensure consistency and quality in our infrastructure by defining it in code and decreasing the amount of time that people in our team spend doing repetitive manual tasks like provisioning and configuring servers.
We have focused on using open source tools such as Puppet, git and VCloud Tools to build and scale this infrastructure during the last two years. We've progressed from being able to support thousands of users in the private beta phase of our new services to millions of users during the final week of Self Assessment filing. We've also grown from four teams using our platform to around 25 (and growing!) and quickly built and developed the environments and pipelines to support that.
The Tax Platform is designed to make building, testing, deploying and running microservice based web applications very easy. As an organisation this only represents one segment of the total infrastructure that we manage. It is HMRC's ambition to change the way we build and manage infrastructure across the whole of our IT estate, including the largest systems in HMRC - the ones we use for calculating how much tax people owe.
Cloud Broker Ecosystem
With this ambition in mind we have started our Cloud Broker Ecosystem project. Our goal is to move large amounts of the infrastructure we run in HMRC onto cloud infrastructure and to do so in a way that is repeatable, efficient and automated. We will do this by building an ecosystem of products to enable us to:
- provision and manage infrastructure across secure clouds using common tooling
- see how we are using our infrastructure across the whole of our IT to help make decisions about efficiency and effectiveness
- store repeatable patterns for infrastructure in code and reuse them across multiple environments, teams and use cases
We are adopting three main principles:
- Use and contribute to open source tooling
- Be open to a radical redesign of current processes
- Build for our users
Having access to fast, repeatable, efficient infrastructure will change the way that teams approach building and running the HMRC services that do not fit the platform as a service model. We are changing much more than this too. We are taking a new approach to infrastructure which will shape how we organise ourselves to deliver services in the future. At the heart of this is designing for, and testing with our users.
We are committed to both using open source products and contributing back to the community to improve them based on what we are doing. This should help us to avoid being tied to one specific supplier or technology but will also allow us to contribute to some of the interesting and novel cloud tools that are emerging -- hopefully making these tools more useable for organisations like HMRC.
What comes next?
In our alpha phase we looked at open source tools that could meet our needs and how we might adopt them.
We spiked writing configuration that would allow us to repeatably provision an infrastructure pattern of networks, compute and storage resource, as well as a configuration of web and application servers which could be deployed in an automated way.
We'll be making decisions about the open source tooling that we will adopt and building out the core broker capability. At the heart is how we build our Cloud Broker Ecosystem tooling so that it meets the needs of its users -- those teams in HMRC that will actually be provisioning, using, maintaining and monitoring that infrastructure.
As we move into beta we will be working with the teams that build and maintain some of our core tax systems to identify how we can move those systems onto secure cloud-based technology using our emerging toolset.
In my next post I'll talk about some of the open source technologies that we have been looking at and how we are moving forward with provisioning against multiple clouds. You can keep up to date with the latest posts on this blog by choosing to sign up for updates on the right hand side of this page.