An internal developer platform (IDP) is a self-service layer over your AWS setup: a developer pushes code, gets an environment and ships to production without filing a ticket. Most teams do not need one until about 15 to 30 engineers. This page covers the building blocks, Backstage vs commercial portals, a reference AWS architecture, the signals that say it is time, and a rollout plan.
An IDP is not one tool you install. It is the curated, self-service interface between your developers and your cloud: the paved roads that turn "how do I deploy this?" from a Slack question into a button.
Developers do the common things themselves (create a service, provision a database, get a preview environment, ship, see logs) through one consistent interface, without needing to understand the Terraform, IAM, VPC or CI/CD underneath. The platform team builds and owns the road; product engineers drive on it.
Example: a developer opens the portal, picks a template ("Go API on ECS Fargate"), names it and clicks create. The platform scaffolds a repo, wires the pipeline, provisions staging through infrastructure as code, registers the service in the catalog, and applies the right IAM, networking and dashboards.
An IDP is not "we bought a Kubernetes cluster", a wiki page of deploy steps, or your CI tool alone. It does not replace the platform team; it is the product that team ships.
If a new backend engineer can go from "I have code" to "it runs in production behind a load balancer, with logs and metrics" in their first week without a senior engineer doing it for them, you have an internal developer platform.
An IDP is an assembly. You do not need every piece on day one, but a credible platform converges on this shape.
Platform engineering is what happens when "you build it, you run it" meets a company where every team would otherwise have to be an infrastructure expert.
DevOps put developers in charge of running what they build. That works at small scale. With dozens of engineers and many services, every team reinvents the same VPC, pipelines and monitoring, inconsistently.
Platform engineering puts that knowledge in a platform team that treats developers as customers and ships them a product (the IDP). Product teams still own their services in production, on a paved platform instead of bare AWS. CI/CD, infrastructure as code and observability are still the substance; what changes is who owns them and how they are delivered.
A good platform team runs the platform like a product: users, a roadmap, feedback and adoption metrics, not ticket approvals. If the paved road is the fastest way to ship, adoption is voluntary.
Building an IDP too early is a classic over-engineering trap. Ask whether you feel the pain an IDP solves.
Rough bands: below about 10 engineers, a clean infrastructure-as-code repo, CI/CD and a short runbook are plenty. Between about 15 and 30 engineers with several services, a focused IDP usually pays for itself. Above that, the lack of one taxes every team. Symptoms matter more than headcount:
IDP returns come from spreading platform work across many developers and services. With few of either, you pay the build cost and capture little benefit. Do solid basic DevOps first and revisit the IDP when the signals above appear.
Once you need an IDP, the next choice is whether to build the portal on Backstage or buy a commercial platform.
Backstage, open-sourced by Spotify and now a CNCF project, gives you a service catalog, software templates, TechDocs and a large plugin ecosystem, with full control and no per-seat cost. It is also a real engineering project: a Node and React application you host, extend with plugins, integrate with AWS and keep upgraded.
Commercial platforms such as Port, Cortex, Humanitec and OpsLevel give you a hosted portal, catalog, scorecards and self-service actions, configured rather than coded. You pay per seat or per platform and work inside their model.
The choice is mostly about where you spend senior platform-engineering time. Most early and mid-stage startups are better served buying or partnering for the first version and revisiting "build" once platform engineering is a staffed function.
A portal at the top, golden-path templates that fan out into infrastructure code and CI/CD, a multi-account AWS foundation underneath, and observability through all of it.
The foundation is an AWS landing zone: Control Tower with Organizations, separate production, staging and sandbox accounts, IAM Identity Center for access, and Service Control Policies as outer guardrails. Most platforms standardize on one runtime so the golden path is singular: ECS on Fargate as the lower-effort default, or EKS (often with Argo CD) when you want the Kubernetes ecosystem.
A template generates the repo, a pipeline wired to build and deploy, and calls to versioned infrastructure modules (ECS service or EKS workload, load balancer target group, database, IAM roles, secrets). The same modules back every service, so consistency is structural.
| Layer | What it does | Common AWS or tooling choice |
|---|---|---|
| Developer portal | Self-service front door and catalog | Backstage, Port, Cortex |
| Golden-path templates | Scaffold repo, pipeline and infrastructure in one action | Backstage scaffolder, commercial self-service actions |
| Infrastructure modules | Reusable, reviewed building blocks | Terraform, OpenTofu, AWS CDK |
| CI/CD | Build, test and deploy on the paved path | GitHub Actions, GitLab CI, CodePipeline, Argo CD |
| Runtime | Where services run | ECS on Fargate, Amazon EKS, App Runner |
| Foundation and access | Multi-account isolation and guardrails | Control Tower, Organizations, IAM Identity Center, SCPs |
| Observability | Logs, metrics, traces by default | CloudWatch, Managed Prometheus and Grafana, X-Ray, OpenTelemetry, Datadog |
| Secrets and config | Consistent injection | Secrets Manager, Parameter Store |
Many IDP projects try to do everything at once and ship nothing developers want. Treat it like a product launch: one great golden path, adopted by a real team, before a second one exists.
Measure adoption and developer lead time, not how much you built. If you have to mandate the golden path, something on it is still slower than going around it.
You need an IDP because your senior engineers are overloaded, but building one takes senior engineers. CloudRoute matches you with one vetted AWS partner that has built internal developer platforms before and brings templates, modules and a reference architecture.
You pay the partner for the platform build at its rates. If part of the work is a migration to AWS, a proof of concept, or a new workload on AWS (for example the platform for a new product), your matched partner can file MAP, POC or incremental workload (IW) funding when it qualifies and AWS approves.
For startups, partner-filed funding is typically $50K to $150K. Depends on the workload; AWS approves. AWS Activate credits are separate: you apply for them yourself, and they pay AWS usage, not partner fees. CloudRoute is free for startups. Partners pay CloudRoute a monthly membership plus 10% of AWS-approved funding.
Building on Backstage spends senior platform time to maximize control; buying spends money to save that time.
| Factor | Build on Backstage (open source) | Buy a commercial IDP |
|---|---|---|
| Time to first golden path | Longer (you build the portal too) | Shorter (configure, not code) |
| Up-front cost | Engineering time, no license | Per-seat or platform subscription |
| Ongoing cost | You operate and upgrade it | Subscription and lighter operations |
| Control | Total; it is your codebase | High but bounded by their model |
| Integrations | Large, open, you wire them | Curated and supported |
| Best fit | Teams with a staffed platform function | Teams without spare platform engineers |
| Lock-in risk | Low | Moderate |
You fill in a short form: what you run today, what you want to move, test or build, your stage and your region.
We read your answers and pick one vetted AWS consulting partner that fits the work, the stack and the region. We reply within 24 hours; your matched partner reaches out within 5 business days.
Your matched partner scopes the work with you. Then it checks which partner-filed funding fits: MAP if you are moving to AWS, POC if you want to test something, or incremental workload (IW) funding if you are already on AWS and launching new work.
If the work qualifies, the partner files the funding request with AWS. AWS reviews it and decides. The amount depends on the workload.
CloudRoute is free for startups. Partners pay CloudRoute a monthly membership plus 10% of AWS-approved funding.
AWS Activate credits are separate, and you apply for them yourself. Use Activate Founders if no investor backs you. Use Activate Portfolio with the Org ID or invite from your VC, accelerator, incubator or angel group if it is an Activate Provider. A consulting partner cannot apply for Activate on your behalf.
CloudRoute matches you with one vetted AWS partner who ships your golden paths on Backstage or a commercial portal. CloudRoute is free for startups.