In today’s fast-paced tech landscape, development teams face the challenge of improving their autonomy while adhering to organizational governance. Striking this balance is key for driving innovation and ensuring that teams can focus on what truly matters: delivering high-quality products efficiently.
In this blog post, we’ll explore several key topics that highlight how organizations can empower their developers while maintaining necessary standards. We’ll discuss the importance of team autonomy and how it enhances productivity, the impact of reducing context switching and cognitive overload, and the concept of treating your platform as a product. Additionally, we’ll delve into the significance of standards enforcement and how it contributes to a cohesive development environment.
By the end of this article, you will have a better understanding of some of the most common challenges faced by engineering teams daily, along with effective strategies to overcome them.
Ready? Let’s do this!
What is an Internal Developer Portal in the first place?
An Internal Developer Portal (IDP) is the entry point within an organization for developers to access tools, resources, and documentation they need to effectively build, deploy, and manage applications or services.
The purpose of an IDP is to provide autonomy for developers while at the same time improving governance for organizations through standardization of best practices and access controls. By standardizing best practices and implementing access controls, Internal Developer Portals allow teams to operate independently, all while adhering to essential guardrails that ensure compliance and quality.
While Internal Developer Portals are designed to tackle a variety of challenges for different users, this multifaceted approach can make it difficult to get them just right. Striking the perfect balance between flexibility and structure is key to unlocking their full potential.
We recently released a whitepaper discussing Internal Developer Platforms and Portals, along with key considerations for selecting the right one. If you’re still uncertain about your options, I suggest downloading it here.
This article focuses on identifying and implementing the right balance between providing developers the autonomy they need to be effective in their tasks and at the same time provide relevant insights to the business and teams to improve the way they collaborate and provide value for their customers and stakeholders.
What do developers want from their portal?
What do Platform teams look for in Portals?
For years, Infrastructure teams have been given the responsibility of enforcing standards, yet they often lack the resources and authority needed to truly empower development teams. This disconnect can affect their ability to deliver meaningful value and support.
What these teams truly seek in Internal Developer Portals is the power to eliminate blockers for developers while upholding standards and ensuring compliance. They strive for increased visibility across the organization, which enables smooth workflows and fosters innovation without the hassle of unnecessary friction.
In the following sections, we’ll explore the significant work these teams have accomplished over the years, the challenges they face, and actionable strategies to overcome them.
Building on solid foundations
In the past decade, we've observed a shift where professionals who previously managed in-house servers and infrastructure have transitioned to similar roles in the Cloud. This change required a transition from simple point-and-click operations and local scripts to remote management using Infrastructure as Code (IaC) in a more streamlined and predictable manner.
For many organizations, this has become the new norm. But why does this matter?
The shift to Cloud and Infrastructure as Code (IaC) has compelled teams to reconsider not only their infrastructure but also how these scripts and templates are utilized and their impact on business objectives. Typically, these resources have been made accessible to software developers through various means, such as CI/CD pipelines, command-line interfaces, or sometimes by submitting a ticket to the infrastructure or platform team for execution—commonly referred to as TicketOps.
While some of these methods are more effective than others, they all share a common foundation established by the organization to standardize best practices and simplify processes. This approach aligns with one of the primary objectives of internal developer portals: to enhance the use of existing tools and practices.
Therefore, if you have embarked on this journey over the past few years, you are already ahead of many others.
Platform as product
A significant challenge that operations and infrastructure teams have consistently faced is their perception as gatekeepers and a cost center within organizations. Often viewed as a slower part of the operation, these teams have been seen as obstacles to progress and innovation. However, with the right motivation, strategy, and leadership, this narrative can be transformed.
In recent years, there has been a notable shift where many organizations are establishing internal-focused platform teams. These teams aim to deliver Platform as a Product (PaaP), which encapsulates not only the technical infrastructure but also the necessary tools, services, and support that empower teams across the organization. This approach underscores the importance of these teams as enablers of agility and innovation.
This transition is more than just a rebranding; it represents a strategic pivot towards collaboration, efficiency, and innovation. By treating platforms as products, teams can better understand user needs, enhance service delivery, and promote a culture of continuous improvement. This model encourages cross-functional collaboration, allows for faster deployment of solutions, and ultimately drives business success.
The question now is: What does it mean for organizations? It implies embracing a mindset where operations and infrastructure are not merely support functions but integral components that drive business agility, responsiveness to market changes, and innovation.
In practical terms, this approach means treating your platform like any other product within your organization, with the key distinction being that your customers are internal stakeholders. You will engage with these customers to gather requirements, manage the product backlog and roadmap, and develop the necessary tools and resources for their use. Additionally, you will be responsible for ongoing maintenance and ensuring these solutions are effectively adopted over time.
As a result of this shift, platform teams become powerful enablers, enhancing the effectiveness of various teams while promoting consistent standards across the organization. However, just as companies face challenges in encouraging external customers to utilize their offerings, platform engineering teams may encounter similar difficulties in driving adoption of their platforms.
Improving adoption rates
Increasing user adoption of your Internal Developer Portal can be a significant challenge. As noted in this article, many organizations see Backstage adoption stagnating at just 10%.
Adoption is a crucial aspect of the process, extending beyond just Internal Developer Platforms or customer-facing products. You've done it plenty of times before, potentially in smaller settings. Remember that time you had to persuade your team to follow a new way of testing code, or when you led that project that required a complete redesign? These experiences are directly relevant—they just occur on a larger scale when it comes to product adoption.
Now, here’s a strategy that has consistently worked for me, regardless of the context: keep your “customers” engaged and satisfied. How can you achieve that? Build the features they need to make them more effective.
However, it’s essential to remember that you are developing a product, so manage it accordingly. You’ll be interacting with various teams, each with competing priorities and timelines. Therefore, it’s vital to prioritize effectively and deliver frequently, maximizing the value you provide.
If your teams express frustration over a lack of documentation or find that information is scattered across multiple locations - impacting developer onboarding times - start by implementing Service Catalogs. If they struggle with dependencies on other teams for simple tasks like creating cloud resources, focus on enabling Self-Service actions.
We've seen organizations successfully tackle these in different phases, addressing specific problems and working with smaller subsets of teams. Attempting to solve everything at once is likely to lead to failure.
In short, leverage customer feedback to drive your Internal Developer Portal implementation to ensure higher engagement rates. And while you're at it, why not measure its success?
Enforce standards
Maintaining software in production is no small feat. For those tasked with this responsibility, ensuring that best practices are consistently applied across the entire stack can feel like an uphill battle. In many organizations, the burden of service management often falls to a single team, which simplifies oversight but doesn’t reflect the reality for most teams.
Even if you’re part of a dedicated group that manages the full lifecycle of a product, the landscape changes as your organization grows. Onboarding new team members and ramping up deployment frequency can introduce complexity, and without robust best practices in place from the outset, mistakes are inevitable.
This is where Internal Developer Portals come into play. These powerful tools can streamline your processes in several ways. First, they enable Self-Service actions, allowing developers to scaffold new services that incorporate established patterns across the organization. This not only accelerates development but also ensures that all necessary integrations with observability and incident management tools are seamlessly established, along with the infrastructure needed to run your code.
Moreover, Internal Developer Portals facilitate the automated collection of insights from your services and their dependencies, helping you verify that best practices are being adhered to. This data can be visualized in various formats, such as charts showcasing DORA metrics or team scorecards. Such visibility empowers you to monitor compliance with best practices and make informed, data-driven decisions to enhance both your services and team workflows.
Does it sound like Internal Developer Portals could address many of the challenges you’re currently facing? That’s fantastic!
However, it’s important to remember that achieving the right balance is crucial.
Autonomy vs governance
Improving the developer experience within your organization is not just a possibility; it’s an imperative. However, the timeline for achieving this can vary significantly based on the maturity of your platform and processes - ranging from weeks to months, or even years.
As I highlighted in our earlier discussion about adoption challenges, keeping both developers and platform/infrastructure teams engaged is vital. This means prioritizing the delivery of value frequently. Think of it this way: delivering small, incremental improvements is far more effective than waiting for a massive feature release that could disrupt existing workflows.
If you’re a fan of streaming TV series, you’ve likely experienced the thrill of a new season releasing just a few episodes at a time, with new episodes dropping weekly. The creators don’t release everything at once because they want to keep you engaged and excited for what’s next. The same principle applies here.
By consistently delivering small enhancements, you demonstrate your commitment to improving the developers’ experience. There’s no one who wouldn’t appreciate that!
However, it’s crucial to strike a balance between autonomy and governance. Developers often seek full autonomy, while platform and infrastructure teams prioritize governance. Here’s the reality: autonomy without governance can lead to chaos in the medium term, while strict control without autonomy can hold back creativity and hinder product adoption.
Finding the ‘right’ balance with Golden Paths
Finding the right balance is essential for the successful execution of your Internal Developer Portal strategy. It’s about fostering an environment where developers feel empowered, yet supported by the necessary governance to thrive.
That’s why golden paths are important. Golden paths offer structured guidelines that empower developers to adhere to organizational best practices while still allowing for flexibility to make minor adjustments as needed. By following these golden paths, developers can concentrate on their core tasks without the complexity of navigating compliance issues. For platform teams, golden paths establish a consistent framework that allows them to collect relevant signals that can be used to monitor usage, providing valuable insights and data that help improve practices across the board.
So, you might be wondering how you can do all this in an easy way, right? Let me show you how you can do it in Rely.io.
Default dashboards, views and homepages
One of the primary advantages of Internal Developer Portals is the ability to centralize information in a single location. However, simply gathering information isn’t enough; we need to present it in a way that is intuitive and easy to digest for users.
At Rely.io, we understand this challenge. That’s why we offer out-of-the-box dashboards and views tailored to the most common use cases. This approach enables users to hit the ground running and quickly discover the platform's capabilities. Plus, all dashboards and views are fully customizable to meet your specific needs, utilizing built-in widgets and requiring no coding skills.
Another example of where built-in dashboards provide value immediately is on improving visibility on productivity metrics across your organization. At Rely.io we understand how important this is. If you don’t have enough information on how and where your services are running or how frequently you deploy to production how can you improve?
With Rely.io’s dashboards, you’ll enjoy a seamless experience across various entity types, ensuring standardization throughout your organization while making information readily accessible and actionable.
Self-service actions
At Rely.io we are aware of the time that is spent on repetitive tasks when writing code and maintaining software in multiple environments. This includes, but aren’t limited to, scaffolding new projects, deploying infrastructure, updating feature flags, performing rollbacks, etc.
To overcome this challenge we built the Self-Service Hub which contains a list of relevant built-in actions and allows teams to create their own set of Self-Service actions focused on their needs. In the image below we simplify the steps needed to set up a new project by abstracting everything that happens in the background such as creating a new repo, scaffolding files and folders, creating a new service in the observability and incident management platform, etc.
The execution of Self-Service actions in Rely.io is audited and might require an approval before running which gives developers the autonomy they need within the boundaries and controls implemented by the organization.
Scorecards
A common trend we’ve seen in all our customer engagements is the extensive amount of hours that teams and their leaders spend in collecting data that reflects their current maturity state from a service or production readiness perspective.
They typically depend on data coming from several different platforms that are operated by different teams and since this is mostly for internal use they never invested time and effort into automating these tasks. Well, Rely.io scorecards are here to help.
Scorecards provide an automated and always up-to-date way of collecting insights from several data sources and make them available to everyone. Do you have a service review meeting in 1 week? 1 hour? 5 minutes? We got you covered.
Although this saves teams precious time it doesn’t help with adoption and so we decided to make scorecards fun and engaging by bringing gamification to play. We have been incredibly successful with our leaderboards as it creates some friendly competition between teams and their services. And no one likes to be last, right?
At Rely.io, we’re on a mission to strike the right balance between being opinionated and flexible. Ready to give it a try?
Explore our demo environment or sign up for a 15-day free trial today!
If you’d like to dive deeper into how Rely.io works and discover how it can enhance your developer experience while enforcing standards across your organization, feel free to book some time with our Platform Architects.