Por qué es difícil lanzar (shipping)
- Mucha gente cree por error que “lanzar” es algo fácil, pero en realidad lo normal es que el lanzamiento se retrase, se cancele o salga con baja calidad y cause problemas.
- No porque ya se haya escrito todo el código o se hayan resuelto todos los tickets de Jira significa que el lanzamiento ocurre automáticamente. Para lanzar, alguien tiene que asumir el rol de liderazgo.
- El lanzamiento debe convertirse en la máxima prioridad. Si uno se enfoca demasiado en la experiencia de usuario (UX), el lanzamiento puede retrasarse más.
- Para lanzar un proyecto con éxito, hace falta un líder técnico o un DRI (Directly Responsible Individual). Los equipos que tienen un ingeniero en ese rol tienden a tener más probabilidades de éxito.
¿Qué significa “lanzar”?
- Muchos ingenieros piensan que “lanzar” es simplemente desplegar código o activar una función, pero en las grandes empresas tecnológicas se define de otra manera.
- Un lanzamiento ocurre cuando las personas importantes dentro de la empresa creen que “ya se lanzó”. Si el VP o el CEO no están satisfechos, aunque el código ya se haya desplegado, en la práctica no se considera “lanzado”.
- Si el proyecto logra un gran éxito entre los usuarios o genera ingresos, entonces se considera lanzado; pero incluso si la respuesta de los usuarios no es buena, si el liderazgo está satisfecho, también se considera lanzado.
La importancia de la comunicación
- Hay que tener muy claro cuál es el objetivo del proyecto. Según el objetivo, cambia la forma de trabajar y la estrategia de comunicación.
- El liderazgo de la empresa casi no conoce los detalles técnicos del proyecto. Por eso, para mantener la confianza, son importantes estimaciones precisas, resolver problemas y dar actualizaciones adecuadas.
- Formas de mantener la confianza:
- Ayuda mucho haber tenido lanzamientos exitosos en el pasado.
- Hay que mostrar una actitud segura.
- Hay que comunicarse como el control de misión de la NASA: de forma profesional y concisa.
- Hay que compartir información de forma proactiva mediante hilos de actualización diarios o semanales.
Resolver problemas de despliegue en producción
- La mayoría de los problemas surgen en detalles inesperados. Por ejemplo, problemas con el tamaño de bloque de Memcached, errores al predecir el tráfico o temas relacionados con datos sensibles de usuarios.
- Para resolver los problemas rápido, hace falta un entendimiento técnico profundo del sistema.
- Hay que poder responder rápidamente a los problemas previstos y explicar con claridad si un problema es grave o no.
¿Se puede lanzar ahora mismo?
- Es importante preguntarse si se puede lanzar ahora mismo. Si no, hay que pensar qué tendría que cambiar para que sí fuera posible.
- Hay que usar feature flags y entornos de staging para poder recibir feedback lo antes posible.
- Justo antes del lanzamiento, hay que reducir el trabajo técnico y prepararse para responder rápido si surge algún problema.
Resumen
- Lanzar es muy difícil y debe tratarse como la máxima prioridad.
- Lanzar no significa simplemente desplegar, sino lograr que el equipo de liderazgo quede satisfecho.
- Conseguir la confianza del equipo de liderazgo es la clave de un lanzamiento exitoso.
- Es importante tener planes de respaldo para anticipar y manejar problemas.
- Justo antes del lanzamiento, hay que reducir el trabajo de desarrollo y poder concentrarse en resolver problemas.
- Siempre hay que hacerse la pregunta: “¿Se puede lanzar ahora mismo?”.
- Hay que dejar el miedo atrás y tener valentía.
2 comentarios
Comentarios en Hacker News
He seleccionado una opinión impactante.
"Algunas personas solo quieren construir un territorio técnico para sí mismas, o quieren recibir elogios de personas que están por encima de ellas en cualquier nivel. Así es como "se juega el juego". Jugar ese juego termina llevando a la muerte de la organización, y esa es justamente la razón por la que existen los ciclos de vida empresariales. Al final, esas personas arruinan la organización desde dentro y desplazan a quienes tienen opiniones reales o a quienes están optimizados para realmente sacar el trabajo adelante."
"La forma de ganar el juego es no jugarlo"