1. «Las personas ya no nacen, se cultivan»
Bueno, si todavía estás aquí, sigamos. «Y te mostraré lo profunda que es la madriguera de conejo» © 🐇
Déjame contarte cómo funciona el proceso de desarrollo de un producto — recorreremos los pasos desde el nivel más alto, global, hasta el más bajo — la escritura del código. Creo que te esperan algunos descubrimientos interesantes…
Los productos modernos de IT ya no se «escriben», se «crean». Se ensamblan a partir de bibliotecas, frameworks, programas y productos de terceros, o incluso se usan servicios en línea remotos, pagos o gratuitos 🧩.
Un producto moderno es un zoológico completo de tecnologías, servicios, soluciones y procesos. Parte del trabajo lo hacen las personas, otra parte está automatizada, y el resto, aproximadamente el 90%, se realiza en servicios cloud en data centers ☁️. El mundo ya no es el mismo de antes.
Pero lo primero que notarás son los cambios constantes. Ya no escribes programas, los modificas.
2. Cambios constantes
Vas a llegar al trabajo y unirte a un equipo de 20 personas que ya lleva 5 años trabajando en un producto. Actualmente, los usuarios tienen acceso a su séptima versión. Y tu tarea será hacer cambios en ese producto. Pequeños cambios, para no asustar a los usuarios activos actuales.
Y no será fácil, porque el producto ya está en funcionamiento. Tiene clientes, y ellos pagan 💰. Por eso, no se puede romper nada. Hacer cambios en un producto que ya funciona es varias veces más difícil que en uno nuevo. Para eso existen estándares, protocolos de migración y utilidades especiales. Y aquí viene un chiste:
Se encuentran dos viejos amigos: uno se convirtió en mecánico, el otro en cirujano... Cada uno tiene su vida, preocupaciones, alegrías... Se cuentan todo, y en eso empiezan a hablar de salarios. El mecánico dice: "Bueno, gano 30k al mes y estoy muy contento con eso, ¿y tú cuánto?". El cirujano dice: "Pues, aproximadamente 100K por operación...". Entonces el mecánico se interesa: "Qué raro, ¿por qué tanta diferencia? Hacemos más o menos lo mismo — cambiar piezas". Y el cirujano le dice: "Vamos a la máquina, arranca...". El mecánico arranca la máquina, el cirujano abre el capó y le dice: "¿Ves? El motor funciona. ¡Cámbialo!" 😂
Incluso si sucede un milagro y tu equipo escribió un producto desde cero durante un año y solo después lo lanzó, ¿sabes qué pasará después? Si tu producto tiene éxito, el dueño querrá desarrollarlo. Lanzar una nueva versión, agregar alguna funcionalidad. O al menos hacer algunos experimentos. ¿Y qué seguirá a eso? Cambios 🙈
3. Valor del producto
Desde el punto de vista del desarrollo moderno, solo tiene valor el código que ya está en producción y la funcionalidad que usan los usuarios. Si escribiste código, está almacenado en algún lugar, funciona, pero la gente no lo usa, entonces su valor es casi cero. Por eso, todo el código debe llegar lo antes posible a production 🚀
Tu código debe pasar por estas etapas:
- ✔️ Lo escribiste y verificaste que funciona.
- 🔍 Tu TeamLead lo revisó y lo integró en la rama principal en Git.
- 🧪 Las pruebas durante la compilación mostraron que no rompiste nada importante.
- 🧩 Las pruebas de integración demostraron que el producto funciona correctamente.
- 🛡️ El tester verificó ese código y dio el visto bueno para el release.
- 📦 Luego, necesitas compilar una nueva versión del producto y lanzarla en el servidor.
- 🐳 La nueva versión debe empaquetarse en Docker Images y lanzarse.
- 🗄️ Quizá sea necesario ejecutar scripts de migración y hacer cambios en la base de datos y/o en otros servicios externos.
- 📊 Después, hay que recopilar logs en el servidor para asegurarse de que todo funciona bien.
- ⏪ En caso de emergencia, si algo se rompe, hay que hacer rollback, devolver el estado anterior de la base de datos y no perder las acciones que hicieron los usuarios mientras trabajaban con la versión inestable del producto.
En la mayoría de las empresas, estas tareas ya están resueltas: se han establecido nuevos procesos, se han contratado personas especializadas, se han implementado protocolos de seguridad y estándares de control de calidad. Cuanto más grande es la empresa, menos tiempo pasa desde que se escribe el código hasta que llega a production y empieza a aportar valor — a ser útil a las personas.
En la mayoría de las empresas, este proceso dura unas dos semanas. Pero hay compañías que hacen releases cada semana o incluso cada día. Los casos especiales — varias veces al día.
El código escrito no vale nada. Solo aporta valor el código que funciona en production.
GO TO FULL VERSION