Anécdotas puntuales de mi carrera.

Situaciones reales que viví, el problema, la decisión que tomé y por qué.

Estandarizar el Desarrollo en una Era de Código Generado por IA

Cuando la IA le dio a cada desarrollador control total sobre el código, perdimos los límites que mantenían consistencia entre proyectos. Construí starters con guardrails automáticos, hechos propios por todo el equipo.

Impacto

Starters como producto interno, adoptados por todo el equipo

Diseñar un Proceso a Prueba de un Product Owner que No Podía Sostenerlo

Cuando quien cubría temporalmente el puesto de product owner del cliente no podía gestionar los requerimientos, no intentamos arreglar a la persona — rediseñamos el proceso.

Impacto

Entrega a tiempo, cero atraso de contrato

Diseñando una Transición Segura Entre Dos Equipos de Desarrollo

Un cliente quiso asumir el mantenimiento de un producto que desarrollábamos. Diseñé un handoff por niveles de riesgo para que dos equipos avanzaran en paralelo sin cuello de botella.

Impacto

Handoff progresivo, sin cuello de botella

El frontend no tenía por qué leer f_title

En 2024 tuve la oportunidad de participar en el desarrollo inicial de un marketplace de anuncios. La web era nueva. Las APIs no. En el server parseamos el JSON con Zod para que el frontend leyera `title`, no `f_title`.

Impacto

El frontend no ve f_title

De un Monolito a una Arquitectura Distribuida, sin Reescribir el Producto

Un monolito dejó de funcionar cuando módulos con necesidades muy distintas empezaron a competir por la misma infraestructura. Migré responsabilidades hacia microservicios sin reescribir el producto ni detener el desarrollo.

Impacto

~10 microservicios, cero reescritura

Cuando la Plataforma Tuvo que Soportar 20× Más Tráfico

Cuando la demanda superó lo que soportaba nuestro backend monolítico, no reescribimos la infraestructura — distribuimos el tráfico entre instancias y multiplicamos por 20 la capacidad.

Impacto

~20× más capacidad de usuarios