I saw link to backstage some time ago, but I could not figure out what it's supposed to provide. Can someone explain what it does / what do you use it for?
By default it offers you a few tools to better understand and manage your software landscape:
- you have all your micro services catalogues in one place, with a fairly decent data model (services are grouped into systems, they are owned by teams, they have declared dependencies on each other)
- you have documentation for each service that you can easily find
- you have a template catalogue that allows you to easily create new services. You need a full-stack app? Here, recommend option is Java + React, use this template. You need a new ML system? Here’s what you should use, click “create” and we’ll bootstrap it for you
- plus a few more, like customizable home page
If you are looking for a way to start cataloguing and standardizing services across your org, the developer portal (whether Backstage or other solution) is a good thing to have
In a past job of a fairly decent sized org (around 80 engineers, maybe 10 different active projects, a few dozen microservices, component library, template generators, and some custom CLTs) it was very useful as a way of documentation for your engineers.
I'm sure you used stuff like confluence but it was always a terrible way to search across code bases and projects to understand how they worked.
Backstage was interactive documentation. I can see what projects we have, I can click on one, see who is maintaining it, what their communication is, what their various perf/benchmark scores were. It was nice.
Apparently it's even grown beyond documentation needs from what I can tell and it provides platform tooling now.
With plugins focused around projects/deployments/metrics.
Which sounds actually interesting.