Tooling

Internal Developer Platforms (IDPs)

Backstage, Port, Cortex — making your platform self-service.

When your platform / SRE team is the bottleneck for every "I need a new service / DB / queue / S3 bucket / dashboard" request, an IDP is the answer. Devs self-serve through a portal, the platform team controls what's possible.

The candidates

  • Backstage (Spotify / CNCF) — open-source IDP framework; software catalog, scaffolder, plugins. The default; large community.
  • Port — modern IDP-as-a-product; SaaS; clean UI; great DX. Generous free tier.
  • Cortex — competitor to Port; service catalog focused.
  • Roadie — Backstage-as-a-service; managed Backstage hosting.
  • Humanitec — IDP focused on dynamic config + workload templates.
  • OpsLevel — service catalog + scorecards.
  • Configure8 / atomicwork / OpsLevel — competitive IDP/service-catalog plays.

What an IDP typically includes

  • Service catalog — what services exist, who owns them, what they depend on.
  • Software templates / scaffoldersCreate a new service button → repo + IaC + pipelines pre-baked.
  • Self-service infra — request a DB / queue / namespace; provisioned via IaC.
  • Scorecards — track service health (test coverage, SLO compliance, deprecated dep, etc.).
  • Single pane of glass — links to dashboards / runbooks / docs / oncall.
  • Tech radar — what's recommended / experimental / deprecated.

The "platform engineering" stack underneath

Most IDPs sit on top of:

  • Crossplane — provision cloud infra from k8s CRDs; pairs naturally with IDPs.
  • GitOps (Argo CD / Flux) — for actual deployments.
  • Terraform / OpenTofu / Pulumi — IaC primitives.
  • Backstage scaffolder + GitHub PR — the canonical "scaffold → PR → merge → deployed" loop.
  • OpenTofu modules / Helm charts as the building blocks the IDP exposes.

When you need an IDP

  • Multiple teams shipping services and the platform team is overloaded with "create a thing for me" tickets.
  • New-team onboarding takes days because of tribal-knowledge ops.
  • You can't list every service running in production.
  • Scorecards / golden-paths matter for compliance.

When you don't

  • Solo founder / small team — the overhead is enormous; you don't have the scale.
  • Few enough services that a wiki page works.
  • Your dev team is happy enough writing PRs against a deploy repo.

Backstage specifically

  • Plugin ecosystem is large; integrations for most things you use.
  • Operating it is real work — keeping plugins up to date, customizing, hosting.
  • Roadie / Spotify Portal — managed Backstage if you don't want the ops.

Patterns to adopt

  • Software catalog first. Even before scaffolders. Knowing what exists is half the value.
  • Scorecards drive behavior. Make "service has runbook" / "has SLO" / "has owner" measurable.
  • Golden paths > rigid policy. Make the right thing easy; allow deviation with documentation.
  • Plug into existing systems. Don't replace your incident tool; link to it from the portal.
  • Version templates in git. Templates evolve; track who used what version.

Pick this if…

  • Default OSS IDP: Backstage.
  • Hosted, want minimal ops: Roadie.
  • SaaS-first with great DX: Port.
  • Service catalog + scorecards focus: Cortex or OpsLevel.
  • You're not sure you need an IDP: you probably don't yet. Wait until the platform team is the bottleneck.

On this page