Cómo Construí un Agente de IA que Busca Empleo Por Mí (Arquitectura Completa)
Share

La búsqueda de empleo consume horas que podrías dedicar a prepararte mejor para entrevistas o desarrollar nuevas habilidades. En este artículo te muestro cómo construí un sistema de IA que busca ofertas de trabajo, las evalúa contra mi perfil profesional, y me notifica solo las relevantes por Telegram con audio incluido.
El Problema: Búsqueda Manual Ineficiente
Antes de automatizar, mi rutina era revisar LinkedIn, Indeed, Glassdoor y otras plataformas varias veces al día. El 90% de las ofertas no aplicaban a mi perfil: salarios muy bajos, ubicaciones incorrectas, o requisitos que no cumplía. Perdía aproximadamente 2 horas diarias en esta tarea repetitiva.
La Solución: Un Agente Multi-Capa con IA
Diseñé un sistema modular en Python que ejecuta automáticamente cada vez que enciendo mi laptop. La arquitectura tiene 6 componentes principales que trabajan en secuencia:
1. Módulo de Búsqueda Multi-Plataforma
El primer componente consulta APIs de agregadores de empleo que indexan LinkedIn, Indeed, Glassdoor y ZipRecruiter simultáneamente. En lugar de visitar 4 sitios, una sola consulta trae ofertas de todas las plataformas.
# Estructura simplificada del buscador
class JobSearcher:
def search_all(self, keywords, location):
jobs = []
jobs.extend(self.search_jsearch(keywords))
jobs.extend(self.search_indeed_direct(keywords))
return self.deduplicate(jobs)2. Sistema de Filtros Estrictos
No todas las ofertas merecen mi atención. Implementé filtros obligatorios:
- Antigüedad máxima: Solo ofertas de los últimos 15 días
- Salario mínimo: Filtro configurable por tipo de rol
- Modalidad: 100% remoto o presencial en mi área
- Exclusiones: Palabras clave negativas
3. Scoring Basado en Perfil
Las ofertas reciben puntuación de 0-100 basada en coincidencia de keywords (30 pts), match de rol (25 pts), ubicación (15 pts), salario (15 pts), y bonuses por certificaciones (15 pts).
4. Análisis de Match con IA
Para las mejores ofertas, el sistema envía la descripción junto con mi perfil a un modelo de lenguaje que analiza requisito por requisito:
{
"match_percentage": 90,
"meets_requirements": ["10+ años PM", "PMP"],
"missing_requirements": ["Certificación X"],
"recommendation": "APLICAR"
}5. Notificaciones Telegram + Audio TTS
El sistema envía alertas con deduplicación inteligente y genera un briefing de audio que puedo escuchar mientras me preparo en la mañana.
Arquitectura Técnica
CRON (@reboot +5min)
↓
1. BÚSQUEDA MULTI-PLATAFORMA
↓
2. FILTROS ESTRICTOS
↓
3. SCORING BASADO EN PERFIL
↓
4. ANÁLISIS DE MATCH CON IA
↓
5. NOTIFICACIÓN + AUDIOResultados
- Tiempo: De 2 horas/día a 10 minutos
- Ofertas: Solo veo las de 60%+ match real
- Cobertura: 4 plataformas simultáneas
- Costo: ~$5-10 MXN/día en APIs
Lecciones Aprendidas
- Filtros antes de IA: Reduce costos significativamente
- Modularidad: Componentes independientes
- Estado persistente: Evita spam y duplicados
- Fallbacks: Degradación elegante si falla la IA
Conclusión
La automatización inteligente no reemplaza el juicio humano, pero elimina el trabajo tedioso de filtrado inicial. Si te interesa implementar sistemas similares, en Varela Insights ofrecemos consultoría especializada.