CP/DEV
Appmypets

2024 · Desarrollador multiplataforma

Appmypets

App móvil React Native para comunidad de mascotas

  • React Native
  • TypeScript
  • NestJS
  • MongoDB
  • Google Cloud
  • Jest
Plataformas
iOS + Android
Duración
16 meses
Testing
Jest + manual

Contexto

Startup española de Gran Canaria construyendo una red social y plataforma de documentación digital para mascotas (certificados veterinarios, cartillas, seguros). Me uní al equipo como desarrollador multiplataforma en remoto, cubriendo la parte móvil y colaborando con el equipo backend.

El producto apuntaba a propietarios que viajan con sus mascotas y necesitan la documentación oficial siempre a mano, junto a una capa social para compartir experiencias y recomendaciones.

Trabajo realizado

  • Componentes reutilizables en React Native con TypeScript estricto y estado gestionado por Hooks custom.
  • Coordinación con backend NestJS + MongoDB sobre Google Cloud, definición de contratos API y revisión conjunta de endpoints.
  • Feed social: pantalla principal con posts, likes, comentarios y carga infinita optimizada.
  • Gestión documental: subida, visualización y compartido de documentos de mascotas con persistencia local.
  • Testing manual y unitario con Jest — cobertura en autenticación, feed y persistencia.
  • Metodología ágil: sprints semanales en Jira, daily standups y retros cada dos sprints.

Retos técnicos

Sincronizar estado entre navegación y refetch de feeds en React Native sin bloqueos visibles fue el mayor. La solución: un hook custom con optimistic updates y revalidación en background, desacoplando el UI de la capa de datos.

La otra complejidad: formularios de registro de mascota con validación compleja (especies, razas, datos veterinarios dependientes de la especie). Se resolvió con un esquema zod compartido validado en cliente y servidor.

Aprendizajes

El mayor valor estuvo en la comunicación con el equipo backend: las APIs cambian durante el desarrollo y un dev móvil aislado termina bloqueando al resto. Tiempo invertido en definir contratos OpenAPI por adelantado se recupera por triplicado después.