Orienta
Pruebas psicométricas digitales, motor de recomendación con IA y scraping continuo de universidades — todo conectado por una arquitectura event-driven que sólo gasta cómputo bajo demanda.
El problema
En Latinoamérica, decidir qué estudiar a los 17 sigue siendo una apuesta. Los test psicométricos tradicionales devuelven un PDF con una lista de carreras compatibles — útil, pero estático, sin contexto, y sin nadie que te explique por qué.
El equipo fundador venía de psicología educativa y tenía el instrumento, la data y los resultados. Lo que faltaba era convertir eso en un producto que el estudiante de hoy use realmente: digital, conversacional, móvil-primero, y que enseñe en vez de solo recomendar.
Mi rol
Entré como Desarrollador Full-Stack y único responsable técnico. Decido stack, arquitectura, costos de infraestructura, proveedor de IA y forma de los datos. Construí la API desde cero y llevo el ciclo end-to-end: backend, frontend e infraestructura.
El trabajo no es solo escribir código. Es traducir lo que el equipo psicométrico ya sabía a un sistema con el que un chico de 16 años pueda hablar a las 11pm desde un teléfono de gama media.
Decisiones técnicas que importan
Event-driven en vez de always-on. La versión inicial tenía un worker corriendo 24/7 en una EC2 esperando trabajo. La rediseñé como una arquitectura SQS + ECS Fargate: el cómputo sólo se levanta cuando hay un análisis vocacional por generar. El costo operativo cayó de forma considerable y el sistema escala solo cuando hay carga.
Pipeline de IA con fallback. Gemini como proveedor principal por costo y latencia; OpenAI como respaldo cuando Gemini falla o devuelve algo inválido. El wizard de 103 preguntas (14 bloques temáticos) alimenta el pipeline y genera 8 informes vocacionales distintos por estudiante.
Fastify + TypeScript sobre MongoDB Atlas. API REST con DDD, JWT y separación clara por dominio. Fastify por su validación con JSON Schema y porque, a la escala actual, sus ganancias sobre Express se sienten.
SES en producción serio. DKIM, SPF y DMARC configurados desde el día uno — porque los correos vocacionales que llegan a spam matan el producto.
Lo que no funcionó al principio
La primera versión usaba un prompt monolítico — toda la información del estudiante metida de un golpe en el contexto. Funcionaba para 1 reporte pero se rompía cuando había que generar varios encadenados. Reescribí el flujo como un pipeline con fallback explícito entre proveedores y validación estructural en cada salto.
También sobreestimé qué tan rápido los usuarios escribirían en chat. La mayoría prefiere botones, sliders y micro-encuestas. Hoy el wizard se siente más como una conversación guiada que como un chat libre — y eso lo hace usable en cualquier teléfono.
Lo que aprendí
Las decisiones técnicas más importantes en un producto con IA no son sobre el modelo. Son sobre qué datos entran al contexto, en qué orden, cuándo dejar de generar y pedir input, y qué hacer cuando el modelo falla. El resto lo resuelven los frameworks.
Y trabajar con un equipo no técnico te obliga a defender cada complejidad. No hay nada como explicarle a una psicóloga educativa por qué necesitas dos semanas para refactorizar algo invisible para descubrir que en realidad no las necesitas.