Growing and Governing an Internal Developer Portal in a Regulated business
Published on September 10th, 2024 by Sam NixonBaillie Gifford & Co is an independent investment management firm founded in Edinburgh in 1908. They invest in game-changing companies and other assets that can sustain growth and remain resilient in a changing world for decades to come.
I met with Chris Hawkins, Lead Software Architect at Baillie Gifford, to discuss how they’ve implemented Roadie and the lessons they’ve learnt while rolling it out across the organisation.
Regulated businesses and the need for an IDP
Operating in a highly regulated industry means discipline and clear lines of ownership are necessary when developing software at scale.
Regulators arrive with frightening regularity in such industries and important functions like Compliance, Security, Legal and Regulatory have requirements of what and how development teams need to demonstrate their compliance.
Auditing helps, but only partially. An annual external audit and periodic ISO audits, along with frequent internal audits, examine Software Development Lifecycle (SDLC) processes can demonstrate compliance but when they do find issues it is all retrospective. This is useful information, but suboptimal. Baillie Gifford wanted and needed to be on the front-foot, finding and resolving issues before the auditors told them something was wrong.
This need to demonstrate a steady hand on the tiller led Baillie Gifford to explore software catalogs and internal developer portals long before Backstage or Roadie existed. Back in the mid-2010s they were experimenting with portfolio management solutions and the last generation of IT catalogs in an effort to index the software they were building. Those efforts often involved individuals logging into the portal to keep things up to date, so quickly went stale after an initial surge of enthusiasm.
Finding Backstage and moving to Roadie
According to Chris, Backstage’s focus on providing a developer portal which delivered values for development teams was the key shift. It was the thing that could enable their dream of a full and rich software catalog.
“Backstage is a software catalog disguised as a Dev Portal and YAML is a better incentive to keep things up to date. That makes a huge difference.”
The desire to find a software catalog that worked for developers eventually paid off when the team discovered Backstage. “We had a call with Gartner about Internal Developer Portals - they said Backstage, OpsLevel, Cortex are the main players”.
Exploration of all three followed, and the team at Baillie Gifford soon found their way to Roadie. Roadie was GitHub-only at the time, while Baillie Gifford use Azure DevOps. Keen to get going, Chris and the team pursued a quick Proof of Concept to spin up a self-hosted Backstage instance to kick the tires on Backstage while Roadie integrated new providers to pull information from Azure DevOps and support their stack.
A few weeks later Baillie Gifford had a Roadie instance to start building upon.
Filling in the Catalog
Baillie Gifford started simply - with a mass import of all the software they could find in their internal RBAC rules. As Chris puts it, ‘we just grabbed everything that development teams own. We also have some third party stuff that we wanted to represent in the catalog like Microsoft Graph, but there’s a fuzzy line. Our Internal Audit and Information Assurance teams were pushing for ‘get as much as possible in’.”
That resulted in a big tidying exercise.
“People were assigned as owners and we focused on the Systems list. We said ‘is that correct?’, and if so we then moved on to Components, then Resources etc.”
Driving adoption
Tech Insights
The Roadie Tech Insights plugin proved useful in tracking the import and quality of data in the catalog, which drove further improvements. The team at Baillie Gifford have a Roadie Component Onboarding check.
“We had comms to say ‘you need to be doing this now’, and we used that scorecard to show people what to do; set a soft deadline ’ by the end of X we would like to see these improvements’.
Next came a focus on Rollups (a Tech Insights feature that allow you to look team-by-team at check and scorecard results). According to Chris, that information “helped us engage with a specific area to help move the dial.” Teams who needed to take action could see at a glance what they needed to do and where they were in comparison with their peers. A quick meeting with Tech Insights up on a screen was all that was required - adoption soon followed.
Communications
Senior stakeholders also got involved. “We made sure the messaging was always also coming from the manager for a given area or some senior person - they communicate on our behalf as better visibility of what they are ultimately responsible for clearly benefits them”.
Grassroots enthusiasm for TechDocs and the Scaffolder
Some areas of Roadie have seen unexpected growth, without prompting by the central team. TechDocs and Scaffolder templates are two such areas.
“TechDocs is an area we struggled at first with but now it’s blown up. It really took off - 304 docs in there now and it’s really proving useful”.
They’ve also now started to explore Scaffolder Templates in greater depth. This isn’t an initiative from Chris and the team at all. “Another team is running with that. They think it’s useful and we want to make more of it.”
Hitting the limit of a centralised model
That shift brings new problems, like how do you help govern and constrain inputs when they’re growing organically. Chris and team ended up writing an Roadie onboarding guide for new joiners to Baillie Gifford to nudge teams in thinking through what they were doing. Even this has its limits: no central team can keep their eye on everything while also promoting free expression within the platform.
This shift from central direct and control is emblematic of the tipping point that many Backstage and Roadie adopters reach where the usage of the platform grows in unpredictable and undirected ways once a critical mass of useful information is in the catalog.
Moving from centralised control to a decentralised ownership
With all pistons firing the initial catalog was soon complete and Baillie Gifford were well on their way to having a thriving Internal Developer Portal.
Chris and the team at Baillie Gifford had up to this point been driving the deployment of Roadie themselves. They had hunches about what would be useful and followed through, but they knew it would be the development teams that would now drive the endeavour forward.
Now that the building blocks were in place, they decided to move from a centralised model of control to a decentralised ‘working group’ model.
This is part of a wider attempt to encourage ‘Engagement Through Governance’. While it is helpful to foster the growth of Roadie as an IDP within Baillie Gifford, this is about genuine ownership of the tools that teams use. As Chris puts, it’s about “giving developer teams a greater say in how Roadie is run.”
“The group involved is still relatively small, but we have now established the Roadie Working Group who now manage the catalog. At the moment it’s just representatives from 4-5 of our most active engineering teams, but we plan to grow it time”
Decentralised control is the answer so far to how to strike a balance between responsible usage of the catalog and expressive freedom for adding information that is useful. It is one of the key ways Baillie Gifford are keeping their Roadie instance healthy and sustainable for the future.