James Valencia
← Proyectos

2026 — presente

Asisfera — plataforma multi-tenant de turnos

QA Lead

Impacto

El sistema pasó de servir una sola organización a servir varias sin que ninguna vea datos de otra — resolviendo primero el caso más difícil: saber quién sos antes de que hayas iniciado sesión.

Node.jsExpressPrismaPostgreSQLReactViteZustandPlaywright

El problema

Una plataforma de asistencia y turnos necesitaba servir a múltiples organizaciones (multi-tenant) sin que cada una viera datos de otra, agregado sobre un sistema que originalmente no fue diseñado para serlo.

El enfoque

El contrato de API entre frontend y backend vive en un paquete shared/ con esquemas Zod que ambos lados importan de la misma definición — el contrato se valida en runtime en los dos extremos desde una sola fuente de verdad, no dos copias que pueden desincronizarse.

La parte difícil de la multi-tenencia no fue el modelo de datos sino resolver a qué organización pertenece un usuario en los flujos de login y de "olvidé mi contraseña" — momentos donde todavía no hay un usuario autenticado del cual derivar el tenant, y hay que resolverlo antes.

La suite de tests corre con Vitest y Supertest en el backend, Testing Library en el frontend, y Playwright para e2e, todo sobre Docker Compose.

Resultado

El sistema pasó de servir una sola organización a servir varias sin que ninguna vea datos de otra — resolviendo primero el caso más difícil: saber quién sos antes de que hayas iniciado sesión.