2 pontos por GN⁺ 3 시간 전 | 1 comentários | Compartilhar no WhatsApp
  • Ao executar repetidamente o agente de recrutamento ATS open source do HackerRank com o mesmo currículo e o mesmo comando, as notas variaram de 66 a 99 pontos; com um corte de 85 pontos, o resultado foi que 65% seriam reprovados
  • A ferramenta faz parsing de currículos em PDF e chama o LLM 6 vezes para estruturar informações básicas, experiência, formação, habilidades, projetos e prêmios; depois adiciona informações do GitHub e avalia em uma escala de 100 pontos + 20 pontos de bônus
  • As habilidades técnicas foram quase constantes, com 8/10 pontos em 98 de 100 execuções, mas a avaliação de projetos oscilou entre “falta complexidade arquitetural” e “demonstra deployment real”, mostrando grande variabilidade
  • A não determinismo permaneceu não só com temperature 0,1 no modelo padrão gemma3:4b, mas também com temperature 0; mesmo trocando para Gemini, houve 28% de reprovação considerando um corte de 60 pontos
  • O item de experiência deu 25/25 pontos até para um currículo antigo com apenas um estágio, de modo que a pontuação por LLM pode virar uma filtragem baseada em sorte, em vez de diferenciar a qualidade dos candidatos

O mesmo currículo recebe notas diferentes a cada execução

  • O hiring-agent, ATS open source do HackerRank, passou a ser testado depois de ganhar atenção no LinkedIn e no Reddit
  • A nota da primeira execução foi 90/100; depois de remover mensagens de saída usadas para debug e rodar novamente com o mesmo currículo e o mesmo comando, o resultado foi 74/100
  • Ao desativar DEVELOPMENT_MODE e repetir a execução 100 vezes, a faixa de notas se abriu para 66 a 99 pontos
  • Se o critério de aprovação da empresa for 85 pontos, o mesmo currículo é reprovado com 65% de probabilidade

Pipeline de avaliação e estrutura de pontuação

  • A ferramenta faz parsing do currículo em PDF para texto e então chama o LLM várias vezes para estruturar as informações do candidato
    • Informações básicas
    • Experiência
    • Formação
    • Habilidades
    • Projetos
    • Prêmios
  • Ela escaneia o perfil do GitHub e os principais repositórios, anexa essas informações como contexto adicional e envia o conjunto completo ao LLM para avaliação de uma só vez
  • O modelo padrão é o gemma3:4b, executado localmente, com temperature definida em 0,1
  • A nota é de até 100 pontos, com até 20 pontos de bônus adicionais
    • Contribuições open source: 35 pontos
    • Projetos pessoais: 30 pontos
    • Experiência profissional: 25 pontos
    • Habilidades técnicas: 10 pontos
    • Experiência em startup, site de portfólio, blog técnico etc.: até 20 pontos de bônus

Itens consistentes e itens instáveis

  • Habilidades técnicas foram quase consistentes, com 8/10 pontos em 98 de 100 execuções
    • A presença de tecnologias como React se parece mais com um checklist, deixando pouco espaço para julgamento subjetivo do LLM
  • Já o item projetos teve julgamentos que variaram muito a cada execução
    • Em uma execução, os projetos foram avaliados como tendo “falta de complexidade arquitetural”
    • Em outra execução, foram avaliados como “demonstra deployment real”
  • Temperature 0,1 é uma configuração baixa, mas reduzir para temperature 0 não faz o problema desaparecer
  • Em uma issue do GitHub aberta em outubro de 2025, mesmo com temperature 0, seis execuções consecutivas deram notas diferentes: 27, 34, 32, 34, 34, 30

A instabilidade permanece mesmo trocando de modelo

  • Como o gemma3:4b é um modelo local, o efeito do modelo também foi verificado
  • Ao usar o Gemini, a distribuição das notas ficou mais estreita, de 48 a 64 pontos
  • Mas, se o corte for 60 pontos, o candidato é reprovado com 28% de probabilidade independentemente do conteúdo do próprio currículo
  • A pontuação de open source ficou mais consistente, mas a nota de projetos continuou oscilando bastante

O problema oposto na nota de experiência: consistente, mas inútil

  • O item de experiência deu 25/25 pontos em todas as execuções
  • Mesmo um currículo antigo com apenas um estágio recebeu 25/25 pontos
  • O item Production no prompt de avaliação tem apenas duas linhas
    • Analisar experiência real de trabalho, estágio e produção nas seções work e volunteer
    • Dar consideração adicional a papéis de fundador, cofundador e engenheiro inicial em startup
  • Não há critérios, exemplos ou pontos de referência que separem 15 de 25 pontos
  • Como resultado, o estágio de um engenheiro júnior, um principal engineer com 10 anos de experiência em sistemas distribuídos e o currículo usado no teste podem receber todos 25/25 pontos

Riscos práticos na triagem de currículos

  • Usar LLM para fazer parsing de currículos em dados estruturados ou verificar se o candidato conhece Python é um caso de uso relativamente adequado
  • Julgar se a experiência de um candidato vale 18 ou 24 pontos gera um resultado mais próximo de um vibe-check
  • A estrutura em que open source e projetos somam 65% do peso também pode distorcer decisões de contratação
    • Ela pode avaliar melhor um candidato com 2 estágios e um projeto open source do que um engenheiro com 30 anos de experiência que criou o S3
    • Um engenheiro que fez trabalhos importantes que não ficaram registrados no GitHub pode perder mais da metade da pontuação
  • Engenheiros com autoridade para adotar ferramentas de IA na triagem de currículos devem tomar cuidado: uma ferramenta que não consegue diferenciar qualidade pode acabar sendo apenas um mecanismo para eliminar candidatos

Correções

  • A linha 1 do template resume_evaluation_criteria.jinja contém “Software Intern”
  • Essa expressão não está documentada e não é referenciada em nenhum outro lugar do repositório
  • O mesmo template, mais adiante, dá bônus a papéis de fundador, cofundador e engenheiro inicial em startup
  • Mesmo ao inserir explicitamente um prompt de Senior SWE e executar novamente, o resultado foi o mesmo, e as dimensões de pontuação funcionaram independentemente do nível do cargo

1 comentários

 
GN⁺ 3 시간 전
Opiniões no Hacker News
  • É surpreendente quanta gente não sabe que um LLM opera como um processo puramente probabilístico, então é bom ver um texto aprofundado desses
    Estou procurando emprego e talvez seja por isso que esteja tão difícil receber retornos hoje em dia. Parece que o currículo é simplesmente jogado em algum buraco negro de LLM, e ninguém sabe de fato como ele funciona
    A explicação do texto, “temperature 0.1 — um valor baixo, considerado como algo que leva o modelo a uma saída determinística”, não é precisa. Temperature não é um interruptor de determinismo, mas um valor que afeta a distribuição de amostragem; ela só fica mais concentrada, mas continua sendo uma distribuição

    • Em tese, temperature 0 pode tornar um LLM determinístico
      Para ser mais rigoroso, temperature 0 em si não existe. Matematicamente, à medida que a temperature se aproxima de 0, a distribuição fica cada vez mais pontuda, a amostra mais provável se aproxima quase do infinito, e o restante se aproxima quase de 0
      Em implementações reais, temperature=0 não usa a fórmula aplicada a valores diferentes de 0; para evitar divisão por zero, ela normalmente escolhe a amostra mais comum em uma ramificação separada de um if
      Porém, por causa de processamento em lote ou erros de ponto flutuante específicos de cada implementação, a própria distribuição de probabilidades muitas vezes muda a cada execução, e, como resultado, a amostra também muda
    • Toda compreensão de texto é um problema de inferência sob incerteza. Nem sempre dá para ter certeza de qual “witch” as pessoas estão falando, e, qualquer que seja o processo seletivo usado, a pessoa contratada pode ter sucesso ou fracassar
      Duas pessoas podem olhar o mesmo currículo e chegar à mesma conclusão, e dois pacientes com os mesmos sintomas e quadro clínico podem ter doenças diferentes
      A explicação de que a IA antiga morreu principalmente por causa do custo de manter bases de conhecimento não me convence muito; vejo como ponto central, em vez disso, a ausência de um sistema geral de inferência que lidasse com incerteza
      Para mim, quando Spock dizia coisas como “Capitão, a probabilidade de sobrevivência nesta missão é de 21%”, isso sempre soou como uma piada recorrente. Do ponto de vista bayesiano, também há distribuições de probabilidade sobre distribuições de probabilidade, então “a chance de sobrevivência nesta missão é β(5,1)” fica mais perto de uma formulação correta
      Nesse sentido, colocar o currículo naquela máquina 100 vezes e observar a distribuição de probabilidade das pontuações também não é algo tão estranho assim
      [1] Dito isso, sou o tipo de maluco que fica deitado na cama organizando imagens no tablet e continua até o sistema visual entrar em colapso
    • Para deixar claro, temperature 0 é determinística e, para entradas completamente idênticas, produz a mesma saída com qualquer escolha de seed
      Mas, se for MoE, entradas duplicadas também precisam ser idênticas no lote inteiro. Vizinhos no lote podem influenciar a escolha dos especialistas
      O kernel precisa ser determinístico, e, em modelos de raciocínio, não pode haver um comutador de nível de esforço em escala de sistema que reaja a coisas como a carga total do cluster
      Em resumo, na infraestrutura de nuvem existente, temperature 0 provavelmente também não é determinística, mas em inferência na borda pode ser deterministicamente bastante estável
      Quanto à expressão de que 0.1 é mais determinístico, acho um resumo bem razoável. Com temperature 0.1, você não acaba amostrando “a resposta de temperature 0” com muito mais frequência do que com temperature 0.9?
    • Tenho vários colegas autoproclamados especialistas em IA que repetem isso como se fosse evangelho
      Já ouvi incontáveis vezes a frase “para obter resultados consistentes, defina a temperature como 0
    • Uma distribuição em que toda a massa de probabilidade está concentrada em um único resultado é determinística, então, em princípio, definir a temperature como 0 deveria produzir uma saída determinística
      Há alguns motivos pelos quais isso pode não acontecer, mas, quando se executa um modelo local, como o autor fez, acho que esses motivos não se aplicam
  • Somando a tendência de a IA “preferir” código criado por IA a outros vieses, esse tipo de abordagem provavelmente é muito ilegal na UE por violar as leis antidiscriminação de várias maneiras
    Filtrar currículos aleatoriamente porque há currículos demais, em geral, pode ser considerado aceitável. Mas precisa ser de fato aleatório e independente do conteúdo do currículo
    Em IA, a aleatoriedade não é independente da avaliação real do currículo, então isso não se aplica
    Em geral, não dá para garantir que a IA não aplique vieses sistemáticos, e também há sinais fortes de que isso provavelmente acontece
    Pessoas podem ser treinadas e instruídas a ignorar vieses. Claro que isso também não funciona de forma confiável, mas pelo menos cria uma estrutura em que a responsabilidade pelo viés ilegal é delegada ao recrutador que desobedeceu às instruções
    Já no uso de IA, o usuário é responsável independentemente do que tenha instruído. Também é possível, tecnicamente, “mostrar ou provar” que uma IA específica é fortemente enviesada em um contexto específico. Com funcionários humanos isso também é tecnicamente possível, mas na prática está longe de ser fácil
    No fim, o risco jurídico sai de um nível “individual e em grande parte negável” para o campo do viés sistematicamente demonstrável. Em outras palavras, quando se sabe que alguém usa IA em recrutamento, as pessoas passam a poder atacá-lo juridicamente de forma sistemática

    • Tudo se correlaciona com tudo [1]
      Ou seja, mesmo olhando só pela matemática, há uma grande probabilidade de que isso se correlacione de alguma forma com raça, gênero e outros grupos protegidos nos EUA
      Por isso, mesmo nos EUA, um bom processo poderia tornar isso ilegal. Nem seria preciso necessariamente vencer; só aguentar tempo suficiente no tribunal já poderia deixar outras empresas com medo de usar isso
      Eu não gostaria de estar na posição de réu tendo que provar que meu seletor de IA cumpre integralmente todas as leis trabalhistas de contratação. Seria um pesadelo
      [1]: https://gwern.net/everything
    • Não há problema nenhum em filtrar currículos de forma totalmente aleatória e independente do conteúdo
      Pegar o quarto currículo da pilha e oferecer a vaga a essa pessoa é uma forma idiota, mas completamente justa, de tomar uma decisão de contratação
      Mas IA é muito boa em capturar vieses, então não seria surpreendente se, ao pedir que filtre currículos, ela passasse a usar como critério fatores que jamais deveriam ser critérios, como o nome do candidato
      Pode ser algo como: todos os currículos que dizem ter corrigido um typo em um grande projeto open source passam, enquanto currículos que mencionam apenas projetos próprios são reprovados com 60% de probabilidade. Nesse caso, você acaba perdendo mais candidatos bons do que ruins
    • Não sei se seria tão fácil provar que isso viola requisitos de não discriminação relacionados a emprego, como a Council Directive 2000/78/EC
      Concordo que, por funcionar como uma máquina de apostas irracional, pode haver efeitos indesejados de discriminação indireta. Mas provavelmente não seria fácil demonstrar que há discriminação por motivo de “religião ou crença, deficiência, idade ou orientação sexual”. É possível, mas os advogados teriam muito trabalho para provar isso em tribunal
      A parte mais interessante é o EU AI Act. Essa parte ainda não entra em vigor até 2 de dezembro de 2027, mas sistemas de IA usados para recrutamento ou seleção de pessoas naturais, especialmente para veiculação de anúncios de emprego direcionados, análise e filtragem de candidaturas e avaliação de candidatos, são claramente sistemas de IA de alto risco
      Isso não significa que sejam proibidos, mas talvez no futuro LLMs possam ser excluídos dos casos de uso de IA de alto risco. Sem exceção, eles podem cair no Article 6
      Como os padrões ainda não foram publicados, não faço ideia de como cumprir a seguinte parte do Article 10 ao usar LLMs para esse tipo de tarefa
      “(f) examinar vieses que possam afetar a saúde e a segurança das pessoas, impactar negativamente direitos fundamentais ou levar a discriminação proibida pela legislação da UE, especialmente quando a saída dos dados influencia a entrada de operações futuras
      (g) medidas apropriadas para detectar, prevenir e mitigar possíveis vieses identificados conforme (f)”
      No momento, considero isso tecnicamente impossível com LLMs genéricos, mesmo que o provedor do modelo coopere plenamente. Modelos pequenos talvez permitam uma auditoria significativa
      O EU AI Act pode acabar excluindo, nos casos de uso de alto risco do Annex III, todas as abordagens estilo vibe coding do tipo “estamos usando LLM, mas não sabemos bem por quê”, e isso parece razoável
      https://eur-lex.europa.eu/eli/reg/2024/1689/oj/eng
    • Em geral, isso é ilegal segundo o GDPR Article 22
      “O titular dos dados tem o direito de não ficar sujeito a uma decisão baseada exclusivamente em tratamento automatizado, incluindo profiling, que produza efeitos jurídicos sobre ele ou que o afete de forma similarmente significativa”
      As exceções do 22(2) dificilmente se aplicam. É difícil alegar que isso seja realmente necessário, e, no contexto de emprego, o consentimento quase nunca se sustenta. Seria possível se uma lei específica da UE ou de um Estado-membro permitisse, mas seria necessária uma base legal separada
  • A esta altura, daria até para simplesmente adotar a piada de “não quero contratar gente azarada, então jogo fora metade dos currículos de olhos fechados”

    • No passado, uma importante escola de medicina do Reino Unido, a Barts and The London School of Medicine and Dentistry, parte da Queen Mary University of London, adotou seleção aleatória para candidatos qualificados
      Esse método favorecia estudantes qualificados de origens menos ricas, em vez de estudantes que tinham condições de explorar os critérios de avaliação manual de currículos, cada vez mais complexos na época
      Houve uma campanha organizada do tipo “vamos escolher futuros médicos na loteria?”, e no fim o sistema de sorteio foi discretamente abandonado
    • A quantidade total de sorte de uma pessoa ao longo da vida é constante
      Os candidatos da metade restante já gastaram parte da sorte nesta seleção, então, em média, serão menos sortudos do que a metade descartada
    • Mais fundamentalmente, normalmente há muito mais candidatos qualificados do que vagas
      Nas últimas décadas, treinamento e educação se expandiram muito, e o número de pessoas em busca de emprego continuou crescendo, mas a criação de vagas não acompanhou esse ritmo
    • A triagem de currículos por LLM pode ser um sintoma de um problema maior
      Quando dezenas de candidatos disputam uma única vaga, o empregador ainda consegue contratar alguém qualificado mesmo fazendo uma triagem ruim dos currículos ou jogando metade fora
  • “Eu sou eliminado com 65% de probabilidade. O mesmo currículo exato, sorte diferente” é, para quem já operou pipelines de contratação para cargos técnicos nos últimos anos, na verdade um número excelente
    Odeio dizer isso de forma objetiva, mas é verdade
    35% de chance de fazer um profissional técnico avançar para a próxima etapa sem esforço? Mesmo colocando perguntas de triagem específicas do domínio, já vi mais de 100 candidatos por hora. Isso dá 35 candidatos “triados” por hora
    Candidatos válidos foram filtrados para fora? Sim. Ainda assim você fica com um pool de candidatos 35 vezes maior do que precisa? Infelizmente, também sim
    O volume de candidatos é tão grande que, quando a IA não entra no processo, a probabilidade de passar para a próxima etapa é ainda muito menor. Se você não se candidatou imediatamente, e ainda por cima não usou um bot de IA para se candidatar, há mais de 50 pessoas na sua frente e um líder técnico exausto precisa, algum dia, chegar ao seu currículo
    Bônus por indicação existe por um motivo

    • Então eu tenho um sistema de pré-triagem para vender
      Com tecnologia de ponta, ele deixa passar apenas o melhor* 1% das candidaturas
      *segundo nossas métricas proprietárias, fechadas e não determinísticas, que podem ou não ser Math.random
    • Será mesmo? Ou, antes que qualquer ser humano veja, o currículo tem 65% de chance de ser ignorado, reduzindo na mesma proporção a chance de o pipeline de contratação capturar candidatos qualificados?
      Um portão que reduz a entrada de currículos só é útil quando essa redução tem correlação com qualidade. Caso contrário, ele apenas arrasta o processo seletivo ou acaba levando a uma redução desnecessária dos critérios de contratação
    • A solução lógica é o candidato se inscrever várias vezes mudando ligeiramente as informações de contato
      Como “John Schmidt”, “John J. Schmidt”, “John J. J. Schmidt”, “John Jacob J. Schmidt”, “J. J. Jingleheimer Schmidt”
    • Se não há requisito de precisão, basta avançar aleatoriamente 35% dos candidatos para a próxima etapa
      Se os primeiros 50 candidatos forem todos bots, por que você está lendo currículos na ordem de candidatura?
  • O que preocupa mais é que, se outros sistemas funcionam como esse ATS, eles parecem julgar com base em fatores que eliminariam em massa candidatos bastante razoáveis ou bons
    Por exemplo, atribuem 65 pontos à combinação de projetos pessoais e contribuições open source. Isso pode ser bom se tecnologia for seu único interesse e você não tiver família, dependentes nem um segundo ou terceiro emprego
    Mas, se você tiver qualquer uma dessas coisas, as chances parecem ficar enormemente contra você
    Fico me perguntando quantos desses sistemas são projetados para favorecer pessoas ricas, que não têm outras preocupações além de fazer faculdade ou trabalhar em um único emprego na indústria desejada, e que podem se fixar em tecnologia quase no nível de um interesse especial

    • Supervalorizar projetos pessoais e projetos open source é preocupante e ruim
      Usando a mim mesmo como exemplo: fora da empresa, quase não faço projetos pessoais. Toda a minha experiência real em programação foi durante o expediente, trabalhando para empregadores
      Meus hobbies ficam em áreas adjacentes à tecnologia, como impressão 3D, hardware/Arduino e fotografia, mas não são do tipo em que eu crio e subo um monte de projetos no GitHub
      Também jamais vou criar um CRUD ou app SaaS falso para mostrar a um potencial empregador. É perda de tempo
      Eu deliberadamente não construí nenhuma presença online desse tipo. Meu GitHub não tem repositórios públicos e eu não mantenho blog
      Essa tendência também se espalhou para a área de operações/administração de sistemas em que trabalho, e lá é até pior. Naturalmente, não subi um monte de scripts específicos do ambiente no meu GitHub; por que eu faria isso? Eles não significam nada para quem não trabalha no meu departamento na empresa atual
  • A palavra determinismo tem um efeito quase mágico de distorcer qualquer texto online que toca
    Quando ouço essa palavra, quase dá para garantir que a discussão vai para o lado errado. Ainda assim, desta vez o assunto é determinismo de verdade — mesma entrada, mesma saída — e não coisas aleatórias sem relação
    Determinismo é importante para reprodutibilidade, mas, neste caso, você realmente quer que a saída seja reproduzida? Tornar a saída de um LLM determinística é relativamente trivial. Se estiver usando batching, use kernels invariantes a batch; não ajuste simplesmente a temperature para 0 — a amostragem aleatória existe por um motivo — ou, melhor, fixe a seed. Em alguns sistemas isso já é possível
    Mas isso não torna o resultado mais útil. Só esconde o fato de que o agente na verdade não tem certeza. Veja a faixa de pontuações. Ele continua sem prever nada, só que agora dará a mesma nota todas as vezes. É isso mesmo que você quer?
    O que está acontecendo aqui é que se fornece informação de menos, basicamente um único currículo no nível de ruído, e se espera uma resposta com implicações amplas demais
    É um erro básico de design, independentemente de usar LLM ou não. Toda pesquisa, prova, lei e sistema de votação é extremamente sensível ao enquadramento porque opera com informação de menos. Só que eles, ao contrário desta coisa, não existem no vácuo

    • Não determinismo não significa que seja impossível chegar de forma estável à saída correta. Claro, às vezes pode significar isso
      Algoritmos de Las Vegas são não determinísticos, mas 100% corretos. A contrapartida é que o tempo para chegar à resposta certa pode variar bastante
      O erro aqui não foi usar um sistema não determinístico. Em certo sentido, talvez o erro tenha sido usá-lo pouco demais. Reavaliar o mesmo currículo 5 vezes e observar que a variância das notas é grande é um sinal mais útil do que avaliá-lo apenas uma vez
    • É bem sabido que juízes e examinadores humanos também não são determinísticos como gostaríamos
      Todo mundo já deve ter ouvido a história de que penas mais severas são dadas na hora anterior ao almoço
    • Não determinismo também é um recurso, não um bug
      Se você quer impedir que as pessoas otimizem para o processo de filtragem, precisa torná-lo não determinístico em alguma medida
      Por exemplo, em vez de cortar exatamente nos 100 primeiros, você aumenta exponencialmente a probabilidade de candidatos melhores passarem pelo filtro
      Assim, vale menos a pena atacar o processo de filtragem ao estilo Goodhart, porque a probabilidade quase não aumenta e há muitos lugares onde o tempo pode ser melhor gasto
  • Se o modelo-base for gemma3:4b, é um modelo bem pequeno
    Nenhum LLM é um juiz perfeito e repetível, mas plugar um modelo 4B nesse tipo de sistema é parecido com conectar um gerador de números aleatórios
    O experimento inteiro dá a sensação de que alguém queria criar um projeto ATS open source, fez um ATS com vibe coding e ajustou só até os testes passarem

    • Mesmo modelos assim podem ser ok para problemas pequenos se usados corretamente
      Provavelmente existe uma forma de análise de currículos que funcionaria bem até com esse modelo. Mas não é do tipo “ei, sucata, que projetos essa pessoa fez?”
      É preciso extração, organização, talvez comparação via OCR e mais organização, várias rodadas de análise por LLM para cada sinal, classificadores etc.
      Nada disso precisa ser um modelo grande. Usar um modelo grande melhoraria um pouco, mas, como há muito pouco contexto, esse tipo de modelo também pode funcionar bem se usado corretamente
  • Rodei o ATS eu mesmo e tive uma experiência igualmente estranha
    Ele não conseguiu encontrar meu perfil no GitHub, então me deu uma nota na casa dos 70; depois, não gostou de algumas bibliotecas Ruby conhecidas que eu criei
    Depois de rodar algumas vezes, começou a reconhecer adequadamente, mas eu sempre era penalizado pela formação acadêmica formal
    Esse tipo de coisa é nojento

    • Tive uma experiência parecida. Em uma execução, saiu algo perto de 65 pontos, porque ele não gostou do fato de eu não ter contribuições open source
      Também não conseguiu detectar certificações nem prêmios. Apliquei alguns PRs em que as pessoas sugeriram melhorias (https://github.com/Zem-0/hiring-agent), e isso ajudou, mas no geral esse ATS é fortemente enviesado a favor de pessoas com contribuições open source de grande escala no GitHub
  • Sempre me surpreendeu que empresas de tecnologia paguem mais de US$ 300 mil porque bons engenheiros são difíceis de encontrar, mas, na prática, os recrutadores trabalhem sem suporte e tenham critérios completamente diferentes para o que é um “bom candidato”
    O ATS manda mais de 50% dos currículos para um buraco negro por causa de heurísticas de filtragem ruins, a equipe de recrutamento escolheu o ATS por motivos como integração com o Google Gmail, e a tecnologia de filtragem desse ATS não foi revisada por ninguém da equipe de engenharia nem da equipe de dados

  • Testei com meu currículo e, de alguma forma, recebi pontos bônus por GSoC
    BONUS POINTS: 5.0
    ------------------------------
    Google Summer of Code (GSoC) participation: +5
    Só que eu nunca participei do GSoC e nem escrevi no currículo que participei