Retos
El deporte en directo marca el ritmo: fechas límite inamovibles de los torneos, picos de tráfico de millones de usuarios, datos en tiempo real que deben mantenerse consistentes en todas las pantallas y experiencias web integradas en una app nativa de SwiftUI, todo sin comprometer la estabilidad. Además, la mensajería in-app había crecido hasta convertirse en dos sistemas que competían entre sí y podían ocultar avisos importantes. Y un reto personal: venía de React Native y tuve que ser productivo con Swift y SwiftUI en muy poco tiempo.
Mis contribuciones
- Fiabilidad a escala: contribuí a mantener la app estable y libre de crashes mientras lanzábamos funcionalidades importantes con una cadencia continua de releases.
- Actualización para el Mundial de fútbol: intregué el release más crítico de la app en una fecha inamovible marcada por el torneo, lanzando Sensi, Moments V2 y el overlay de resultados de predicciones.
- Coordinador de alertas y mensajes: unifiqué dos sistemas de toasts que competían en un coordinador único basado en prioridades que arbitra cada toast, sheet y alerta: secuenciación predecible, sin solapamientos ni mensajes ocultos tras los modales.
- Sincronización de partidos en directo: mantuve los marcadores y eventos en directo consistentes en todas las superficies que muestran el mismo partido, feed principal, pantalla de marcadores y Match Centre, con actualización en tiempo real.
- Integración WebView del juego Sensible Soccer™: integré la experiencia web multijugador en la app nativa SwiftUI, resolviendo la rotación forzada a horizontal, la comunicación nativo↔web y la gestión del ciclo de vida sin afectar al resto de la UI.
- Visualizador virtual de Jugada a Jugada (Play by Play): integré en el Match Centre la recreación del partido en directo mediante WebView: una vista animada de la acción en tiempo real, sincronizada con los datos del partido.
Resultado
Tres años de entrega continua: la app ha superado los 6 millones de descargas manteniendo una tasa crash-free del 99,8 %, y cada gran cita del deporte en directo, incluido un Mundial que trajo el mayor tráfico de su historia, salió a tiempo. El código también siguió el ritmo: una arquitectura modular, 100 % SwiftUI y Swift 6 con strict concurrency, que permite que las funcionalidades sigan llegando rápido.



