HCtch DEVELoPMENT

Colaboración ElTiempo.es
Resumen
  • Rol: Mobile Developer (iOS & React Native)
  • Cliente / Contexto: ElTiempo.es (Aplicación meteorológica líder)
  • Tech Stack: Swift, SwiftUI, UIKit, React Native, TypeScript, Zustand, React Query, Firebase FCM, Swift Package Manager, Realm, Core Data, UserDefaults
El Reto

Integrarme de forma transversal en el equipo de desarrollo para mantener y hacer evolucionar una aplicación iOS consolidada con una extensa base funcional (principalmente UIKit con transición a SwiftUI). Tras dos años en la versión nativa, afrontar la transición tecnológica hacia una nueva arquitectura multiplataforma desarrollada en React Native con TypeScript.

Logros y Aportes Técnicos
  • Evolución Nativa (iOS) y Migración a SwiftUI:
    • Desarrollo transversal de módulos clave: Avisos Oficiales, Polen, Calidad del Aire, Playas, Deportes Náuticos, Meteo Comparador, Cielo Nocturno, Settings y Bandeja de entrada.
    • Creación de una colección de componentes configurables y personalizables para la Home mediante SwiftUI, incluyendo diversas animaciones y visualizaciones de datos meteorológicos.
    • Reorganización y refactorización progresiva de secciones de la Home migrando de UIKit a SwiftUI.
  • Gestión de Notificaciones Push y Geolocalización:
    • Implementación y evolución de notificaciones push dinámicas con Firebase Cloud Messaging (FCM).
    • Migración a un sistema basado en topics integrado con favoritos y geolocalización en tiempo real del dispositivo.
  • Arquitectura de Datos y Core:
    • Evolución de la capa de datos modularizada con Swift Package Manager (SPM), integrando consumo de APIs backend, Core Data, Realm y UserDefaults.
    • Implementación y mantenimiento de tests unitarios asociados a los desarrollos realizados.
  • Desarrollo Multiplataforma (React Native):
    • Transición tecnológica al entorno React Native con TypeScript.
    • Gestión de estado global y asíncrono mediante Zustand y React Query.
    • Reutilización del conocimiento funcional adquirido en la etapa nativa para acelerar la implementación de componentes e interfaces en la nueva aplicación.
    • Trabajo activo en equipo internacional junto a áreas de Producto, Backend, Diseño y QA.
Impacto y Resultados Técnicos
  • Continuidad y Adaptación Tecnológica: Transición fluida del perfil desde el desarrollo nativo en iOS hacia la nueva arquitectura multiplataforma en React Native sin interrumpir la evolución funcional del producto.
  • Modularidad y Mantenibilidad: Encapsulamiento del core de datos a través de Swift Package Manager, optimizando la distribución y reutilización del código.
Más Proyectos
Ir al contenido