Salud · Hospitales en EE. UU.
Sincci
Agregar un nuevo idioma para pacientes pasó a ser una edición de contenido en vez de un despliegue de código.
- Rol
- Líder de backend
- Duración
- 14 meses
- Equipo
- 2 de nuestro lado
- Sector
- Hospitales en EE. UU.
Ilustraciones de interfaz, no capturas — el producto del cliente está bajo acuerdo.
La situación
Sincci conecta hospitales estadounidenses con pacientes por video, mensajería segura e intérpretes humanos. Una parte grande de esos pacientes no habla inglés, y las plantillas de mensajes clínicos — recordatorios de cita, instrucciones de alta, seguimiento de medicación — solo existían en dos idiomas.
Entramos como líder de backend en los microservicios detrás de mensajería y traducción.
El problema
Los idiomas estaban compilados dentro de las plantillas. Cada idioma nuevo significaba un cambio de código, una pasada de QA y un despliegue — así que una sede hospitalaria pidiendo creole haitiano quedaba esperando un roadmap de ingeniería sobre el que no tenía visibilidad.
Peor: sedes de la misma red hospitalaria necesitaban redacciones distintas para el mismo mensaje. El modelo de datos no tenía dónde poner eso.
Lo que construimos
- 01
Las traducciones pasaron a ser datos, no código
Un registro de traducción indexado por plantilla, sede e idioma, con una cadena de respaldo hasta el valor por defecto de la red. Idiomas ilimitados, sin despliegue.
- 02
Un editor que el equipo clínico podía usar
Origen y destino en paralelo con validación de variables, para que un campo de combinación faltante se detecte antes de que un paciente vea un corchete vacío.
- 03
Microservicios en Flask, aislados por responsabilidad
Mensajería, traducción y agendamiento se despliegan por separado. Un cambio de traducción no puede tumbar una videollamada.
- 04
Traza de auditoría en cada texto clínico
Quién cambió qué redacción, cuándo, y qué recibió el paciente realmente. No negociable en un entorno regulado.
El resultado
Las plantillas de mensajes pasaron de 2 idiomas fijos a traducciones ilimitadas por sede.
Agregar un idioma dejó de ser un ticket de ingeniería y pasó a ser una edición de contenido que un responsable de operaciones clínicas podía hacer esa misma tarde.
Más trabajo
Trydent Ops Portal
Un modelo de permisos lo bastante complejo como para exigir construirlo con pruebas primero.
Operaciones de campoAS Data Collector
Checklists de inspección que se terminan donde no hay señal, y que se reconcilian cuando la hay.
ConsumoBlumcatch
Tres plataformas, dos tiendas, un solo comando de publicación.