Disciplina enfocada en optimizar la productividad, satisfacción y efectividad de los desarrolladores mediante herramientas, procesos y entornos bien diseñados.
Developer Experience (DX) es la experiencia total de un desarrollador al usar herramientas, APIs, frameworks y procesos. Una buena DX reduce fricción, acelera el feedback loop y hace que el trabajo sea más satisfactorio.
| Métrica | Framework | Qué mide | Objetivo |
|---|---|---|---|
| Tiempo de onboarding | SPACE | Días hasta primer PR productivo | < 1 semana |
| Tiempo de build local | DORA | Minutos de feedback loop | < 2 minutos |
| Deploy frequency | DORA | Deploys por día/semana | Múltiples por día |
| Developer satisfaction | SPACE | Encuesta periódica | > 4/5 |
| Lead time for changes | DORA | Commit → producción | < 1 día |
La experiencia del desarrollador determina la velocidad y satisfacción de los equipos de ingeniería. Herramientas lentas, documentación desactualizada y procesos burocráticos son fricciones que se multiplican por cada desarrollador y cada día. Invertir en DX es invertir en productividad organizacional.
Conjunto de prácticas técnicas y culturales que implementan los principios DevOps — desde Infrastructure as Code hasta blameless post-mortems. El «cómo» detrás de la filosofía.
Estrategia de organización de código donde múltiples proyectos coexisten en un único repositorio, compartiendo dependencias, configuración y herramientas de build.
Proceso estructurado para que nuevos desarrolladores se vuelvan productivos rápidamente, desde setup del entorno hasta comprensión de la arquitectura y procesos del equipo.
Plataformas centralizadas que proporcionan a los desarrolladores documentación, APIs, herramientas y catálogos de servicios en un solo lugar.
Caminos recomendados y pre-configurados para tareas comunes de desarrollo que incorporan mejores prácticas, reduciendo la carga cognitiva de los equipos.
Continuous Integration y Continuous Delivery/Deployment — prácticas que automatizan la integración de código, testing y entrega a producción. Fundamento de la ingeniería de software moderna.
Disciplina que abarca todos los aspectos de la interacción de una persona con un producto, sistema o servicio, buscando que sea útil, usable y satisfactorio.
Prácticas, herramientas y métricas para mantener código legible, mantenible, testeable y libre de defectos a lo largo del tiempo.
Sistema de diseno estilo terminal con temas Matrix y TRON, integración del código Konami y soporte para micro frontends. Publicado en npm como @jonmatum/terminal-ui.
Presentación con Slidev sobre 10 razones para adoptar una arquitectura serverless-first. Desplegada en GitHub Pages.
Plataforma web para evaluar la madurez organizacional con un sistema de puntuación simplificado de 3 niveles, frameworks personalizables y visualización en tiempo real.
Principios para diseñar kits de desarrollo que sean intuitivos, consistentes y faciliten la integración de servicios en múltiples lenguajes de programación.
Disciplina que diseña y construye plataformas internas de autoservicio para que los equipos de desarrollo desplieguen y operen aplicaciones de forma autónoma.
Aplicación de prácticas de desarrollo open-source dentro de una organización, permitiendo que equipos contribuyan a proyectos de otros equipos con procesos transparentes.
Especificación para definir entornos de desarrollo reproducibles en contenedores, eliminando el problema de 'funciona en mi máquina' y acelerando el onboarding.
Colección de componentes reutilizables, patrones y guías que aseguran consistencia visual y de interacción en productos digitales a escala.
Principios para diseñar interfaces de línea de comandos intuitivas, consistentes y productivas que los desarrolladores disfruten usar.
Plataforma open-source de Spotify para construir portales de desarrollador, con catálogo de servicios, templates y sistema de plugins extensible.
Prácticas y herramientas para documentar APIs de forma clara, interactiva y mantenible, desde especificaciones OpenAPI hasta portales de documentación.
Herramientas que usan LLMs para ayudar a desarrolladores a escribir, entender, depurar y refactorizar código, desde autocompletado hasta agentes que implementan features completas.