Contexto
Una plataforma llevaba años funcionando y había pasado por diferentes desarrolladores, actualizaciones y etapas del negocio.
Cada nueva necesidad había dejado algo detrás: un plugin, un script, unas líneas de CSS, una solución provisional que terminó siendo permanente o una dependencia cuyo origen ya nadie recordaba.
Nada de aquello parecía especialmente grave por separado.
El problema
La consecuencia aparecía cada vez que había que modificar algo.
Antes de tocar una funcionalidad era necesario averiguar de qué dependía. Algunos recursos se cargaban sin utilizarse, determinadas funciones estaban duplicadas y pequeñas modificaciones podían provocar efectos en lugares aparentemente no relacionados.
La lentitud de la web era solo la parte visible. El verdadero problema era que la complejidad también hacía más lento el desarrollo.
El enfoque
No comenzamos intentando alcanzar una puntuación determinada en una herramienta de rendimiento.
Primero investigamos qué estaba haciendo realmente la plataforma: dependencias, recursos, imágenes, scripts, consultas y código heredado. Después diferenciamos lo imprescindible de aquello que simplemente había permanecido allí con el paso de los años.
La solución
Eliminamos dependencias innecesarias, reorganizamos la carga de recursos, optimizamos imágenes y scripts y corregimos diferentes problemas técnicos detectados durante el análisis.
En algunos casos optimizar significó hacer algo más rápido. En otros, simplemente dejar de hacer algo que ya no era necesario.
El resultado
La plataforma necesita menos recursos y dispone de una base técnica más comprensible.
Pero la diferencia también aparece meses después: las nuevas modificaciones requieren menos tiempo, generan menos incertidumbre y tienen menos posibilidades de afectar a otras partes del sistema.