Después de un año en SiVasDescalzo aprendiendo las bases del desarrollo mobile, llegué a ManoMano en 2022. Era una empresa completamente diferente: un marketplace de bricolaje y hogar con millones de usuarios en varios países europeos.
Entré como Junior Developer. Salí tres años después como Senior.
Esta es la historia de cómo aprendí a escalar una aplicación mobile de verdad.
El Contexto: Una App Grande, Un Problema Grande
ManoMano es el marketplace líder de bricolaje en Europa. Cuando llegué:
- Millones de usuarios activos mensuales
- Catálogo masivo: Miles de productos de múltiples proveedores
- Multi-país: Francia, España, Italia, Alemania, Reino Unido, Bélgica
- Equipo grande: ~10 developers mobile coordinando features
La app funcionaba. Pero tenía problemas.
El Problema: Android Era Lento
Muy lento.
Los números eran claros:
- Load time inicial: 5 segundos en dispositivos Android de gama media
- Tamaño de la app: Excesivamente grande, afectando las descargas
- Experiencia de usuario: Frustrante, especialmente en conexiones lentas
Para una app de e-commerce, donde cada segundo cuenta para la conversión, esto era crítico.
¿Por qué Android específicamente? La diversidad de dispositivos Android (desde gamas bajas hasta flagships) y la variedad de versiones del sistema operativo hacían que optimizar para todos fuera un desafío continuo.
Mi Evolución: De Junior a Senior
Año 1: Aprender el Sistema
Mi primer año fue absorber:
- Arquitectura de una app grande: Módulos, features, navegación compleja
- Trabajo en equipo: Coordinación con 10 developers, procesos de code review
- El negocio: Cómo funciona un marketplace a escala europea
Trabajé en features como cualquier junior:
- Implementación de pantallas
- Fixes de bugs
- Pequeñas mejoras de UI
Pero lo más valioso fue entender cómo funcionaba el sistema completo.
Año 2: Especializarme en Performance
Mi segundo año fue donde encontré mi nicho: performance y animaciones.
Me di cuenta de que podía:
- Identificar cuellos de botella
- Optimizar renders innecesarios
- Implementar animaciones fluidas sin comprometer performance
El equipo necesitaba a alguien que se especializara en esto. Me ofrecí.
Los resultados empezaron a llegar:
Optimización de Load Time en Android:
- Antes: 5 segundos
- Después: 2 segundos
- Mejora: 60%
¿Cómo?
- Lazy loading de módulos no críticos
- Optimización de imágenes y assets
- Reducción de librerías innecesarias
- Code splitting estratégico
Reducción del Tamaño de la App:
- Reducción: 70% del tamaño original
- Impacto: Más descargas, menor fricción
¿Cómo?
- Eliminación de dependencias no utilizadas
- Compresión agresiva de assets
- Heroku y assets dinámicos donde tenía sentido
- Auditoría completa del bundle
Año 3: Liderazgo Técnico
Mi tercer año fue de consolidación:
- Velocidad de implementación: Me había vuelto rápido sin sacrificar calidad
- Features complejas: Capaz de liderar proyectos end-to-end
- Mentoría: Ayudando a nuevos juniors a entender el sistema
El Sistema de Monitorización: Prevenir, No Reaccionar
Una de mis contribuciones clave fue el sistema de monitorización automática de performance.
El concepto era simple pero poderoso:
- Métricas automáticas: Cada screen tracked su tiempo de render
- Thresholds definidos: Cada pantalla tenía un límite máximo aceptable
- Alertas automáticas: Si una screen superaba el threshold, se activaba una alerta
- Proceso de revisión: El equipo revisaba por qué ocurrió y si era aceptable
Este sistema nos permitió:
- Detectar regresiones antes de llegar a producción
- Mantener la performance a lo largo del tiempo
- Tomar decisiones informadas sobre trade-offs de performance
Ya no reaccionábamos a quejas de usuarios. Preveníamos problemas antes de que existieran.
Features Que Implementé
Durante tres años, trabajé en proyectos de diversa complejidad:
1. Wishlist (Lista de Deseos)
Sistema completo para que usuarios guarden productos favoritos:
- Sincronización entre dispositivos
- Notificaciones de cambio de precio
- Compartir wishlists
2. Revamp de la Home
Rediseño completo de la pantalla principal:
- Nuevo layout más moderno
- Secciones dinámicas personalizadas
- Performance optimizada (el desafío más grande: cargar muchos productos sin lag)
3. Revamp del Carrito
Mejora de la experiencia de checkout:
- UI más clara
- Menos pasos hasta el pago
- Mejor manejo de promociones y descuentos
4. Sistema de Gestión de IVA por País
Feature compleja debido a las regulaciones europeas:
- Cálculos dinámicos según país
- Precios correctos en múltiples monedas
- Edge cases y validaciones
5. Ofertas y Catálogos Ecológicos
- Sistema de ofertas flash
- Filtros de productos ecológicos
- Badges visuales para productos sostenibles
El Impacto en el Negocio
Mi especialización en performance y mi velocidad de implementación tuvieron impacto directo:
Adaptabilidad ante cambios de scope: En una empresa grande, los requisitos de producto cambian constantemente. Mi capacidad de pivotar rápido sin comprometer calidad se volvió valiosa.
Fiabilidad: Las features que entregaba funcionaban. En producción. Para millones de usuarios. Consistentemente.
Performance sostenida: El sistema de monitorización garantizaba que las optimizaciones duraran. No era solo “arreglar y olvidar”.
El Entorno Exigente: La Mejor Escuela
ManoMano tenía dos tech leads extremadamente exigentes.
Sus code reviews eran legendarios:
- PRs rechazados: Si tu código no cumplía los estándares, vuelta a empezar
- Feedback iterativo: “Esto puede estar mejor” significaba realmente “rehazlo”
- Patrones de diseño: Se esperaba que usaras las mejores prácticas, no soluciones rápidas
- Sin excepciones: Junior o senior, los estándares eran los mismos
Al principio era frustrante. ¿Por qué rechazar un PR que funciona?
Con el tiempo entendí: funcionaba no era suficiente. Tenía que:
- Ser mantenible
- Seguir los patrones del proyecto
- Estar bien testeado
- Ser eficiente
Este entorno exigente me preparó para el futuro. Me enseñó a ser autoexigente conmigo mismo.
Hoy, cuando reviso mi propio código, escucho las voces de esos tech leads: “¿Esto puede estar mejor? Entonces hazlo mejor”.
Lecciones Aprendidas
1. La Excelencia Técnica Requiere Disciplina
No basta con escribir código que funcione. Hay que escribir código que:
- Funcione hoy
- Funcione mañana
- Sea fácil de mantener por otros
- Sea eficiente
Esta disciplina no viene natural. Se aprende en entornos que la exigen.
2. La Performance Es una Feature
Los usuarios no ven tu código. Ven si la app es rápida o lenta.
Una app lenta con todas las features del mundo pierde frente a una app rápida con menos features.
La performance no es un “nice to have”. Es crítica.
3. Especializarse Tiene Valor
En un equipo grande, ser “el que sabe de X” tiene valor enorme. En mi caso:
- Performance optimization
- Animaciones fluidas
- Identificación de cuellos de botella
Esto me hizo más valioso para el equipo y aceleró mi crecimiento a senior.
4. Los Sistemas Previenen Problemas
El sistema de monitorización de performance era más valioso que mil optimizaciones puntuales.
Los buenos sistemas escalan. Las soluciones puntuales no.
5. El Crecimiento Viene de la Exigencia
Trabajar en un entorno exigente, con tech leads que no aceptan mediocridad, aceleró mi crecimiento exponencialmente.
Si todos tus PRs se aprueban fácilmente, probablemente no estás creciendo lo suficientemente rápido.
Resultados Finales
Después de tres años en ManoMano:
- ✅ Load time: 5s → 2s (60% de mejora)
- ✅ Tamaño de app: Reducción del 70%
- ✅ Sistema de monitorización: Implementado y funcionando
- ✅ Múltiples features: Wishlist, revamps, sistema de IVA, ofertas, catálogos
- ✅ Promoción: De Junior a Senior Developer
- ✅ Preparación: Listo para el siguiente desafío
ManoMano fue mi MBA en desarrollo mobile a escala.
Reflexiones Finales
Escalar una app no es solo sobre tecnología. Es sobre:
- Procesos: Code reviews, CI/CD, testing, monitoring
- Equipo: Coordinación, comunicación, estándares compartidos
- Mentalidad: Pensar en millones de usuarios, no en casos de uso individuales
- Excelencia: Nunca conformarse con “funciona”, siempre buscar “funciona bien”
ManoMano me enseñó todo esto. Pero más importante, me enseñó que los entornos exigentes, aunque duros, son donde ocurre el crecimiento real.
Si SiVasDescalzo fue mi introducción al desarrollo mobile, ManoMano fue mi maestría.
Y me preparó perfectamente para lo que vendría después: ser el experto mobile en una startup que lo necesitaba desesperadamente.
¿Buscas crecer como developer? Busca entornos exigentes. Busca tech leads que rechacen tu código. Busca problemas complejos a escala. El crecimiento no viene de la comodidad.