Palabras clave: Backstage, organizaciones, manejo de equipos, desarrolladores, información centralizada, componentes de las organizaciones, compartir información, Conocimiento
Introducción
En el desarrollo de software y productos digitales, donde convergen múltiples equipos, roles y procesos dentro de una organización, el manejo de información y conocimiento se vuelve un desafío creciente y, en ocasiones, inmanejable.
Por ejemplo, cada equipo suele tener sus propias fuentes de información (documentación, aplicaciones, código, procesos), lo que dificulta tener una visión clara de cómo están estructuradas las organizaciones o empresas que operan diversas líneas de negocio con equipos independientes. Esto se complica aún más cuando no existe información centralizada sobre los líderes actuales, los cambios en los equipos, ni una estructura organizacional actualizada. La rotación de miembros, la falta de referencias claras y los cambios constantes en la información dificultan la colaboración y el acceso eficiente a los recursos necesarios.
Además, la fragmentación de sistemas, los cambios de contexto, los procesos de incorporación de nuevos miembros (onboarding) y la documentación desactualizada agravan este problema. Ante esta realidad, surgió la necesidad de una solución integral que centraliza y organiza esta información. Así nació Backstage, una plataforma desarrollada por Spotify, diseñada para abordar estos desafíos y facilitar la gestión de equipos, procesos e información en las organizaciones.
¿Qué es Backstage?
Backstage es un portal para desarrolladores, diseñado para centralizar toda la información y herramientas que los equipos necesitan en el proceso de desarrollo de software.
Esta plataforma actúa como «una plataforma de plataformas», permitiendo que cualquier equipo o miembro de una organización pueda contribuir a su contenido y funcionalidades. El equipo central responsable de Backstage debe ver a los equipos contribuyentes como clientes, proporcionando soporte y fomentando su participación. La colaboración en código puede potenciarse a través de herramientas como GitHub, siguiendo principios de Inner Source, un enfoque que adapta prácticas y fundamentos del desarrollo de código abierto para su implementación dentro de las organizaciones.
Además, Backstage cuenta con una comunidad activa y comprometida. Los miembros están siempre dispuestos a resolver inquietudes, compartir avances, presentar nuevas funcionalidades y abordar problemas identificados. Estas iniciativas buscan incentivar la colaboración y promover la participación de los desarrolladores en la mejora continua de la plataforma.
Importancia de Backstage para las organizaciones.
Backstage tiene un impacto significativo en la optimización del proceso de desarrollo de software dentro de una organización, mejorando diversos aspectos clave como:
- Tiempo de onboarding: Acelera la incorporación de nuevos miembros al equipo al proporcionarles acceso centralizado a la documentación, herramientas y procesos necesarios.
- Tiempo de off-boarding: Facilita la salida de miembros al mantener actualizada la información de roles y responsabilidades, minimizando interrupciones.
- Número de PR (Pull Requests) mergeados por desarrollador/día/equipo: Incrementa la productividad al estandarizar y agilizar los flujos de trabajo.
- Despliegues a producción: Mejora la frecuencia y fiabilidad de los deploys mediante una mejor coordinación y visibilidad de los procesos.
- Cambio de contexto: Reduce las interrupciones al centralizar la información relevante para las diferentes iniciativas en las que trabajan los equipos.
¿Qué organizaciones implementaron Backstage?
- Netflix
- Netflix ha mencionado públicamente su uso de Backstage para centralizar el acceso a documentación interna y herramientas de desarrollo.
- Expedia Group
- Expedia Group habló sobre la adopción de Backstage para tener un portal de desarrolladores unificado y mejorar la productividad.
- American Airlines
- American Airlines ha compartido que usan Backstage para unificar los servicios y las herramientas que utilizan los equipos de desarrollo.
- Fidelity Investments
- Fidelity ha comentado en diferentes foros su adopción de Backstage como portal interno para la gestión de aplicaciones y documentación.
- Epic Games
- Epic Games (creadores de Fortnite y del motor Unreal Engine) también han mencionado Backstage en conferencias como parte de su ecosistema interno de herramientas.
- HP
- HP ha aparecido en eventos de la comunidad de Backstage como uno de los casos de éxito en la adopción de la plataforma.
Nota: Hay muchas otras organizaciones que usan Backstage de forma interna pero que no siempre lo hacen público. Asimismo, al ser un proyecto open source, no existe un registro “oficial” y completo de todas las empresas que lo han adoptado.
¿Cómo puedo adoptar Backstage en mi organización?
Adoptar Backstage en tu organización puede mejorar significativamente la eficiencia y colaboración en el desarrollo de software. Los pasos esenciales para su implementación, basados en la documentación oficial de Backstage:
- Evaluar las necesidades de tu organización.
- Configurar el catálogo de servicios
- Fomentar la colaboración y contribución interna
- Capacitar a los equipos
- Monitorear y evaluar el impacto.
CARACTERÍSTICAS PRINCIPALES
- CATÁLOGO DE SOFTWARE:
Permite que un equipo gestione decenas de componentes de software y que una organización administre miles de ellos, ofreciendo a los equipos una visión clara de los proyectos y sus dependencias.
En lugar de depender exclusivamente de la consola de un proveedor en la nube como AWS o GCP, Backstage permite integrar la administración del ciclo de vida de un componente directamente dentro de la plataforma.
- PLANTILLAS DE SOFTWARE:
Simplifica la creación de nuevos microservicios, funcionalidades móviles, pipelines u otros componentes de software. Además, automatiza procesos como la incorporación (onboarding) y desvinculación (off-boarding) de desarrolladores.
El tiempo necesario para lograr un «Walking Skeleton» se reduce significativamente, permitiendo que los desarrolladores se concentren en crear funcionalidades. Spotify, por ejemplo, utiliza los Golden Paths como parte de su proceso de onboarding. Estos caminos definidos guían a los equipos para construir servicios backend, configurar sitios web o crear pipelines, a través de tutoriales paso a paso que ofrecen apoyo y recomendaciones.
- INTEGRACIÓN CON KUBERNETES:
Esta funcionalidad está diseñada para satisfacer las necesidades de los propietarios de servicios en lugar de los administradores de clústeres. Los desarrolladores pueden verificar fácilmente el estado de sus servicios, sin importar si están ejecutándose localmente para pruebas o en producción dentro de múltiples clústeres distribuidos en toda la organización.
- DOCUMENTACIÓN TÉCNICA:
Es la solución integrada de documentación estilo código (docs-like-code) desarrollada por Spotify. Los desarrolladores escriben su documentación directamente en archivos Markdown que se almacenan junto al código, eliminando la necesidad de usar herramientas externas y facilitando el mantenimiento y la actualización de la documentación.
- INFORMACIÓN CLAVE DE LOS DESARROLLADORES:
Con miles de desarrolladores trabajando en miles de componentes, encontrar información puede ser un reto. Backstage ofrece una herramienta de búsqueda que permite localizar propietarios de servicios, componentes y documentación de forma eficiente.
Nuevos desarrolladores pueden acceder rápidamente a información relevante, mientras que los equipos colaboran y comparten conocimiento en un solo lugar, evitando la duplicación de esfuerzos.
Instalar Backstage en tu organización:
Para la instalación de backstage, dejaremos un paso a paso detallado de cómo hacerlo, para poder facilitar el proceso.
Requerimientos:
- yarn >= 1.22.17
- node >= 14.17.0
Stack tecnológico:
- React
- React Testing Library
- Typescript
- Javascript
- Express
- Cypress
- Lerna
- Docker
Instalar backstage como Single Page Application (SPA):
npx @backstage/quind-organization-app
Instalar dependencias:
yarn install
Para levantar localmente, dentro del directorio packages/app ejecutar:
yarn dev
Conclusiones
Backstage es una plataforma esencial para las organizaciones que buscan centralizar y optimizar la gestión de sus servicios y equipos de desarrollo. Su capacidad para unificar documentación, herramientas y procesos en un único lugar permite a los colaboradores enfocarse en las tareas de mayor valor, sin perder tiempo buscando información dispersa o actualizando documentación desactualizada. Además, la comunidad activa y el enfoque de Inner Source aseguran que la plataforma evolucione en sintonía con las tendencias del mercado y las necesidades de cada equipo, promoviendo la colaboración y la mejora continua. En un entorno tecnológico cada vez más competitivo, Backstage se convierte en el pilar que conecta la visión de la empresa con las mejores prácticas de desarrollo, transformando proyectos complejos en soluciones eficientes y escalables que impulsan el éxito y la innovación de la organización.