28 ago
|
Wellbeinn
|
Cequeliños
28 ago
Wellbeinn
Cequeliños
100% remoto desde España · Contrato indefinido · Wellbeinn Buscamos a la persona que saque el núcleo de datos de salud de Wellbeinn de Firebase y lo lleve a nuestra propia plataforma en Postgres. Con la app en producción y usuarios reales dentro. Sin perder un dato. No es un backlog de CRUDs: es una migración con riesgo, un modelo de datos por diseñar y una decisión de arquitectura tuya cada semana.
¿Donde estamos?
En Wellbeinn construimos una plataforma de bienestar que mide de verdad: una banda propia por BLE, equipos de presoterapia y una app que convierte frecuencia cardíaca, HRV, SpO2, temperatura, sueño y actividad en algo que una persona puede usar cada día. Está en producción, con usuarios reales y datos de salud reales. Hoy la app escribe en Firestore y una capa de Cloud Functions hace el resto. Nos ha traído hasta aquí, pero ya nos limita: el modelo documental no encaja con series temporales de salud, y buscamos optimizar la arquitectura y el sistema completo para una mayor soberanía de nuestro proyecto. La cabeza de puente ya está construida: una API en NestJS sobre Cloud Run y Postgres con OAuth2 (Ory Hydra) que sirve a clientes B2B, y un backend de coach con IA (Claude) también en Cloud Run. Buscamos a la persona que una las piezas y diseñe el destino.
QUÉ VAS A HACER
Diseñar y ejecutar la migración de Firestore a nuestro backend propio en Postgres, con la app en producción: modelo destino, doble escritura, backfill, reconciliación y corte.
Definir el modelo de datos de salud: series temporales por usuario, agregados diarios, derivados (sueño, recuperación, carga), idempotencia y versionado. La app es offline-first y reenvía, el backend tiene que aguantarlo.
Consolidar la API: contratos OpenAPI, versionado,
autenticación y una sola puerta de entrada para la app móvil y para las integraciones B2B.
Sustituir la lógica que hoy vive en Cloud Functions (Node 20, fin de soporte en octubre de 2026) por servicios que podamos testear y desplegar con criterio.
Llevar el backend de IA a producto de verdad: streaming, contexto de salud del usuario, control de coste y latencia por token, evaluación de calidad y guardarraíles.
Poner el RGPD en la arquitectura, no en un anexo: con datos de categoría especial (Art. 9), la minimización, el consentimiento versionado, el borrado en cascada verificable, la residencia en la UE y las trazas de auditoría se diseñan como propiedades del sistema.
Proponer y documentar decisiones -usamos ADRs- y saber decir "esto todavía no lo construimos".
NUESTRO STACK
Backend: TypeScript, NestJS, Node 22, PostgreSQL (Cloud SQL), OpenAPI, Ory Hydra (OAuth2/OIDC)
Infra: GCP — Cloud Run, Cloud SQL, Cloud Functions, Firebase (el punto de partida), CI/CD con GitHub Actions y Workload Identity Federation
IA: API de Claude (Anthropic) con prompt caching
App: Flutter y Riverpod, con caché local y sincronización offline-first sobre BLE. No la vas a mantener, pero es tu cliente principal y tendrás que entender cómo sincroniza.
LO IMPRESCINDIBLE
~5+ años construyendo backends en producción , con TypeScript/Node a buen nivel (NestJS, Fastify o equivalente).
No pedimos que conozcas nuestro framework; pedimos criterio.
~ Diseño de APIs como oficio: contrato antes que código, versionado, idempotencia, paginación, errores que un cliente pueda manejar.
~ Postgres de verdad: modelado, índices, planes de ejecución, particionado o Timescale para series temporales, migraciones sobre tablas vivas.
~ Haber migrado datos de un sistema en producción con usuarios dentro. Si nunca has hecho una doble escritura ni un backfill, esta no es la posición.
~ Criterio de arquitectura en equipo pequeño: elegir lo simple, escribir la decisión y sostenerla seis meses después.
~ Autonomía en remoto: escribir bien lo que decides y no necesitar que nadie te reparta el trabajo.
LO QUE VALORAMOS MUCHO
LLMs en producción (Claude, OpenAI o similar): diseño de prompts, tool use, streaming, RAG y, sobre todo, coste, latencia y evaluación. Un chatbot de demo no cuenta: queremos a alguien que sepa explicar por qué su factura fue la que fue.
Datos de salud o wearables, BLE, sensores.
RGPD sobre datos de categoría especial (Art. 9), o haber pasado una auditoría de datos de salud.
Sincronización offline-first, resolución de conflictos, colas de reintento.
Firestore/Firebase: saber de dónde salimos ayuda.
Series temporales a escala: TimescaleDB, ClickHouse o similar.
IaC (Terraform), observabilidad (trazas, métricas, logs), Python para data.
QUÉ OFRECEMOS
~ salario competitivo
~ Propiedad de verdad sobre el backend, con acceso directo a producto y a quien decide.
~ Equipo pequeño y ciclo corto: lo que mergeas llega a usuarios en días.
~100% remoto desde cualquier punto de España.
~ Contrato fijo.
📌 Senior Backend Engineer - Datos de salud (TypeScript · Postgres · GCP) (Cequeliños)
🏢 Wellbeinn
📍 Cequeliños