Skip to main content
Redhat Developers  Logo
  • Products

    Featured

    • Red Hat Enterprise Linux
      Red Hat Enterprise Linux Icon
    • Red Hat OpenShift AI
      Red Hat OpenShift AI
    • Red Hat Enterprise Linux AI
      Linux icon inside of a brain
    • Image mode for Red Hat Enterprise Linux
      RHEL image mode
    • Red Hat OpenShift
      Openshift icon
    • Red Hat Ansible Automation Platform
      Ansible icon
    • Red Hat Developer Hub
      Developer Hub
    • View All Red Hat Products
    • Linux

      • Red Hat Enterprise Linux
      • Image mode for Red Hat Enterprise Linux
      • Red Hat Universal Base Images (UBI)
    • Java runtimes & frameworks

      • JBoss Enterprise Application Platform
      • Red Hat build of OpenJDK
    • Kubernetes

      • Red Hat OpenShift
      • Microsoft Azure Red Hat OpenShift
      • Red Hat OpenShift Virtualization
      • Red Hat OpenShift Lightspeed
    • Integration & App Connectivity

      • Red Hat Build of Apache Camel
      • Red Hat Service Interconnect
      • Red Hat Connectivity Link
    • AI/ML

      • Red Hat OpenShift AI
      • Red Hat Enterprise Linux AI
    • Automation

      • Red Hat Ansible Automation Platform
      • Red Hat Ansible Lightspeed
    • Developer tools

      • Red Hat Trusted Software Supply Chain
      • Podman Desktop
      • Red Hat OpenShift Dev Spaces
    • Developer Sandbox

      Developer Sandbox
      Try Red Hat products and technologies without setup or configuration fees for 30 days with this shared Openshift and Kubernetes cluster.
    • Try at no cost
  • Technologies

    Featured

    • AI/ML
      AI/ML Icon
    • Linux
      Linux Icon
    • Kubernetes
      Cloud icon
    • Automation
      Automation Icon showing arrows moving in a circle around a gear
    • View All Technologies
    • Programming Languages & Frameworks

      • Java
      • Python
      • JavaScript
    • System Design & Architecture

      • Red Hat architecture and design patterns
      • Microservices
      • Event-Driven Architecture
      • Databases
    • Developer Productivity

      • Developer productivity
      • Developer Tools
      • GitOps
    • Secure Development & Architectures

      • Security
      • Secure coding
    • Platform Engineering

      • DevOps
      • DevSecOps
      • Ansible automation for applications and services
    • Automated Data Processing

      • AI/ML
      • Data Science
      • Apache Kafka on Kubernetes
      • View All Technologies
    • Start exploring in the Developer Sandbox for free

      sandbox graphic
      Try Red Hat's products and technologies without setup or configuration.
    • Try at no cost
  • Learn

    Featured

    • Kubernetes & Cloud Native
      Openshift icon
    • Linux
      Rhel icon
    • Automation
      Ansible cloud icon
    • Java
      Java icon
    • AI/ML
      AI/ML Icon
    • View All Learning Resources

    E-Books

    • GitOps Cookbook
    • Podman in Action
    • Kubernetes Operators
    • The Path to GitOps
    • View All E-books

    Cheat Sheets

    • Linux Commands
    • Bash Commands
    • Git
    • systemd Commands
    • View All Cheat Sheets

    Documentation

    • API Catalog
    • Product Documentation
    • Legacy Documentation
    • Red Hat Learning

      Learning image
      Boost your technical skills to expert-level with the help of interactive lessons offered by various Red Hat Learning programs.
    • Explore Red Hat Learning
  • Developer Sandbox

    Developer Sandbox

    • Access Red Hat’s products and technologies without setup or configuration, and start developing quicker than ever before with our new, no-cost sandbox environments.
    • Explore Developer Sandbox

    Featured Developer Sandbox activities

    • Get started with your Developer Sandbox
    • OpenShift virtualization and application modernization using the Developer Sandbox
    • Explore all Developer Sandbox activities

    Ready to start developing apps?

    • Try at no cost
  • Blog
  • Events
  • Videos

Why internal developer portals matter

The journey to dev efficiency

September 25, 2024
Maarten Vandeperre
Related topics:
APIsDeveloper ProductivityDeveloper Tools
Related products:
Red Hat Developer Hub

Share:

    Welcome to the first article in our series on building an internal developer portal with Red Hat Developer Hub (powered by Backstage). In this series, I’ll guide you through everything you need to know about internal developer portals, starting from scratch and moving towards advanced integrations and optimizations.

    This article sets the foundation by exploring what internal developer portals are, the value they bring, and why Red Hat Developer Hub (Backstage) is a game changer for your development teams. Let’s find out.

    Which problem(s) are we facing?

    Coming from a software development background, I’ve encountered the same challenges across multiple organizations (and I’m sure you have, too). It typically starts right when you join a new company. In my case, I was working within Java and Kotlin ecosystems, but this will resonate across other tech stacks as well.

    It usually goes something like this: “You can find the documentation for setting up your laptop here and here. Then, you’ll need to install tools X and Y, with documentation over there. For local access to databases X and Y, you’ll need to install these tools, which documentation you can find over here and here…” You get the idea. Before I even began coding, my bookmarks bar was already overflowing, just from setup documentation. And this is only the beginning: coding is still to come. Figure 1 illustrates this dilemma.

    Bookmark hell - way too many bookmarks of scattered (documentation) pages
    Bookmark hell
    Created by Maarten Vandeperre, License under Apache 2.0.
    Figure 1: Bookmark hell—way too many bookmarks of scattered (documentation) pages.

    And then comes the coding. Whether you're dealing with distributed monoliths, miniservices, or microservices, there are always numerous components that exist, each with its own set of coding guidelines and documentation, adding even more pages to the bookmarks bar. When it's time to create a new miniservice or microservice, a new set of questions arises: how do I get started? What should the package structure look like? Which naming conventions should I follow? What database technologies are recommended?

    Now, two problems emerge: first, everyone starting a new service tends to do it (slightly?) differently, leading to inconsistencies. Second, starting a project from scratch is time-consuming because you have to manually set up all the metadata, default code files, and package structures. That's when you often hear, “Just copy an existing project, strip it down, and go from there.” But this approach is flawed: you either strip out too much and run into issues, or leave behind unnecessary legacy code, which can cause problems later. And that’s not even mentioning the often cumbersome processes involved in getting things like a new database or schema set up for your service. In many organizations, self-service capabilities are still not available, requiring multiple teams to get involved, further slowing down development.

    And even once you’ve finally got your codebase in place, you still have to build and deploy it.

    Now, let’s talk about building and deploying. Legacy builds often rely on stack X, while newer applications use pipelines, which introduces yet another layer of complexity. Whether you're using GitLab, GitHub, Tekton, or other tools, it’s yet another set of bookmarks to manage. The same inconsistency arises here as with coding. Pipeline or build configurations will vary slightly because everyone has their own way of doing things, their own view on things, other experience, or are just lacking the global picture, much like the parable of individuals seeing different parts of an elephant from very close up and each coming to a different conclusion on what the animal is (Figure 2). Sometimes, you'll copy an existing one, but forget to change a few parameters, which leads to strange, hard-to-debug issues.

    Different views  / missing the overall picture- regarding of perspective, you can already look at things differently
    Different views / missing the overall picture
    Created by Maarten Vandeperre, License under Apache 2.0.
    Figure 2: Elephant parable about different views/missing the overall picture—regardless of perspective, you can already look at things differently.

    When build plans and pipelines are scattered across the environment (which is frequently the case), developers are forced to spend a lot of time clicking around to run a proper CI/CD flow, which results in low developer efficiency. This clicking often involves managing multiple build plans (i.e., one for continuous integration (CI), another for packaging, and multiple deployment plans for different environments), leading to more bookmarks and fragmented processes.

    I’ve also seen developers create their own custom overlays on top of existing build tools (out of frustration) to make them more manageable (i.e., I've been guilty of that as well). While this seems helpful at first, it introduces unmaintained, unstable tooling into the infrastructure. Over time, this homemade tooling becomes unreliable due to lack of maintenance, further decreasing efficiency and causing additional headaches for the team.

    In summary, developers are losing significant efficiency, largely due to three key factors: the overwhelming "bookmark hell," the lack of standardization in project creation, and the absence of self-service capabilities. Fortunately, these issues can be addressed with the help of an internal developer portal. Let's explore how an internal developer portal can solve these challenges and streamline the development process.

    What are internal developer portals?

    One of the most painful aspects of modern development environments is, as mentioned in the previous section, the reliance on dozens of bookmarks, links, and scattered documentation. Trying to remember which system holds the correct pipeline, where the service documentation lives, which code repositories you need in a microservice world, or how to access specific tools can lead to what we call “bookmark hell.”

    Internal developer portals (IDPs) eliminate this chaos by consolidating all of these resources in one place, allowing developers to focus on building rather than searching. With an IDP, the days of hunting down bookmarks are over.

    Internal developer portals serve as centralized, self-service platforms where developers can access the tools, services, and documentation they need to build, deploy, and manage software. Instead of hunting down resources across multiple systems or teams, developers can use an IDP as a one-stop shop to streamline their workflows and reduce time wasted on administrative tasks.

    In essence, an IDP provides an all-in-one interface that consolidates everything from service catalogs, CI/CD pipelines, documentation, and APIs into a cohesive, user-friendly hub for developers.

    In addition to fixing the bookmark hell, IDPs can deliver software templates, which provide significant value by standardizing development processes and ensuring consistency across teams. They offer pre-configured blueprints that help developers quickly set up new services or applications, saving time and reducing the potential for errors. By embedding best practices, security, and compliance guidelines into these templates, organizations can maintain governance while empowering developers to work autonomously without needing deep operational expertise. This approach not only boosts efficiency but also enhances scalability by enabling teams to reliably replicate and expand services with ease. Ultimately, software templates streamline workflows and improve productivity within an organization’s development environment.

    The value of developer portals

    Internal developer portals offer several key benefits that can supercharge your organization's productivity:

    • Self-service efficiency: Developers no longer need to rely on other teams to set up environments, retrieve documentation, or access specific tools. Everything they need is readily available in the portal.
    • Increased visibility: By offering a unified view of projects, pipelines, and services, teams can stay aligned, collaborate more effectively, and reduce bottlenecks.
    • Streamlined onboarding: New team members can quickly get up to speed, as the portal provides easy access to all the necessary resources without the need for extensive hand-holding.
    • Single pane of glass: Developers get provided with a unified interface to access and manage all underlying tools, services, and integrations within an organization. By consolidating various platforms into one portal, it simplifies navigation and improves efficiency, enabling teams to interact with everything from CI/CD pipelines to monitoring tools without needing to switch between different systems (Figure 3).
    Single pair of glasses - One single application where all the integrations are gathered
    Single pair of glasses
    Created by Maarten Vandeperre, License under Apache 2.0.
    Figure 3: Single pair of glasses—one single application where all the integrations are gathered.

    What is Backstage?

    Backstage is an open-source platform originally developed by Spotify that serves as a framework for building internal developer portals. It enables organizations to create a customized developer hub that suits their needs, allowing for easy integration of services, documentation, and tools.

    The beauty of Backstage is its flexibility: it can be tailored to your organization’s unique workflows, tools, and architecture, making it an excellent fit for teams of all sizes. By organizing information in a consistent and standardized way, Backstage fosters collaboration and makes navigating complex environments simpler for developers.

    Introducing Red Hat Developer Hub

    Red Hat Developer Hub builds on the power of Backstage, offering a fully supported version that includes Red Hat’s trusted ecosystem of tools and technologies. Red Hat Developer Hub makes it easier to deploy, manage, and scale your internal developer portal, providing everything you need to integrate Kubernetes, CI/CD, observability, and more.

    With built-in security, support, and enterprise-grade features, Red Hat Developer Hub is ideal for organizations looking to create a robust, scalable portal that can grow with their development teams.

    Built as a downstream distribution of Backstage, Developer Hub introduces dynamic plug-in management, allowing teams to add and enable new plug-ins without altering Backstage’s core React code. This innovation, which is 100% open source like all Red Hat projects, reduces the risk of bugs and provides a more seamless, enterprise-grade experience for managing plug-ins. Figure 4 shows the Developer Hub Pipeline Runs page.

    Developer Hub - single pair of glasses
    Developer Hub
    Created by Red Hat,
    Figure 4: Developer Hub—single pair of glasses.

    What’s next?

    In the upcoming articles in this series, we’ll dive deeper into specific features and integrations you can leverage with Red Hat Developer Hub. From integrating Kubernetes, Keycloak, GitOps, and Jenkins to connecting your API documentation, creating software templates, and streamlining CI/CD pipelines, we’ll cover it all. We will start from scratch and showcase how you can enable all these integrations.

    By the end of this journey, you’ll have a fully operational internal developer portal, optimized for your team’s productivity and collaboration.

    Stay tuned as we continue this series on building and optimizing your developer platform with Red Hat Developer Hub (Backstage)!

    Related Posts

    • A developer’s guide to Red Hat Developer Hub and Janus

    • Achieve more with less using Red Hat Developer Hub's self-service features

    • Red Hat Developer Hub: Your gateway to seamless development

    • Building virtual machines with Red Hat Developer Hub: The what, why, and how

    • Implementing clean architecture solutions: A practical example

    Recent Posts

    • Unleashing multimodal magic with RamaLama

    • Integrate Red Hat AI Inference Server & LangChain in agentic workflows

    • Streamline multi-cloud operations with Ansible and ServiceNow

    • Automate dynamic application security testing with RapiDAST

    • Assessing AI for OpenShift operations: Advanced configurations

    What’s up next?

    Learn how to onboard developers onto Red Hat Developer Hub so they can import and use relevant templates and run the application on the development environment.

    Start the activity
    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Products

    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform

    Build

    • Developer Sandbox
    • Developer Tools
    • Interactive Tutorials
    • API Catalog

    Quicklinks

    • Learning Resources
    • E-books
    • Cheat Sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site Status Dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility

    Report a website issue