Skip to content
SaaS2024-10

B2B SaaS: Self-Service Developer Platform Reduces Platform Team Load 80%

A 120-engineer B2B SaaS company had a 4-person platform team fielding 60+ Slack requests per week from product engineers for environment provisioning, secrets access, and deployment debugging. We built an internal developer platform (IDP) that eliminated 80% of those requests.

Deploy Time
New service setup: 2–3 platform team hours
New service setup: 8 minutes (self-service)
Deploy Frequency
Staging environment wait: 3 days
Staging environment: on-demand, 7 minutes
Incidents
60+ platform Slack requests/week
12 platform Slack requests/week
Cost Impact
-
Platform team redirected to 2 strategic projects

The Challenge

Every new service required the platform team to create a namespace, set up ArgoCD, configure secrets, and add monitoring. Every new environment required manual Terraform runs. Engineers asked the platform team for help with kubectl commands they did not understand. The platform team could not build strategic capabilities because they were permanently in reactive support mode.

The Approach

We introduced Backstage as the developer portal, Crossplane for self-service infrastructure provisioning, and a standardised Golden Path template library. The goal was not to automate everything - it was to make the 10 most common platform requests self-service so the platform team could focus on the 20% that actually required their expertise.

The Implementation

Backstage developer portal

We deployed Backstage with a service catalog of all 47 existing services, their owners, documentation links, and deployment status. Engineers could see the full state of their services - running pods, recent deployments, alert status - from a single UI without kubectl access.

BackstageKubernetesArgoCDPagerDuty

Golden Path service template

We built a Backstage Software Template that scaffolds a new service in 8 minutes: GitHub repo creation, base Helm chart, ArgoCD Application, Prometheus alerts, Grafana dashboard, and Secrets Manager secret. Previously this took 2–3 platform team hours.

BackstageGitHubArgoCDHelmTerraform

Crossplane self-service infrastructure

Using Crossplane XRDs, we exposed a Claim-based API for the five most-requested infrastructure types: RDS database, ElastiCache instance, S3 bucket with policy, SQS queue, and Kubernetes namespace. Engineers submit a YAML claim; Crossplane provisions the real AWS resource and injects credentials into Secrets Manager automatically.

CrossplaneAWSKubernetesSecrets Manager

Environment-on-demand pipeline

We automated ephemeral environment provisioning triggered by a Slack command: /env create <branch-name>. The pipeline spins up a full-stack environment in 7 minutes, runs until deleted or after 24h TTL. Reduced staging environment queue from 3-day wait to instant.

GitHub ActionsTerraformArgoCDSlack

Key Takeaways

  • A service catalog in Backstage reduces 'where is this service?' and 'is this deployed?' questions to zero immediately
  • Crossplane XRDs are the right abstraction for self-service infrastructure - engineers use familiar Kubernetes YAML without understanding Terraform
  • Ephemeral environments remove the biggest bottleneck to fast iteration - the staging queue becomes invisible
  • The Golden Path only works if it is genuinely easier than the alternative - if engineers work around it, the template needs improvement

Facing Similar Challenges?

Book a free 30-minute audit and I will tell you what I see.

Book Free Audit
All case studies