Backstage: portal de desenvolvedores interno que grandes empresas usam
1. O que é o Backstage e por que ele surgiu?
O Backstage nasceu dentro do Spotify em 2016 como resposta a um problema comum em empresas de tecnologia que escalam rapidamente: a fragmentação de ferramentas, documentação e processos. Com centenas de microsserviços, times distribuídos e dezenas de ferramentas diferentes (CI/CD, monitoramento, deploy, segurança), os desenvolvedores perdiam horas navegando entre sistemas para encontrar informações básicas — como descobrir quem era o dono de um serviço, onde estava sua documentação ou como criar um novo componente seguindo os padrões da empresa.
Em 2020, o Spotify doou o projeto para a Cloud Native Computing Foundation (CNCF), onde hoje é um dos projetos mais ativos do ecossistema cloud native. O Backstage é um Internal Developer Portal (IDP) — uma plataforma que unifica catálogo de serviços, documentação, templates e integrações em uma única interface. Diferente de portais tradicionais (como wikis ou dashboards avulsos), o Backstage oferece uma experiência padronizada e extensível.
A arquitetura é baseada em três pilares principais: um catálogo de software que centraliza metadados de todos os componentes da empresa, um sistema de templates para automatizar a criação de novos projetos, e uma camada de plugins que conecta ferramentas externas.
2. Componentes centrais da plataforma
Software Catalog
O coração do Backstage é o catálogo de software, que modela entidades como componentes, APIs, recursos, sistemas e domínios. Cada entidade é descrita por um arquivo YAML chamado catalog-info.yaml, que fica versionado junto com o repositório do projeto. Exemplo básico:
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: payment-service
description: Serviço de processamento de pagamentos
annotations:
github.com/project-slug: minha-empresa/payment-service
backstage.io/techdocs-ref: dir:.
spec:
type: service
lifecycle: production
owner: team-financeiro
Software Templates
Templates permitem criar novos projetos padronizados com poucos cliques. Um template define parâmetros (nome, linguagem, time responsável) e ações (criar repositório no GitHub, configurar CI/CD, adicionar ao catálogo). Exemplo de template YAML:
apiVersion: scaffolder.backstage.io/v1beta3
kind: Template
metadata:
name: nodejs-service-template
title: Microsserviço Node.js
description: Cria um novo microsserviço com Node.js e TypeScript
spec:
owner: platform-team
type: service
parameters:
- title: Informações do serviço
properties:
serviceName:
title: Nome do serviço
type: string
owner:
title: Time responsável
type: string
enum: [team-payments, team-orders, team-users]
steps:
- id: fetch-base
name: Buscar template base
action: fetch:template
input:
url: ./skeletons/nodejs-service
values:
serviceName: ${{ parameters.serviceName }}
TechDocs
Documentação técnica é gerada automaticamente a partir de arquivos Markdown dentro dos repositórios. O Backstage usa o MkDocs para construir e servir documentação com busca integrada, mantendo-a sempre sincronizada com o código.
3. Ecossistema de plugins e extensibilidade
O Backstage possui dezenas de plugins oficiais e comunitários. Entre os mais usados estão integrações com GitHub, GitLab, Jenkins, CircleCI, PagerDuty, Datadog, AWS, GCP e Kubernetes. Cada plugin adiciona abas e visões ao catálogo de serviços.
Criar um plugin customizado segue um padrão simples usando React e a API do Backstage. Exemplo de estrutura de plugin:
// plugins/meu-plugin/src/index.ts
import { createPlugin } from '@backstage/core-plugin-api';
import { EntityPage } from './components/EntityPage';
export const meuPlugin = createPlugin({
id: 'meu-plugin',
routes: {
entityPage: EntityPage,
},
});
Empresas frequentemente criam plugins internos para ferramentas proprietárias, dashboards de métricas específicas ou integrações com sistemas legados.
4. Casos de uso reais em grandes empresas
Spotify reduziu o tempo de onboarding de novos desenvolvedores de semanas para horas. Cada time mantém seu catálogo atualizado, e a documentação técnica fica acessível diretamente no portal.
Netflix utiliza o Backstage como camada de abstração sobre seu ecossistema de ferramentas internas, permitindo que times criem e gerenciem serviços sem precisar conhecer detalhes de infraestrutura.
American Express adotou o Backstage para padronizar a criação de microsserviços em múltiplas nuvens, garantindo conformidade com políticas de segurança e governança desde o primeiro commit.
Zalando e Walmart também são adotantes conhecidos, usando o portal para centralizar mais de 200 ferramentas diferentes e reduzir a sobrecarga cognitiva dos times de engenharia.
5. Implantação e operação do Backstage
A implantação pode ser feita via Docker Compose para ambientes pequenos ou Kubernetes para produção. O Backstage também oferece o Backstage Cloud, versão gerenciada que reduz a complexidade operacional.
A configuração principal fica no arquivo app-config.yaml:
app:
title: Portal de Desenvolvedores
baseUrl: https://backstage.minhaempresa.com
backend:
database:
client: pg
connection:
host: ${POSTGRES_HOST}
port: 5432
user: ${POSTGRES_USER}
password: ${POSTGRES_PASSWORD}
auth:
environment: production
providers:
github:
development:
clientId: ${GITHUB_CLIENT_ID}
clientSecret: ${GITHUB_CLIENT_SECRET}
A manutenção contínua envolve atualizar o core do Backstage (que segue versões semânticas), gerenciar plugins desatualizados e monitorar performance do catálogo, especialmente em empresas com milhares de entidades.
6. Desafios e melhores práticas de adoção
O maior desafio é cultural: times precisam manter o catálogo atualizado. Uma estratégia eficaz é começar com um grupo piloto de 2 a 3 times, medir o impacto (redução de tempo gasto em buscas, aumento de conformidade) e expandir gradualmente.
Integração com sistemas legados pode ser complexa. Muitas empresas criam adaptadores (plugins) que sincronizam dados de ferramentas existentes para o catálogo do Backstage, evitando a necessidade de migração imediata.
Métricas de sucesso incluem: número de serviços catalogados, taxa de atualização dos metadados, tempo médio para criar um novo serviço via template e satisfação dos desenvolvedores medida por pesquisas internas.
7. Futuro do Backstage e da plataforma de desenvolvedores
O Backstage avança como projeto graduado da CNCF, com governança aberta e contribuições de centenas de empresas. As tendências incluem integração com inteligência artificial generativa para sugerir documentação automaticamente, templates inteligentes que se adaptam ao contexto do time, e maior suporte a múltiplas nuvens híbridas.
Comparado a alternativas como Port, Cortex e OpsLevel, o Backstage se destaca por ser open source, altamente customizável e com ecossistema maduro. Soluções proprietárias oferecem menor esforço inicial, mas limitam a flexibilidade e criam dependência de fornecedor.
Para empresas que buscam escalar a engenharia de software com consistência, o Backstage representa não apenas uma ferramenta, mas uma mudança cultural — onde a plataforma de desenvolvedores se torna o centro gravitacional da organização técnica.
Referências
- Documentação oficial do Backstage — Guia completo de instalação, configuração e desenvolvimento de plugins.
- Backstage no GitHub — Repositório oficial com código fonte, issues e exemplos.
- Backstage Software Catalog - Modelo de entidades — Documentação detalhada sobre o formato de descritores YAML para o catálogo.
- Criando templates no Backstage — Tutorial passo a passo para criar e gerenciar templates de scaffolding.
- Backstage Plugins - Lista oficial — Catálogo de plugins oficiais e da comunidade, com descrições e links de instalação.
- CNCF - Backstage overview — Página do projeto no CNCF, com informações sobre governança e status.
- Como a American Express usa Backstage — Estudo de caso real de adoção em grande escala.