5 Interne Developer Portale (…und was Software Engineers über sie sagen)

  • Veröffentlicht

Interne Entwicklungsportale stehen oft im Mittelpunkt von Platform Engineering. Hier sind fünf Portal-Tools, die du kennen solltest.

Plattform vs. Portal

Zuerst eine kurze Einordnung: Eine Internal Developer Platform (IDP) ist eine Sammlung von Infrastruktur- und Automatisierungstools, die es Entwickler:innen ermöglichen, Software-Services zu deployen, zu überwachen und zu verwalten.

Im Gegensatz dazu dient ein Internes Entwicklungsportal (Internal Developer Portal) als Interface, über das auf diese Funktionen zugegriffen werden kann. Es ermöglicht Entwickler:innen, Teams und Engineering Manager:innen, Services aufzurufen, Verantwortlichkeiten nachzuverfolgen, Standards durchzusetzen und die Softwarequalität zu verbessern.

Obwohl die Abkürzung „IDP“ manchmal sowohl für Plattform als auch für das Portal verwendet wird, nutzen wir sie ausschließlich im Sinne von Internal Developer Platforms.

Über die Zusammenstellung der Tools in diesem Beitrag

Um ein besseres Verständnis über die Tool-Landschaft zu gewinnen und welche Portale in der Praxis eingesetzt und empfohlen werden, haben wir an einem Ort recherchiert, an dem Softwareentwickler:innen oft sehr offen über ihre Erfahrungen sprechen: Reddit.

Wenig überraschend dominierte Spotifys Backstage die meisten Diskussionen – ein Zeichen für die starke Verbreitung und Sichtbarkeit innerhalb der Platform-Engineering-Community.

Port taucht in den Kommentaren häufig als gängige Alternative zu Backstage auf. Auch Cortex wird regelmäßig erwähnt, vermutlich aufgrund der aktiven Teilnahme eines Mitarbeiters an Diskussionen.

Andere Portale wie OpsLevel und Atlassian Compass werden gelegentlich genannt oder verlinkt, erhalten aber deutlich weniger Aufmerksamkeit oder Kommentare.

Auch wenn es sich hierbei nicht um eine formale wissenschaftliche Studie mit strukturierter Methodik handelt, glauben wir, dass die Ergebnisse wiederkehrende Meinungen und Themen zu diesen Tools widerspiegeln (…und auch zeigt, wer Marketing auf Reddit betreibt 😉).

Die Tools

#1 Backstage

Backstage ist ein Open-Source-Framework zum Erstellen von Developer Portals.

Die entscheidenden Begriffe hier sind „Open Source“ und „Framework“. Backstage gibt Platform Engineers die Möglichkeit zur vollständigen Anpassung von Backstage. Das bedeutet aber auch, dass viele Komponenten selbst entwickelt und gewartet werden müssen.

Es handelt sich nicht um eine Plug-and-Play-Lösung; vielmehr erfordert es kontinuierlichen Aufwand und die Bereitstellung von entsprechenden Ressourcen.

Für Organisationen mit den entsprechenden Kapazitäten bietet Backstage aber eine leistungsstarke und äußerst flexible Lösung für Developer Portals.

Vorteile
„Der (sic!) wird jetzt in zwei Unternehmen eingesetzt. Es hat eine anfängliche Lernkurve, das sollte man nicht verheimlichen. Du wirst einen dedizierten DevOpsler benötigen, um Backstage zu pflegen (mindestens Teilzeit). Aber wenn du auf Microservices/Microfrontends/Packages umsteigst, bei denen jedes einzelne von IaC im jeweiligen Repository selbst deployed wird… dann ist der Scaffolder allein schon ein riesiger Gewinn für das Team. Wenn es verwendet wird, um viele Dinge zu erstellen, wird das Katalog-Feature selbst zu einem Killer-Feature, das visuell Abhängigkeiten zeigt (insbesondere: Wer nutzt dieses Ding, das ich gerade refactore?). Bonus: Das gibt DevOps-Personen einen zentralen Punkt, um viele andere Tools auf eine bequeme Weise für Entwickler:innen zu visualisieren. Refactoriere diese Bash-Skripte/CLI-Tools, sodass sie ein schönes React-Frontend haben und andere Dinge „anklicken“ können.“ (Reddit-Kommentar)

Nachteile
„Ja, es ist eine Menge an Einrichtung nötig und ich würde es nicht für ein Team empfehlen, das wenig Zeit hat, es richtig zu machen.“ (Reddit-Kommentar)

„Denk aus der Perspektive eines Entwicklers und behandle es wie das Frontend einer Plattform. Du benötigst immer noch hohe Automatisierungslevel dahinter. Ich will nicht zu Ansible, Datadog, SNOW, GitHub, K8s usw. gehen. Ich will einfach einen S3-Bucket. Ich will wissen, wo meine Sachen sind und einen einzigen Punkt haben.“ (Reddit-Kommentar)

„Weil du nicht die Arbeit investiert hast, um es für dich zum Laufen zu bringen. Bei Backstage geht es nicht darum, einfach ein paar Boilerplate-Plugins zu installieren und Nutzen zu erhalten. Der wahre Nutzen liegt im benutzerdefinierten Code, den du schreibst, um dein Unternehmen zu unterstützen. […] Es braucht ein Team von Menschen, um das zu realisieren.“ (Reddit-Kommentar)

Links
Website: https://backstage.io/
Demo: https://demo.backstage.io/
Dokumentation: https://backstage.io/docs/overview/what-is-backstage

#2 Port

Die Value Proposition von Port: „Alles dreht sich um die Entwickler-Erfahrung.“
Port bietet ein No-Code-Setup, das es einfach macht, schnell loszulegen. Es hat auch Automatisierungsfunktionen, die es ermöglichen, auf Events zu reagieren oder Aktionen basierend auf Benutzereingaben auszulösen. Port bietet ein kostenloses Preispaket an.

Vorteile
„Ich habe nach einem Developer Portal für 750 Entwickler:innen gesucht, um uns zu helfen, die Entwickl-Ererfahrung im Chaos der Tools und der überwältigenden Anzahl von Komponenten zu verbessern. Ich habe mit der Implementierung von Backstage begonnen und schnell verstanden, dass dieses Projekt ein ganz neues Team erfordern würde, um es anzupassen und für uns zum Laufen zu bringen. Einfache Themen wie:

  • SAML/OpenID-Authentifizierung
  • Autorisierung
  • Jenkins-Plugin – wir haben mehr als einen Job für eine Komponente
  • Visualisierungen – muss in React geschrieben werden
  • Self-Service – du hast ein Katalog zur Auswahl, aber was ist mit bestehenden Objekten?

Also haben wir uns mehrere andere Alternativen angesehen und sind auf Port gestoßen. Der entscheidende Vorteil war die Möglichkeit, das benutzerdefinierte Schema von Entitäten zu definieren, die deine Organisation beschreiben. Die Self-Services sind sehr einfach zu konfigurieren – du kannst ein Webhook erhalten, dich bei Kafka registrieren oder ihren lokalen Agenten mit einigen gängigen Aktionen verwenden. Ich habe ein POC in wenigen Tagen erstellt und wir waren super begeistert. Natürlich gibt es auch Features wie Scorecards, Visualisierungen usw.“ (Reddit-Kommentar)

Nachteile
„Meine Teams haben mit IDPs wie Port.io experimentiert. Port.io stellte sich als wahnsinnig teuer heraus […].“ (Reddit-Kommentar)

Links
Website: https://www.port.io/
Demo: https://demo.port.io/organization/home
Dokumentation: https://docs.port.io/

#3 Cortex

Der Head of DevRel von Cortex ist auf Reddit ziemlich aktiv und schrieb: „[…] Wenn du ein Portal für 50+ Entwickler baust, solltest du dir eine Enterprise-Lösung ansehen, die skalierbar ist, wie Cortex.io (für die ich die Developer Relations leite)“, und das passt zu ihrem Wertversprechen, das lautet: „Cortex ist ein Enterprise Internal Developer Portal, das den Weg zur Engineering-Exzellenz beschleunigen soll.

Es bietet einen umfassenden Service-Katalog, Scorecards und integriert sich mit einer Vielzahl von Tools. Leider stellen sie ihre Preise nur auf Anfrage zur Verfügung.

Vorteile
„Ein großartiges, skalierbares, flexibles Tool und einfach zu integrieren.“ (G2-Bewertung)

Nachteile
„Wir mochten es, aber es ist teuer, wenn deine Organisation nicht bereit ist, viel Geld in Scorecards zu investieren. Wir haben Cortex für OpsLevel verlassen, für die Hälfte des Preises.“ (Reddit-Kommentar)

Links
Website: https://www.cortex.io/
Dokumentation: https://redesign-docs.cortex.io/

#4 OpsLevel

OpsLevel beschreibt sich selbst wie folgt: „Das Portal für AI-unterstützte Softwareentwicklung.

Der Fokus liegt eindeutig auf dem Schlüssel-Feature AI. Aber was bedeutet das eigentlich? Mit dieser Funktion kann OpsLevel automatisch umfassende Beschreibungen für deine Komponenten generieren.

Darüber hinaus bietet OpsLevel robuste Self-Service-Funktionen für Entwickler:innen, Scorecards und integriert sich mit einer Vielzahl von Tools. Sie haben auch eine beeindruckende Kundenbasis, darunter Unternehmen wie Duolingo und Hudl.

OpsLevel wurde auf Reddit erwähnt, aber Reddit-Nutzer sind in der Kommentarsektion nicht auf die Vor- und Nachteile eingegangen.
Deshalb heben wir hier Einblicke aus dem AWS Marketplace hervor, wo Nutzer:innen ihr Feedback geteilt haben.

Vorteile
 „Erweiterbarkeit und viele APIs, um viele Informationsquellen und -typen abzudecken, damit so viele Datenpunkte wie möglich für die Services hinzugefügt werden können. Wir haben es zunächst für den Service-Besitz verwendet und dann Service-Tiers und Checks hinzugefügt, um auch die Service-Qualität zu fokussieren. Das OpsLevel-Team nimmt Feedback zur Kenntnis und verbessert das Produkt.“ (AWS Marketplace Kommentar)

Nachteile
„Einige Funktionen werden noch entwickelt und bieten noch nicht den vollen Support, den wir an diesem Punkt erwarten würden – z.B. Versionierungsunterstützung für Dokumentationen oder andere Dokumentationstypen (derzeit wird nur REST unterstützt).“ (AWS Marketplace Kommentar)

Links
Website: https://www.opslevel.com/
Dokumentation: https://docs.opslevel.com/docs/introducing-opslevel

#5 Atlassian Compass

Atlassian Compass ist Teil der Atlassian-Tools. Es integriert sich nahtlos mit Atlassian-Tools wie Jira, Bitbucket und Confluence. Im Vergleich zu anderen IDPs könnte Compass in Bezug auf fortgeschrittene Automatisierungsfunktionen weniger Funktionen anbieten. Compass eignet sich besonders gut für Teams, die bereits Atlassian verwenden.

Vorteile
„Ich stelle den Betrieb unserer interne Backstage.io-Instanz ein und migriere zu Compass. Der Preis ist im Vergleich zum Aufwand für maßgeschneiderte Wartung ein echtes Schnäppchen.“ (Reddit-Kommentar)

Nachteile
„Es ist wirklich nervig, dass es keine On-Prem-Option dafür gibt.“ (Reddit-Kommentar)

Links
Website: https://www.atlassian.com/software/compass
Dokumentation: https://support.atlassian.com/compass/docs/getting-started-with-compass/

Warum dein Portal ein Backend braucht

Portale sind oft nur die Oberfläche – nicht der Motor. Sie bieten Schnittstellen, UX und manchmal grundlegende Automatisierungsfunktionen, um Teams zu helfen, schneller voranzukommen.

Aber um all diese Teile zu koordinieren, brauchst du ein „Gehirn“, das mehrere Tools miteinander verbindet.

Und hier kommt unser Produkt ins Spiel: ein dedizierter Plaform-Orchestrator, der dazu entwickelt wurde, die Komplexität unter der Oberfläche zu orchestrieren. Denn die Integration von Services mit einem Portal ist oft ein sehr manueller Prozess, der viele benutzerdefinierte Skripte oder handgefertigte Plugins (oder ähnliche Dinge) umfasst. Ein Backend (oder Plattform-Orchestrator) wird dein Leben deutlich erleichtern, indem es eine Abstraktions- und Funktionsschicht bereitstellt, die es Plattform-Engineers ermöglicht, Services miteinander zu verbinden, sie an einem zentralen Ort zu orchestrieren und auf standardisierte und nachhaltige Weise in dein Portal zu integrieren.

Mehr über Platform Orchestration Tools erfahren.

Quellen

  • https://www.reddit.com/r/devops/comments/1ae7l8r/actual_succesfull_experiences_with_internal/
  • https://www.reddit.com/r/devops/comments/193ro7n/what_is_your_experience_like_working_with/
  • https://www.reddit.com/r/devops/comments/18h7jt9/idp_internal_developer_platform_recommendations/
  • https://www.reddit.com/r/devops/comments/1dyb1f1/which_internal_developer_portal_should_we_use/
  • https://www.reddit.com/r/devops/comments/1ae7l8r/actual_succesfull_experiences_with_internal/
  • https://www.reddit.com/r/devops/comments/193ro7n/what_is_your_experience_like_working_with/
  • https://www.reddit.com/r/devops/comments/17u6tmv/purpose_of_internal_developer_portal/
  • https://www.reddit.com/r/devops/comments/17bhr7s/atlassian_have_jumped_on_the_internal_developer/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button
  • https://www.reddit.com/r/Terraform/comments/1fo62oi/how_do_you_approach_selfservice_in_an_idp_style/
  • https://www.reddit.com/r/devops/comments/10guddj/backstageio_common_issues_and_pitfalls/
  • https://www.reddit.com/r/devops/comments/1g8yw66/backstage_idp_why/
  • https://aws.amazon.com/marketplace/reviews/reviews-list/prodview-bhqx7c2xajs5w
  • https://www.g2.com/products/cortex-io-cortex/reviews/cortex-review-8715969