Los backends móviles no son webs con JSON. Son sistemas diseñados para dispositivos con red intermitente, batería limitada y estado local. Los construimos así desde el primer endpoint.
Una app móvil no es un navegador. Tiene red intermitente, batería limitada y ciclos de vida distintos. El backend se diseña para eso, no para imitar la web.
En móvil, cada KB transferido se paga en batería, datos y latencia. Optimizamos respuestas al byte porque los dispositivos son el límite real.
Una app que espera red es una app rota. La lógica local, las colas y la sincronización son parte del backend, no del front.
Desde que el dispositivo despierta hasta que la telemetría vuelve al servidor. Cada etapa está diseñada para fallar con gracia.
La app se abre o recibe una push. El cliente verifica su estado local antes de pedir nada al servidor.
El cliente arma un request compacto. Headers como X-Device-Id, X-App-Version y auth token firmado acompañan la llamada.
El gateway valida token, version y rate limit por dispositivo antes de tocar cualquier servicio. Los requests inválidos mueren aquí.
La lógica de negocio corre en el backend. Si hay IA, se llama al modelo. Si hay terceros, se orquestan con timeouts agresivos.
La respuesta se serializa en JSON compacto, con campos opcionales removidos y delta cuando aplica. Sin decoración innecesaria.
La app aplica el delta a su estado local, actualiza la UI y encola cualquier operación pendiente si la red falla.
Latencia, tamaño de respuesta, errores y status se reportan al backend en batch para monitoreo agregado.
Seis prácticas que aplican a cada backend que construimos para dispositivos.
JSON compact, gzip/brotli, delta sync. Cada byte que no se envía es batería que se ahorra.
Cola de operaciones, resolución de conflictos y merge de estado. La app no depende de tener red.
JWT firmados, refresh tokens por dispositivo y revocación granular. Cada device es una sesión.
APNs y FCM integrados con reglas de negocio. Las notificaciones son eventos del backend, no del cliente.
Límites por dispositivo, por usuario y por endpoint. El backend se protege a sí mismo y a los demás clientes.
Métricas de latencia, tamaño y errores por versión de app y sistema operativo. Se ve lo que ven los usuarios.
El backend necesita saber quién llama, desde qué versión de app y en qué dispositivo. No es un navegador: es un cliente con identidad propia.
La misma empresa, la misma API, pero decisiones distintas porque los clientes son distintos.
Toda app móvil de GoodMax se apoya en un backend diseñado para dispositivos. Es la frontera entre el cliente y el sistema.
La app se siente rápida cuando el backend está bien hecho. Sigue explorando las otras capas del sistema.