We help a large automotive company build an internal developer portal (IDP) to provide a centralized software catalog and bring order to their microservices and infrastructure.
Due to a historically grown construct of a diverse way to set up development environments across the group, one of the core pain points was that environments had to be set up by hand in all dev teams – many teams had the same challenges setting up, configuring, maintaining and servicing Kubernetes clusters. The new approach of a central solution to set up development systems on no-code or low-code level is the solution to the problem, saving time and resources and reducing the set-up of development environments from weeks, sometimes months, to minutes to a few hours.
We used the popular open source Backstage project on Kubernetes for IDPs and customized it by adding frontend and backend functionality, implementing a secrets management strategy, integrating code repositories, and setting up deployment pipelines for managed Kubernetes clusters.
We placed great emphasis on best practices for authentication, security, upgrades, and maintenance, in addition to establishing a contribution model for plugins and API integrations. This allows the automotive company’s development teams to extend the benefits of Backstage within their organization.
For everyone, the platform provides a unified experience that brings together all infrastructure tools, resources, standards, owners, contributors and administrators in one place.
The platform’s system includes several services that work together to facilitate the creation of software components and the declarative deployment of infrastructure.
Backstage serves as the main interface and allows users to create software components from templates via a web browser. It consists of a React-based frontend and an Express.js-based backend API. Backstage’s modular architecture allows for easy expansion through community-contributed or internally developed plugins.
ArgoCD is used in the platform for GitOps-based deployment workflows in Kubernetes. It synchronizes YAML manifests from a Git repository with a Kubernetes cluster, maintaining consistency between the desired and actual state of the cluster.
Crossplane, a Kubernetes Control Plane, extends the Kubernetes API to manage external infrastructure resources in providers such as Azure, AWS and Google Cloud. It uses the Kubernetes reconciliation loop to continuously update the state of provisioned resources based on the defined manifests.
We have developed a centralized development platform as an MVP that enables the creation of development environments at the no-code or low-code level. By implementing and customizing the Backstage open source project, integrating code repositories, and setting up deployment pipelines, we have significantly reduced the time and resources required to set up environments. Now development teams can create productive development environments in a matter of hours or even minutes, instead of weeks or months.