
Alina / Proyecto de Máster en IA
Asistente de empleo con agentes de IA
Asistente inteligente con agentes de IA y Gemini para transformar la búsqueda de empleo: cálculo explicable de compatibilidad frente al CV, simulación de entrevistas técnicas y redacción asistida de cartas.
Superar la desinformación de las ofertas de empleo y preparar candidaturas con rigor técnico, evitando filtros opacos y asegurando que la IA no invente méritos ausentes en el currículum.
Backend en FastAPI con cuatro agentes especializados en Google ADK, extracción dual de ofertas completas, Match Score matemático transparente y optimización de prompts en dos fases.
Reducción del 45% en los tiempos de respuesta y del 40% en consumo de tokens, con un prototipo funcional en React para evaluar ofertas, practicar entrevistas e investigar empresas.
- Organización
- EDEM Escuela de Empresarios
- Mi aportación
- Arquitectura de IA, agentes y backend
- Marco académico
- EDEM Escuela de Empresarios · Máster en IA / 2026
- Alcance
- Prototipo funcional (FastAPI + Google ADK + Gemini + React)
- Google Cloud
- Python
- FastAPI
- Docker
- Selenium
- React
El problema no es encontrar ofertas, sino decidir con confianza
Buscar empleo suele convertirse en un proceso agotador y lleno de incertidumbre. Los portales tradicionales publican cientos de ofertas con descripciones confusas, requisitos contradictorios y criterios excluyentes ocultos entre párrafos genéricos. El candidato invierte horas antes de saber si su perfil encaja realmente.
A esta desinformación se suma una preparación manual repetitiva y fragmentada: redactar cartas de presentación específicas, investigar la cultura corporativa en múltiples fuentes y afrontar entrevistas técnicas sin feedback objetivo ni criterios claros de evaluación.
El proyecto Alina nació en el Máster de IA de EDEM para eliminar esa fricción de principio a fin: transformar ofertas desestructuradas en datos claros, medir la compatibilidad de forma transparente y dotar al candidato de un equipo de asistentes inteligentes que potencien su candidatura con rigor técnico.
Arquitectura de IA, diseño de agentes y backend
Dentro del equipo de cuatro integrantes de Alina, mi contribución se centró en la arquitectura integral de Inteligencia Artificial, la orquestación multi-agente con Google ADK (Agent Development Kit) y el desarrollo de la API asíncrona en FastAPI.
Diseñé e implementé el pipeline de extracción y estructuración de CVs (PDF y DOCX), el algoritmo matemático de Match Score explicable y la arquitectura de prompts en dos fases para optimizar tokens y latencia en los agentes de investigación y upskilling.
Asimismo, definí el flujo colaborativo escritor-crítico para la redacción de cartas con guardrails estrictos de fidelidad al CV, coordinando con mis compañeros para que los modelos se integraran de manera reactiva con la interfaz en React mediante streaming con Server-Sent Events (SSE).
Un backend desacoplado con agentes orquestados
Para ofrecer una respuesta rápida y reactiva, separamos la interfaz web en React de la lógica de procesamiento en el backend, construido sobre FastAPI y Python 3.11. Sobre esta base, orquestamos cuatro agentes especializados con Google ADK utilizando el modelo Gemini 2.5 Flash.
Las APIs de empleo gratuitas suelen truncar las descripciones a unas pocas líneas. Para solucionarlo, construimos un pipeline dual: búsqueda automatizada combinada con un extractor propio en Selenium para obtener la vacante completa, sumado a una opción de pegado manual directo para analizar cualquier oferta sin depender de servicios de terceros.
A continuación, el esquema funcional refleja cómo convergen las entradas, se procesan en el backend y alimentan tanto el motor de compatibilidad como el dossier de preparación del candidato.
Tres entradas, un backend unificado con agentes
El currículum del candidato, la búsqueda automatizada con scraping y el pegado manual convergen en la API de FastAPI. Google ADK con Gemini 2.5 Flash procesa y deriva los datos hacia el cálculo del Match Score y cuatro agentes especializados de preparación.
Perfil del candidato
- Currículum (PDF/DOCX)
- Extracción PyPDF / docx
- Texto normalizado
Ofertas de empleo
- API de Adzuna
- Selenium Scraper en paralelo
- Oferta íntegra
Entrada directa
- Pegado manual de texto
- Sanitización de caracteres
- Fallback sin dependencias
Ingesta y normalización
FastAPI
Python 3.11
Gateway asíncrono y SSEGoogle ADK
Gemini 2.5 Flash
Orquestación multi-agenteUn backend de agentes, dos vías de salida
Scoring y compatibilidad
Algoritmo determinista
Calcular cobertura y bonus de modalidad
Match Score explicable (%)Candidato y evaluador
Preparación con agentes
Agentes satélite ADK
LoopAgent (Carta), Entrevista, Upskilling, Research
Dossier 360° verificadoCandidato a empleo
- Docker & FastAPI
- Despliegue modular reproducible y endpoints asíncronos
- Guardrails de fidelidad
- Verificación estricta contra el CV para eliminar alucinaciones
Extracción, estructuración y normalización de competencias
Los currículums y las ofertas de empleo son documentos intrínsecamente heterogéneos y desestructurados. Un PDF puede organizar las habilidades en tablas, barras laterales o párrafos narrativos, mientras que las ofertas alternan nombres comerciales, acrónimos y requisitos implícitos. Para posibilitar una comparación rigurosa, el primer paso del pipeline es la normalización de entidades.
Mediante librerías especializadas (pypdf y python-docx) y prompts extractores con esquemas estrictos de salida en Gemini, el sistema aísla las competencias técnicas (hard skills), las habilidades interpersonales (soft skills), los años de experiencia y la modalidad laboral (remoto, híbrido o presencial). Cada tecnología se mapea contra una taxonomía canónica que unifica variantes como «Postgres» y «PostgreSQL», o «K8s» y «Kubernetes».
Esta estructuración previa garantiza que los agentes posteriores no trabajen sobre texto crudo ruidoso, sino sobre perfiles semánticos comparables y auditables, sentando las bases para el cálculo matemático de compatibilidad.
El flujo de IA: matching matemático, especialización y optimización
Con los perfiles normalizados, el sistema despliega su inteligencia en tres fases complementarias: el cálculo determinista del ajuste, la activación de agentes especializados y la optimización de latencia en producción.
Para evitar la arbitrariedad de los filtros opacos de selección, el Match Score aplica una fórmula matemática transparente: divide las habilidades cubiertas y parciales entre el total de requisitos de la oferta, sumando un incentivo si coincide la modalidad preferida de trabajo. Cada punto porcentual es explicable y auditable por el usuario.
A continuación, cuatro agentes especializados entran en acción según la necesidad del candidato: uno redacta cartas de presentación fieles a su experiencia real, otro simula entrevistas técnicas con preguntas y notas cuantitativas, un tercero detecta qué habilidades le faltan sugiriendo cursos prácticos, y el último investiga a la empresa antes de la reunión.
Para optimizar la respuesta de estos agentes, separamos las llamadas al modelo en dos pasos: primero, el agente razona y consulta fuentes en texto libre; después, otra llamada estructura la respuesta final. Esta separación redujo la latencia y el consumo de tokens y evitó errores de sintaxis.
Asistente modular y simulador en tiempo real
Todo el pipeline de agentes e inferencia se materializa en una interfaz interactiva en React que empodera al candidato durante todo su ciclo de postulación. En lugar de ofrecer un simple chat genérico, la aplicación organiza la experiencia en tres espacios especializados: cálculo de compatibilidad, interacción con agentes y monitorización de rendimiento.
El candidato puede inspeccionar en vivo el desglose de sus habilidades frente a diferentes ofertas, consultar las recomendaciones personalizadas de cada agente (descargando cartas validadas o practicando entrevistas con evaluación inmediata) y comprobar la eficiencia operativa del sistema.
A continuación puedes explorar el prototipo funcional de Alina. Selecciona diferentes puestos de demostración, consulta el cálculo de compatibilidad y experimenta las salidas de los cuatro agentes inteligentes.
Asistente digital de empleo
Alina · Job Assistant
Vacante: AI Engineer & MLOps Specialist · DataVanguard Tech (Valencia / Remoto)
Modalidad oferta: Remoto · Salario: 42.000 € - 52.000 €
- Compatibilidad Global
- 80%
- Skills Cubiertas
- 5 / 8
- Brechas por Cubrir
- 3
- Bonus Modalidad
- +5 pts
Detalle de la vacante y auditoría de skills
Buscamos un perfil técnico que conecte modelos de lenguaje con servicios backend de baja latencia. El candidato formará parte de un equipo multidisciplinar encargado de orquestar agentes conversacionales con Google ADK, monitorizar inferencia y paquetizar aplicaciones en contenedores Docker sobre infraestructuras cloud.
Consultar matriz completa de competencias requeridas
| Competencia | Nivel Requerido | Categoría | Estado en CV |
|---|---|---|---|
| Python | Avanzado | Técnica | Cubierta (100%) |
| FastAPI | Avanzado | Técnica | Cubierta (100%) |
| Google ADK / LangChain | Medio | Datos / IA | Cubierta (100%) |
| Google Cloud / Vertex AI | Medio | Datos / IA | Parcial (50%) |
| Docker | Medio | Técnica | Cubierta (100%) |
| Prompt Engineering | Avanzado | Datos / IA | Cubierta (100%) |
| MLOps & Monitorización | Medio | Datos / IA | Parcial (50%) |
| Kubernetes (K8s) | Básico | Técnica | Faltante (0%) |
Desglose del Match Score
score = (5 + 2 × 0.5) / 8 × 100 + 5 (bonus)Puntuación base de habilidades: 75%.
Se aplica un +5% de bonus porque la modalidad de la vacante (Remoto) coincide con tu preferencia seleccionada (Remoto).
Veredicto del sistema:
Compatibilidad óptima. El perfil cuenta con una alta probabilidad de superar el primer filtro técnico.
Ingeniería de agentes para problemas reales
Alina consolidó tres lecciones esenciales sobre el desarrollo de sistemas basados en inteligencia artificial: primero, que los agentes deben tener límites muy estrechos: un equipo de asistentes especializados con herramientas concretas supera con creces a un modelo generalista.
Segundo, que la resiliencia en la captura de datos es prioritaria sobre cualquier algoritmo: las APIs de terceros fallan o truncan información, por lo que disponer de scrapers alternativos y entrada manual directa es lo que hace viable un producto ante contingencias reales.
Y tercero, la importancia de la honestidad algorítmica: cuando está en juego la carrera profesional de una persona, el sistema no puede permitirse alucinar. Diseñar agentes críticos que verifiquen cada afirmación frente a la realidad del currículum es una exigencia técnica y ética indispensable.
Herramientas y tecnologías
- Google Cloud
- Python
- FastAPI
- Docker
- Selenium
- React