Ficha técnica
| Tipo | Introdução + Demonstração + Atividade Prática + Desafio |
| Bloco | AI no RH · Terceira atividade prática da aula |
| Duração | 14 minutos |
| Ferramenta | Claude Code ou Claude Cowork (modelo Sonnet 4.6) |
| Pré-requisito | AP01 (vaga.md na pasta) e AP02 (12 currículos lidos na pasta lumina-triagem/) |
| Entregável | Os 12 candidatos pontuados de 0 a 100, com positivos, negativos e recomendação (entrevistar, talvez, descartar) |
Esta é a AP do coração da ferramenta. A AP01 escreveu o gabarito. A AP02 leu os currículos. Agora a AP03 compara cada currículo contra o gabarito e dá uma nota, com a justificativa do que pesou pra cima e pra baixo.
Contexto: você ainda é o Rafael. A pilha de 12 currículos já tá lida pelo Claude. O que falta é a parte que sempre te trava: ler tudo de novo na cabeça pra decidir nota e recomendação. É aqui que entra a regra: obrigatórios pesam mais que desejáveis. Um currículo bonito de Java sem React despenca. Um currículo enxuto que bate os 3 obrigatórios sobe.
A Marina Souza chegou na pilha como currículo nº 247. O Rafael nunca abriu. Tinha lido 70 dos 380, parou de cansaço, foi pros 8 que mais brilharam na superfície. O resultado: 0 contratações.
Quando o Claude roda o score, a Marina aparece com nota 94: 5 anos de React e Node, 2 anos em fintech, já integrou gateway de pagamento. Falta AWS, que é desejável. Recomendação: entrevistar. Era a primeira pessoa que ele devia ter chamado.
Score sozinho vira fé. "O Claude deu 94, eu chamo" não convence a liderança que abriu a vaga, nem o time de produto que vai sentar pra entrevista. Score + positivos + negativos + recomendação é o que torna a decisão defensável.
Cada nota tem que apontar pra uma linha do currículo. É isso que separa triagem com IA de adivinhação.
A regra é simples e ela é o que protege a triagem de ruído: obrigatórios pesam mais que desejáveis. Se faltar 1 obrigatório, o teto do score cai. Não importa o quanto o resto do currículo brilhe.
É por isso que o Anderson, currículo nº 22, com backend Java sólido e 10 anos de experiência, sai com nota 47. Não tem React, não tem Node. Currículo bonito, vaga errada. E é por isso que a Marina, com 5 anos de React e Node, 2 anos em fintech e integração de gateway, sobe pra 94 mesmo sem AWS. AWS é desejável, dá pra aprender.
80 a 100, entrevistar: cumpre os 3 obrigatórios e ainda tem desejáveis. Vai pra primeira leva de entrevistas.
50 a 79, talvez: cumpre os obrigatórios mas falha em 1 ou tem alguma fraqueza relevante. Vai pra fila de espera.
0 a 49, descartar: não cumpre 1 ou mais obrigatórios. Currículo fora de stack ou abaixo do mínimo de experiência.
É essa hierarquia que faz o ranking sair limpo. Sem ela, currículo bem escrito em stack errada ganharia da Marina. O gabarito separa o que elimina do que soma.
O score sozinho diz "94". Não diz por quê. Pra triagem virar processo confiável, cada nota precisa apontar pra linhas do currículo. É a parte da AP03 que transforma a IA em colega de time, não em caixa preta.
Se você precisa reler o currículo pra justificar a nota, o score não tá fazendo o trabalho. A nota e a justificativa têm que sair juntas, do mesmo lugar.
É isso que dá pra você responder à liderança: "a Marina tá em primeiro porque tem 5 anos de React e Node, passou por fintech e integrou gateway. Falta AWS, é desejável, vamos perguntar na entrevista". Em 1 frase, decisão fundamentada.
A AP03 continua dentro de lumina-triagem/, a mesma pasta que você criou na AP01 e populou na AP02. Ela já tem o vaga.md e os 12 currículos lidos.
Se chegou aqui sem ter feito a AP02, rebobina e faz primeiro. O score precisa dos currículos abertos na pasta pra rodar.
O professor mostra o fluxo em 3 movimentos: baixa a rubrica de score, pede pro Claude rodar a nota da Marina em JSON e depois expande pra positivos, negativos e recomendação. A ideia é provar que o JSON é a peça que liga AP03 e AP04.
Fluxo da demo
Baixa a rubrica-de-score.md, salva ao lado do vaga.md. A rubrica diz como o Claude deve pesar obrigatórios vs desejáveis e qual faixa de nota cai em entrevistar, talvez ou descartar.
No Claude já aberto na pasta, manda "lê a rubrica e a vaga, escolhe um currículo qualquer e me devolve um JSON com candidato, arquivo e score". O Claude lê, escolhe, devolve algo como { candidato: "Marina Souza", arquivo: "curriculo_247.pdf", score: 94 }.
Em seguida, o professor pede a versão completa: "agora me devolve no mesmo JSON, mas inclui positivos, negativos e recomendação". O Claude expande: a Marina tem 5 anos de React e Node, passou por fintech, integrou gateway. Falta AWS. Recomendação: entrevistar.
JSON é estrutura. Quando a AP04 for ordenar os 12 candidatos do melhor pro pior, ela precisa de uma lista de objetos com o mesmo formato. Texto livre obriga você (ou o Claude) a reformatar tudo de novo.
Pedir JSON desde a AP03 economiza retrabalho e deixa o ranking da AP04 sair em 1 mensagem.
- A Marina sobe sem AWS. O Claude entendeu que AWS é desejável e não derruba o score. A Marina sai com 94: 5 anos de React e Node, 2 anos em fintech, integrou gateway, falta AWS. Se ela tivesse caído pra 60 por causa do AWS, a rubrica não tava sendo respeitada. Score alto + 1 negativo de desejável = entrevistar.
- Currículo bonito em stack errada despenca. O Anderson, com backend Java forte, sai com 47. O Claude não foi enganado pelo brilho do currículo. Sem React e sem Node, os 2 obrigatórios principais caem, e o teto do score cai junto. Recomendação: descartar. É o que o Rafael não conseguiu enxergar na pilha lendo no olho.
- Positivos e negativos citam o currículo. Não aparece "perfil interessante" ou "bom encaixe". Aparece "5 anos de React e Node", "2 anos numa fintech", "não menciona AWS". Cada justificativa é uma linha do currículo. É isso que torna o score defensável pra liderança.
Agora você roda o score na pasta lumina-triagem/. Continua dentro da mesma pasta da AP01 e AP02, com o vaga.md e os 12 currículos já lidos. 3 passos lineares: baixa a rubrica, pede o score em JSON, depois expande pra positivos, negativos e recomendação.
- A Marina aparece com score 94 e arquivo
curriculo_247.pdf. - Os positivos citam linhas do currículo, não adjetivos: "5 anos de React e Node", "2 anos numa fintech", "integrou gateway".
- O único negativo da Marina é "não menciona AWS", sem virar motivo de descarte.
- A recomendação final é entrevistar.
Antes de rodar o score, salva a rubrica-de-score.md dentro da pasta lumina-triagem/, ao lado do vaga.md e dos currículos. A rubrica diz pro Claude como pesar obrigatórios vs desejáveis e qual faixa de nota cai em entrevistar, talvez ou descartar.
Detalhamento: arrasta o arquivo baixado pra pasta do projeto. Confirma que o Claude vê a rubrica-de-score.md listada junto do vaga.md e dos 12 currículos. Sem rubrica, o Claude inventa o peso e o score sai inconsistente entre candidatos.
Agora pede pro Claude rodar a nota da Marina, ou de qualquer candidato pra começar. O JSON é a peça que liga AP03 e AP04. Cole o prompt abaixo no chat:
Resultado esperado: o Claude deve devolver exatamente este JSON, ou muito próximo dele:
Detalhamento: se o número sair entre 90 e 96, o Claude entendeu a rubrica. Se sair abaixo de 80, ele tá tratando AWS como obrigatório, e você precisa reforçar a leitura da rubrica-de-score.md. Se vier prosa em vez de JSON puro, pede de novo dizendo "só o JSON, sem texto fora".
Agora a parte que torna o score defensável. Pede pro Claude expandir o mesmo JSON com positivos, negativos e recomendação. Cada item de positivo e negativo precisa citar uma linha do currículo, não usar adjetivo.
Resultado esperado: o JSON expandido fica assim, com a Marina entrando como entrevistar:
O que avaliar na resposta:
- Os positivos citam linhas do currículo (números de anos, nome da empresa, tecnologia), não adjetivos como "perfil forte".
- O único negativo é AWS faltando, e a justificativa deixa claro que é desejável.
- A recomendação é entrevistar, batendo com a faixa de score 80 a 100 da rubrica.
- O JSON tá fechado, sem prosa antes ou depois. Pronto pra AP04 consumir.
Se o resultado bater nos 4 pontos, repete o mesmo prompt trocando o nome do arquivo pra cobrir os outros 11 candidatos. Você acabou de pontuar a pilha inteira.
Você sai desta atividade com
- A
rubrica-de-score.mdsalva na pastalumina-triagem/, junto dovaga.mde dos 12 currículos. - A Marina Souza pontuada com 94, JSON fechado com positivos, negativos e recomendação entrevistar, batendo com o gabarito da aula.
- O método na mão pra rodar a mesma chamada nos outros 11 candidatos, gerando 12 JSONs prontos pra alimentar a AP04.
- A confiança de que cada nota aponta pra linhas do currículo, não pra adjetivos. É o que torna a triagem defensável pra liderança.
A Marina chegou na pasta como currículo nº 247 dos 380. O Rafael nunca abriu. Agora ela sai daqui com nota 94 e recomendação entrevistar, justificada em 3 linhas do próprio currículo. A simetria fecha: o sistema põe em primeiro a pessoa que ele tinha enterrado na pilha.
É a tese do workshop em prática: você descreve o resultado, o Claude faz o trabalho. Você descreveu vaga, currículos e rubrica. O Claude pontuou.
Você pontuou a Marina com o gabarito fictício da Lúmina. Agora repete o método com a sua vaga real e os currículos que tão parados na sua pilha. Pode ser qualquer área: comercial, operações, marketing, tech, não importa.
O que fazer:
- Use o
vaga.mdque você escreveu no desafio da AP01 e a pasta com os currículos da AP02. Se ainda não fez, volta e faz primeiro: o score precisa do gabarito e dos arquivos lidos. - Adapte a
rubrica-de-score.mdpra sua vaga. Mantenha a regra de obrigatórios pesarem mais que desejáveis e a faixa de notas (80 a 100 entrevistar, 50 a 79 talvez, 0 a 49 descartar). Só mexa nos pesos se sua vaga tiver mais que 3 obrigatórios. - Rode o Passo 02 em 1 candidato pra calibrar: peça o score em JSON puro. Se o número fizer sentido pra você (alto pra quem cumpre os obrigatórios, baixo pra quem não cumpre), tá calibrado.
- Rode o Passo 03 em 5 candidatos, expandindo cada JSON com positivos, negativos e recomendação. Confira se cada item dos positivos cita uma linha do currículo, não adjetivo.
- Pegue 1 dos 5 e leia o currículo na mão. Compare com a justificativa do Claude. Se bater, você acabou de provar pra você mesmo que a triagem com IA é defensável. Se não bater, ajusta a rubrica ou o
vaga.mde roda de novo.
Com os JSONs prontos, a AP04 fecha a triagem. Você vai pedir pro Claude ordenar os 12 candidatos do melhor pro pior, devolver o ranking final e mostrar quem vai pra entrevista, quem fica em espera e quem sai.
É onde a Marina, currículo nº 247 que o Rafael nunca abriu, sobe pra 1º lugar. A pontuação tá pronta. Hora de ranquear.