
Novecientos CVs en tres meses.
Eso fue lo que recibió el equipo de People de una empresa de logística amiga cuando abrieron una convocatoria para ampliar el equipo de operaciones.
Tres personas en el departamento. Uno de ellos también llevaba onboarding y nóminas.
No tenían un ATS decente. El que tenían rechazaba perfiles válidos por palabras clave. Los candidatos esperaban semanas sin saber nada.
La persona que lideraba ese equipo no tenía perfil técnico. Nunca había escrito una línea de código.
Nos llega la pregunta a People Things ¿qué puedo hacer con IA para resolver esto?
Un sábado por la mañana con Claude Code y el lunes tenía un pipeline de screening funcionando.
Te cuento exactamente la propuesta
El problema real del screening que nadie quiere admitir
El screening de candidatos tiene tres problemas que se retroalimentan y que la mayoría de equipos de HR arrastra en silencio.
Primero, el tiempo. Revisar cien CVs manualmente, aunque sea leyéndolos en diagonal, consume entre 4 y 8 horas. Multiplicado por varias posiciones abiertas simultáneamente, el screening puede ocupar la mitad de la semana de un reclutador.
Segundo, el ATS tradicional. Los sistemas de seguimiento de candidatos filtran por palabras clave exactas. Un candidato excelente que describe su experiencia con vocabulario diferente desaparece del proceso sin que nadie lo sepa. El ATS no entiende contexto, no evalúa intención, no detecta potencial.
Tercero, la falta de respuesta. Según datos del sector, más del 70% de los candidatos no recibe ninguna comunicación después de enviar su CV. Eso destruye la marca empleadora, genera reseñas negativas en Glassdoor, y cierra la puerta a candidatos que podrían volver a aplicar en el futuro.
El resultado: procesos de 14 días mínimo, candidatos frustrados, y equipos de HR agotados revisando CVs que el ATS tendría que haber preclasificado bien desde el principio.
Hay una forma mejor. Y no requiere presupuesto de tecnología ni contratar a nadie.

Claude Code y por qué cambia las reglas para HR
Ya hemos hablado mucho de Claude Code en esta newsletter, pero por si no te suena, Claude Code es una herramienta de Anthropic que funciona como un developer experto disponible en tu terminal o en tu navegador.
La diferencia con ChatGPT es importante: Claude Code no solo genera texto. Puede leer archivos de tu ordenador, escribir scripts completos, ejecutarlos, ver los errores, corregirlos, e iterar hasta que el código funciona creando productos desde 0.
Para alguien sin perfil técnico, eso significa que puedes describirle en lenguaje natural lo que necesitas, y él construye la herramienta. Tú revisas el resultado. Él lo ajusta.
No necesitas saber programar. Necesitas saber describir tu problema.
Y los problemas de HR, como el screening de candidatos, son exactamente el tipo de problema que Claude Code resuelve bien: lógica clara, criterios definibles, proceso repetible.
El sistema paso a paso: tres iteraciones concretas
La persona del equipo de logística construyó su sistema en tres conversaciones con Claude Code. Así fue cada iteración.
Iteración 1: el script de lectura y puntuación
El primer mensaje que le envió a Claude Code fue este:
Necesito un script en Python que haga lo siguiente:
Lea todos los archivos PDF de una carpeta llamada /cvs
Extraiga el texto de cada CV
Evalúe cada CV según estos criterios con estos pesos:
[CRITERIO_1: experiencia en gestión de equipos]: [PESO_1: 30%]
[CRITERIO_2: conocimiento del sector logístico]: [PESO_2: 25%]
[CRITERIO_3: manejo de herramientas de planificación]: [PESO_3: 20%]
[CRITERIO_4: habilidades de comunicación escrita]: [PESO_4: 15%]
[CRITERIO_5: formación relevante]: [PESO_5: 10%]
Para cada criterio, asigne una puntuación de 0 a 10 basada en la evidencia encontrada en el CV
Calcule un score_total ponderado
Genere una recomendación: SHORTLIST, REVISAR o DESCARTAR
Escriba un email personalizado de 3 líneas para los candidatos de SHORTLIST
Guarde todo en un archivo results.json
Claude Code generó el script completo, instaló las dependencias, y lo ejecutó en la carpeta de prueba. En 20 minutos tenían un scorer funcionando.
Iteración 2: ajustar el output y añadir contexto de la posición
El primer output era demasiado genérico. En la segunda iteración pidió que el análisis incluyera el contexto específico del puesto:
El script funciona bien pero el análisis es demasiado genérico. Necesito que el prompt que envías a Claude incluya:
La descripción completa del puesto (la leeré desde un archivo job_description.txt)
Instrucciones para que el análisis sea específico a ESE puesto, no genérico
Que el email de shortlist mencione 1 punto específico del CV del candidato que coincide con los requisitos del puesto
También quiero que el JSON de salida incluya un campo "justificacion" con
2-3 frases explicando por qué ese score, para poder revisarlo yo después.
Iteración 3: manejo de errores y reporte final
Hay dos problemas:
1. Algunos PDFs son imágenes escaneadas y el texto sale vacío. Para esos casos,
márcalos como "LECTURA_FALLIDA" en el JSON y no los puntúes.
2. Además del results.json, genera un results.csv con columnas:
nombre, email, score_total, recomendacion
para poder abrirlo en Excel o Google Sheets directamente.
3. Al final del proceso, imprime en pantalla un resumen: cuántos en SHORTLIST,
cuántos en REVISAR, cuántos en DESCARTAR, cuántos con error de lectura.
Tres iteraciones. Tiempo total: un sábado por la mañana.
Antes y después: el proceso en números
╔══════════════════════════════════════════════════════════════╗
║ PROCESO DE SCREENING — ANTES VS DESPUÉS ║
╠══════════════════════════════════════════════════════════════╣
║ ║
║ ANTES (proceso manual) DESPUÉS (con IA) ║
║ ───────────────────── ────────────────── ║
║ ║
║ Día 1-2: Recepción CVs Hora 0: CVs en carpeta ║
║ Día 3-5: Primera revisión Hora 1: Script ejecutado ║
║ Día 6-8: Segunda revisión Hora 2: Shortlist lista ║
║ Día 9-10: Shortlist manual Hora 3: Emails enviados ║
║ Día 11-12: Emails candidatos ║
║ Día 13-14: Entrevistas Día 2: Entrevistas ya ║
║ ║
║ Time-to-shortlist: 10-12 días Time-to-shortlist: 3h ║
║ Sin respuesta: ~70% Sin respuesta: 0% ║
║ Criterios: variables Criterios: consistentes ║
║ Escalabilidad: lineal Escalabilidad: ilimitada ║
║ ║
╚══════════════════════════════════════════════════════════════╝
El cambio más importante no es la velocidad. Es la consistencia. Todos los CVs se evalúan con los mismos criterios, con el mismo nivel de atención, sin el efecto fatiga que aparece en la revisión manual cuando llevas el CV número 47.
El JSON de scoring: exactamente qué genera el sistema
{
"candidato": {
"nombre": "Laura Martínez García",
"email": "[email protected]",
"archivo": "laura_martinez_cv.pdf"
},
"score_total": 7.4,
"score_por_criterio": {
"gestion_equipos": {
"puntuacion": 8,
"peso": 0.30,
"evidencia": "Lideró equipo de 12 personas en plataforma logística 3 años"
},
"conocimiento_sector": {
"puntuacion": 9,
"peso": 0.25,
"evidencia": "5 años en operaciones de última milla, certificación APICS"
},
"herramientas_planificacion": {
"puntuacion": 6,
"peso": 0.20,
"evidencia": "Menciona SAP y Excel avanzado, sin WMS específico"
},
"comunicacion_escrita": {
"puntuacion": 7,
"peso": 0.15,
"evidencia": "CV bien estructurado, logros cuantificados, sin errores"
},
"formacion": {
"puntuacion": 6,
"peso": 0.10,
"evidencia": "Grado en ADE, sin postgrado en supply chain"
}
},
"recomendacion": "SHORTLIST",
"justificacion": "Perfil sólido con experiencia directa en gestión de equipos logísticos y conocimiento profundo del sector. La puntuación en herramientas es el único punto débil, compensado por la solidez del resto. Candidata prioritaria para primera entrevista.",
"email_personalizado": "Hola Laura, hemos revisado tu candidatura y nos ha llamado especialmente tu experiencia liderando equipos en entornos de última milla durante tres años. Nos gustaría conocerte mejor — te escribimos esta semana para proponerte una primera conversación. Gracias por tu interés."
}
Conecta el script con Gmail y Drive: el workflow n8n
La arquitectura completa:
Gmail (candidatura entrante)
│
▼
[n8n — Watch Gmail inbox]
│
▼
[n8n — Extraer adjunto CV]
│
▼
[n8n — Subir CV a Drive/carpeta /cvs]
│
▼
[n8n — Ejecutar script Python de scoring]
│
▼
[n8n — Leer results.json]
│
├──► SHORTLIST → [Enviar email personalizado] + [Añadir fila en Sheets]
│
├──► REVISAR → [Crear tarea en Notion para revisión manual]
│
└──► DESCARTAR → [Enviar email de agradecimiento estándar]
Nodo trigger Gmail:
{
"name": "Watch Gmail — Candidaturas entrantes",
"type": "n8n-nodes-base.gmailTrigger",
"parameters": {
"pollTimes": {
"item": [{ "mode": "everyMinute" }]
},
"filters": {
"labelIds": ["Label_candidaturas"],
"q": "has:attachment filename:pdf subject:(candidatura OR aplicación OR CV)"
},
"options": {
"attachmentsPrefix": "attachment",
"dataPropertyAttachmentsPrefixName": "attachment"
}
}
}
Nodo ejecución del script:
{
"name": "Ejecutar script de scoring",
"type": "n8n-nodes-base.executeCommand",
"parameters": {
"command": "cd /home/rrhh/screening && python3 screening.py --cv {{ $json.attachment_path }} --job job_description.txt --output /tmp/result_{{ $json.candidato_id }}.json"
}
}
Qué mejora exactamente (y qué no)
Después de implementar este tipo de sistema, los equipos de HR reportan tres mejoras concretas:
Time-to-shortlist: Pasa de 10-14 días a 24-72 horas. En procesos competitivos, esto marca la diferencia: los mejores candidatos tienen varias ofertas en paralelo, y el equipo que responde antes tiene ventaja.
Response rate: Sube del 30% al 100% de respuestas. Todos los candidatos saben en qué punto está su candidatura. Eso solo mejora significativamente la percepción de la marca empleadora.
Calidad del shortlist: La consistencia del criterio elimina el sesgo de fatiga y el sesgo de confirmación que aparece en revisiones manuales largas. El equipo puede calibrar los criterios y los pesos después de cada proceso para afinar el modelo.
Lo que el sistema no mejora por sí solo: la calidad de las entrevistas, la decisión final de contratación, o la experiencia del candidato una vez que entra en el proceso. Eso sigue siendo humano.
El sistema debe:
Leer todos los PDFs de una carpeta /cvs
Leer la descripción del puesto desde un archivo job_description.txt
Evaluar cada CV con estos criterios y pesos:
Para cada CV generar un JSON con:
nombre, email (extraídos del CV si están)
score de 0-10 por criterio con evidencia textual
score_total ponderado
recomendacion: SHORTLIST / REVISAR / DESCARTAR (SHORTLIST si score >= 7, REVISAR si 5-6.9, DESCARTAR si < 5)
justificacion de 2-3 frases
email_personalizado de 3 líneas para candidatos SHORTLIST
Guardar results.json con array de todos los candidatos
Guardar results.csv con columnas: nombre, email, score_total, recomendacion
Imprimir resumen al final
Para terminar
La barrera para automatizar el screening de candidatos no es técnica. Nunca lo fue.
Es de mentalidad: creer que necesitas un equipo de IT, un presupuesto de software, o un perfil técnico en el equipo para construir algo así.
Claude Code elimina esa barrera. No escribe código por ti para que lo publiques en producción a ciegas. Lo hace contigo, paso a paso, explicándote qué hace cada parte y ajustando cuando algo no funciona.
Un sábado es suficiente para tener el primer sistema funcionando. Un par de semanas de refinamiento para tenerlo integrado en tu proceso real.
El resultado no es solo eficiencia operativa. Es poder dedicar tu tiempo a las partes del proceso de selección que realmente importan: las conversaciones con candidatos, la evaluación de fit cultural, la toma de decisiones estratégicas sobre el equipo.
Para eso no hay IA que lo sustituya.
Si quieres aprender Claude Code y cómo construir flujos y agentes como este, hay algo diseñado para ti

Como ya sabéis colaboramos con Próximo en el AI VP of People Fractional Program
No es un curso de IA para RRHH. Es un programa de ocho semanas para convertirte en la figura que las empresas medianas van a necesitar con urgencia en los próximos dos años.
Cada bloque tiene entregables concretos: flujos reales en producción, política de uso de IA aprobada, framework de presentación al board. Al terminar, tienes un portfolio de trabajo real, no un certificado.
La primera cohorte arranca el 15 de Abril de 2026. Plazas limitadas a 30 participantes (ya quedan muy pocas)
PD: Y si quieres upskilling en IA para toda tu empresa, Próximo puede ayudarte también.