Platform Tips #28: What Are The Core Features of an Internal Developer Portal
Discover the core features of an Internal Developer Portal - what each of them can bring and what's the implementation and maintenance effort for platform teams
Hey Folks 👋,
I'm Romaric, CEO of Qovery, and this is my 27th Platform Tips post.
Today, I want to list and explain the most important pieces from an Internal Developer Portal (like Backstage). So buckle up and keep reading to learn more about the most important features.
1. Software Catalog
What it is:
A Software Catalog is a central repository of all the software components, services, libraries, and tools used in an organization. It makes it easy to discover and manage these assets.
Value for the Developer:
Simplifies finding existing services and components.
Enhances code reuse, saving time and effort.
Provides transparency into the software ecosystem.
Setup (Day 1) Effort:
Setting up a software catalog involves integrating with various source control systems, such as GitHub and GitLab, and configuring data ingestion pipelines to populate the catalog. This initial setup can take a few weeks.
Maintenance (Day 2) Effort:
Maintaining the catalog involves keeping it updated with the latest components and services. While some of this can be automated, periodic reviews and updates require moderate effort.
2. Documentation
What it is:
Documentation Aggregation pulls together documentation from various sources into a single, easy-to-access location. This includes API docs, user guides, and architectural diagrams.
Value for the Developer:
Provides a one-stop shop for all documentation needs.
Makes onboarding new developers easier.
Saves time spent searching for documentation across multiple platforms.
Setup (Day 1) Effort:
Implementing documentation aggregation involves integrating with existing documentation repositories and setting up a unified interface. Depending on the complexity and the number of sources, this can take a few weeks.
Maintenance (Day 2) Effort:
Maintaining aggregated documentation means regular updates and synchronization with the original sources. Automation can help, but significant changes require some manual work and moderate effort.
3. Application Scaffolding and Templates
What it is:
Application Scaffolding and Templates provide predefined project structures and boilerplate code for new applications, ensuring consistency and adherence to organizational standards.
Value for the Developer:
Speeds up the development of new applications.
Ensures best practices and standards are followed.
Reduces errors and inconsistencies in new projects.
Setup (Day 1) Effort:
Setting up scaffolding and templates involves creating and integrating the initial templates into the portal. This can be a substantial task, potentially taking several weeks.
Maintenance (Day 2) Effort:
Templates need regular updates to reflect changes in best practices and standards. This requires ongoing effort, though automation can reduce the manual workload.
4. Platform Integration
What it is:
Platform Integration connects the portal with various development tools and services (like CI/CD pipelines, monitoring tools, and cloud providers), providing seamless workflows and data exchange.
Value for the Developer:
Streamlines development workflows by integrating necessary tools.
Reduces context switching, improving productivity.
Facilitates better monitoring and management of applications.
Setup (Day 1) Effort:
Integrating platforms involves configuring connections to various tools and services. This can be complex and time-intensive, often taking several weeks.
Maintenance (Day 2) Effort:
Maintaining integrations means ensuring compatibility with updates and changes in the connected tools. This requires continuous monitoring and occasional updates, representing moderate effort.
5. Search
What it is:
A powerful search feature within the IDP allows users to quickly find components, documentation, services, and other resources across the platform.
Value for the Developer:
Enhances productivity by reducing the time spent searching for information.
Provides quick access to relevant resources and documentation.
Improves overall user experience within the IDP.
Setup (Day 1) Effort:
Implementing search functionality involves configuring a robust search engine, indexing all relevant data, and integrating it into the IDP. This can take a few weeks.
Maintenance (Day 2) Effort:
Maintaining search involves keeping indexes up-to-date and ensuring performance optimization. This requires ongoing attention, though it can be largely automated.
Conclusion
Core features like a Software Catalog, Documentation Aggregation, Application Scaffolding and Templates, Platform Integration, and Search provide immense value by simplifying discovery, enhancing consistency, and improving overall developer efficiency.
However, while getting started with an Internal Developer Portal might seem straightforward, the setup and maintenance efforts should not be underestimated. Setting up these features requires significant initial effort, and maintaining them demands continuous attention and resources. This is an ongoing responsibility for platform engineers, ensuring the portal remains up-to-date, integrated, and aligned with evolving organizational needs.
Investing in a well-implemented Internal Developer Portal is worth it. Still, it's essential to recognize that it's not a one-time task—it's a continuous commitment that pays dividends in the long run. Proper planning, leveraging the right tools, and dedicated maintenance are key to reaping the full benefits of an Internal Developer Portal.
—
Let's revolutionize Platform Engineering by putting developers first. Subscribe now to join me on this exciting journey!