Entrevistas de emprego em machine learning — guia completo
(silviasapora.github.io)- Coletânea prática de experiências que organiza todo o processo de busca por uma vaga de Research Scientist após um doutorado em Machine Learning
- Baseado em um caso em que a pessoa recebeu oferta de todas as empresas onde concluiu entrevistas, incluindo DeepMind, Isomorphic Labs, Cohere, Meta e uma startup stealth
- Explicação passo a passo sobre como conseguir entrevistas, preparação técnica, emocional e logística, comparação entre startup e big tech e até negociação salarial
- Inclui itens concretos de preparação, como diferenças de estrutura e impostos entre RSU e stock option, além de implementar transformer e attention na prática
- Reforça a mensagem de que entrevistas são essencialmente estocásticas e que o resultado não determina o valor de alguém como pesquisador
Resultados gerais das entrevistas e contexto
- Relato organizado a partir da experiência direta de procurar trabalho como Research Scientist após um doutorado em ML; quase não havia material de referência quando o processo começou
- Ofertas recebidas de todas as empresas onde as entrevistas foram concluídas — incluindo DeepMind (aceita), Isomorphic Labs, Cohere, Meta e uma startup stealth
- Anthropic, Mistral e TeslaAI demoraram a entrar em contato, então o processo não foi concluído
- ReflectionAI foi a única rejeição para vaga de RS, mas houve proposta de migração para a trilha de Engineering
- SpaceXAI, Waymo e Wayve não chamaram para entrevista
- No caso da Waymo, houve candidatura a cada seis meses durante todo o doutorado, sem nenhuma resposta
Como conseguir entrevistas
- As principais alavancas para conseguir entrevistas são mais artigos, temas em alta e estágios melhores
- Durante o doutorado, houve 4 artigos como primeiro autor (ou co-primeiro autor) publicados em ICLR / NeurIPS / ICML (LLM, RL, Meta-Learning, Evolution Strategies)
- Também havia experiência de estágio na Apple e como engenheiro de software na Meta
- Regra aproximada: com 3 ou mais artigos como primeiro autor + pelo menos 1 estágio ou experiência na indústria, já é possível conseguir retornos com consistência em laboratórios de ponta
- Se você já está conseguindo entrevistas, artigos adicionais ajudam pouco → é melhor focar na preparação para entrevista, não em pesquisa; a sensação de estar pronto nunca chega, então é preciso começar agora
Carta de apresentação, indicação, cold email, LinkedIn/X
- LinkedIn / X: muitas empresas publicam vagas ali, e para estágios às vezes esse é o único canal de candidatura
- Preencher o Google Form ligado ao anúncio costuma ser necessário para a candidatura contar de fato
- Referrals (indicações): ajudam, mas não são obrigatórias
- Na DeepMind, houve convite para entrevista tanto em vaga com indicação quanto em vaga sem indicação
- Cold emails: mandar e-mail direto para recrutadores ou membros da equipe costuma ser bem-vindo com frequência
- Não basta repetir o CV; é preciso explicar por que você combina com aquele time e o que te interessa nele
- Cover letters: são raramente exigidas, mas, se forem pedidas, devem ser feitas com cuidado
- Não delegue a escrita inteira para Claude / Gemini / ChatGPT; use essas ferramentas só para revisar e lapidar um texto já escrito por você
Startup vs big tech
- Startups são mais difíceis de encontrar, porque não existe um ponto centralizado de busca → o melhor caminho costuma ser boca a boca via colegas, amigos e ex-colegas; por isso mesmo, a concorrência tende a ser menor
- O processo de entrevista em startups varia muito, enquanto big techs têm estruturas relativamente mais previsíveis
- Se o processo parecer fácil demais, isso pode ser um sinal sobre a complexidade real do trabalho
- A natureza do trabalho tem dois lados — na startup certa, a pesquisa pode ser mais interessante e ter mais impacto; por outro lado, pode haver mais pressão, mais trabalho de infraestrutura e mudanças frequentes de direção
- Vale perguntar na entrevista quem define prioridades de pesquisa, qual é o caminho para monetização e quem são os concorrentes
- Oportunidade de crescimento: startups podem oferecer crescimento rápido, aumento de responsabilidade e chance de moldar a direção do trabalho; em big tech, você é mais uma pessoa entre muitas
- Reconhecimento no CV: OpenAI ou Anthropic são reconhecidas de imediato, enquanto uma startup stealth desconhecida exige explicação
- Estabilidade de emprego: big tech também passou repetidamente por demissões em massa; nenhum dos lados é 100% seguro
Remuneração: RSU vs Stock Option (no Reino Unido)
- RSU (mais comum em big tech): você recebe ações de fato conforme o cronograma de vesting; no vesting, cerca de metade costuma ser vendida imediatamente para cobrir imposto de renda — RSU é tributada como renda
- Stock option (mais comum em startup): você não recebe ações, mas o direito de comprá-las por um preço fixo X
- Se o preço de mercado Y > X, você compra por X e vende por Y para capturar o ganho; se Y < X, a opção não vale nada
- Stock options normalmente expiram 90 dias após a saída da empresa, e, se a empresa ainda for privada, talvez não seja possível vender mesmo após exercer
- No Reino Unido, no momento do exercício da opção, há incidência de imposto de renda sobre o ganho Y−X mesmo sem você ter recebido dinheiro algum
- Em uma empresa privada, ao sair após 2 anos e exercer, você pode ter de arcar com o custo de compra (X × número de opções) + imposto de renda sobre (Y−X) × número de opções × alíquota, tudo antes de realizar qualquer lucro
- A maioria oferece opção de cashless exercise, e muitas fazem recompra de ações (liquidity event)
- Mas a participação é diluída a cada rodada, ganhos adicionais sofrem cerca de 20% de imposto sobre ganho de capital, e o valor em um liquidity event costuma ficar abaixo da valuation oficial da empresa
- Resumo: quando um recrutador apresentar a remuneração total incluindo participação acionária de startup, sorria com educação, mas aplique um bom desconto mental nesse número
Estrutura das entrevistas
- A maioria das empresas segue uma estrutura parecida, embora o peso de cada etapa varie
- Recruiter screen: em geral é uma conversa leve, boa para mostrar aderência entre seu perfil e a vaga e sua capacidade de explicar seus próprios artigos
- Technical interviews: são a maior parte do processo, a preparação mais importante, com 3 a 8 rodadas dependendo da empresa
- Coding: estilo LeetCode, normalmente Medium ou Hard
- ML coding/debugging: implementação de attention, escrita de backward pass, detecção de bugs em loop de treinamento
- ML knowledge: fundamentos, teoria, ML aplicada e system design
- Behavioural interviews: dividem-se entre perguntas comportamentais clássicas e perguntas mais ligadas à pesquisa (temas de interesse, futuro da área); são mais casuais que as técnicas, mas não devem ser subestimadas
Preparação técnica
- É a parte mais importante, não pule — há casos de pesquisadores excelentes reprovando por falta de preparação; trabalhar com ML todo dia não é o mesmo que implementar attention do zero, e é preciso reservar pelo menos um mês de estudo regular
- Estratégia geral: minimizar preparação genérica e fazer preparação direcionada para a próxima entrevista e empresa específicas, mantendo o material fresco na cabeça
- Entrevistas para RS / Engineer podem cobrar quase qualquer coisa, desde fundamentos como overfitting até LeetCode, implementação de transformer e arquiteturas modernas como Griffin, TransformerXL e S4
Flashcards
- Úteis para fundamentos de ML, ML aplicada e discussões de pesquisa; cartões físicos funcionaram melhor que Anki
- Escrever os cartões com as próprias mãos já é metade do aprendizado; não vale a pena baixar decks prontos
- Na revisão, o ideal é se questionar e buscar entendimento profundo; muitas perguntas feitas durante o estudo apareceram depois em entrevistas reais
Mock interviews com LLM (Claude / Gemini)
- Antes de cada entrevista, colava-se no LLM (principalmente Claude) a descrição da vaga, da entrevista e da empresa, pedindo uma simulação; houve sobreposição frequente entre perguntas de treino e perguntas reais
- Se a dificuldade vier inadequada, vale abrir um novo chat e explicitar melhor seu nível e seu histórico
- Para estudo, Claude foi o melhor e também o mais equilibrado no feedback, enquanto Gemini tendia a elogiar demais
LeetCode / NeetCode
- Fazer no mínimo o Blind 75 e, opcionalmente, o NeetCode 150, com foco em Medium
- O objetivo é chegar à solução ótima de cada problema (uma solução O(N²) para TwoSum, por exemplo, não conta); evite gastar muito tempo com Hard
- Implementar rapidamente os padrões básicos de DFS, BFS, Graphs, Backtracking, DP, Binary Search etc., mirando menos de 20 minutos por Medium
- Se travar por mais de 15 minutos, veja a solução, marque o problema e siga em frente
- Amplitude importa mais que profundidade, com algo em torno de 150 problemas Medium resolvidos no total
Livros
- Designing Machine Learning Systems (Chip Huyen): cobre muitas perguntas de fundamentos e ML aplicada
- The JAX Scaling Book: foi descoberto só depois das entrevistas, mas é excelente; teria sido usado com força se fosse conhecido antes
- Reinforcement Learning (Sutton & Barto): recomendado apenas para iniciantes em RL; para quem já trabalha na área, pode ser demais
Cursos
- Álgebra linear: aulas do Gilbert Strang no YouTube, que dá para terminar em um dia em velocidade 2x
- Diffusion / Flow Matching: aulas do MIT e de Stanford são muito boas, mas pesadas em matemática; se você não pesquisa isso, memorize só a intuição básica e os pontos principais, como diffusion SDE e flow matching ODE
ML coding e debugging
- É a área com menos bons materiais e onde experiência prática pesa mais; treinar debugging foi difícil porque LLMs não conseguiam gerar com consistência códigos bugados que parecessem reais
- Revisar o próprio código ou o de colegas é o melhor caminho; DeepML e Tensor Puzzles também ajudam
- Linha de base desejável
- implementar um transformer de ponta a ponta
- implementar causal, cross e self attention
- implementar flash attention
- implementar o backward pass de attention
- implementar forward / backward pass de MLP
- implementar um loop de treinamento SGD em PyTorch ou JAX
- Se você consegue implementar tudo isso manualmente sob pressão de tempo, já está em um bom nível
Preparação emocional
- Se você já estiver emocionalmente bem, é melhor pular esta seção, para não plantar ansiedade desnecessária
- O maior problema foi o sono — não conseguir dormir na véspera e, com 10 entrevistas por semana, isso vira algo sério; comer também ficou difícil, causando náusea
- Recomenda-se exercício regular, rotina noturna consistente e evitar isolamento social
- Correr antes da entrevista ajudava a descarregar a tensão e resetar a cabeça
- Houve muito conforto em manter uma rotina pré-entrevista — colocar flores frescas ao fundo, fazer maquiagem ou skincare e assistir sempre ao mesmo vídeo reconfortante
- A partir de certo ponto, a ansiedade começou a atrapalhar mais que a falta de preparação, e houve entrevistas em que a mente simplesmente apagou
- Refletir antes de começar sobre seus gatilhos, sua relação com o fracasso e em que sua autoestima se apoia pode ajudar bastante
- Mensagem central: o seu valor como ser humano não é definido por essas entrevistas; o processo é essencialmente estocástico, você pode errar até no que sabe bem, e tudo bem
- Livros que ajudaram: The Now Habit, The Gifts of Imperfection, Mindset, The Tyranny of Merit
Preparação logística
- Só uma entrevista por dia: entrevistas drenam energia, e o desempenho cai naturalmente na terceira do dia; depois de uma entrevista pela manhã, o resto do tempo pode ser usado para a próxima preparação
- Comece por empresas de menor interesse: startups pequenas ou regiões menos desejadas ajudam a calibrar o processo, a confiança e o nível salarial antes
- Considere o timing: cada empresa anda em uma velocidade diferente, então vale ajustar para que as ofertas cheguem em datas próximas e criem alavancagem real
- Avise todas as empresas que há outros processos em andamento: isso esclarece cronogramas, acelera o andamento e faz você parecer um candidato mais sério
Negociação
- Ao contrário do conselho comum de esconder ofertas concorrentes, várias empresas exigiram explicitamente prova das outras ofertas antes de melhorar a proposta; uma chegou a perguntar sobre a autenticidade de um screenshot
- Empresas conseguem mexer bastante nos números quando querem muito um candidato, então quase sempre vale perguntar; a maioria se mostrou aberta a negociar
- Prazos finais variaram de 1 a 2 semanas até um vago “prazo razoável”, e geralmente havia pouca flexibilidade para extensão
- Recrutadores percebem bem as preferências do candidato; sinais pequenos, como a frequência com que você menciona certa empresa ou seu tom de fala, acabam sendo registrados
- Empresas têm dados históricos sobre a decisão de candidatos → só ofertas de concorrentes do mesmo nível (como OpenAI) costumam ter peso real; comparações pouco críveis não funcionam
Processo de decisão
- No começo, por ansiedade, houve tentação de aceitar cedo uma oferta já recebida, mas confiar na intuição levou à busca de opções melhores
- Os critérios para escolher uma oferta variam de pessoa para pessoa — localização, remuneração, reputação, tipo de trabalho etc. — e as preferências podem mudar ao conhecer melhor time, cultura e pacote de compensação
- Quase todas as pessoas das duas empresas finais foram consultadas, mas cada uma dizia que escolheria a própria empresa, o que ajudou pouco → no fim, o mais útil foi conversar com alguém que realmente conhece você
O que mudaria se fizesse de novo
- Manter uma planilha: gerir tudo só na cabeça tem limite; organizar empresas, etapa atual, prazos e contatos teria evitado perder candidatura em lugares de interesse
- Preparar o emocional além da técnica: entrevistas podem parecer um veredito final sobre sua capacidade como pesquisador e o valor do doutorado, mas isso é um enquadramento irracional; reflexão prévia ou terapia poderia ter ajudado
- Ser mais ativo com empresas que não responderam: em vez de depender apenas do formulário, valeria mandar cold email direto para demonstrar interesse e entrar no radar
Lista de tópicos técnicos
- Lista de temas de estudo feita antes do início das entrevistas; dado o histórico da pessoa, houve muitas perguntas sobre LLM e RL, e quase todos os temas estudados apareceram pelo menos uma vez
- Reinforcement Learning: Q-Learning / TD Learning, Bellman Equations, PPO, GRPO, GAE, DPO, Policy Gradient Theorem, On/Off-Policy, MuZero, Dreamer, AlphaGo, Soft Actor-Critic, MDP etc.
- LLMs: Flash Attention, LoRA, TransformerXL, Griffin, Perceiver, Scaling Laws, Mixture of Experts, RoPE, S4, Tokenisation, RLHF, Causal/Cross Attention etc.
- Generative Modelling: GANs, VAE e ELBO, Score Function, Diffusion Forward/Reverse Process (DDIM/DDPM), Diffusion SDE, Flow Matching ODE, Classifier Free Guidance
- Applied ML: Tensor Parallelism, FSDP, DDP, Pipeline Parallelism, Mixed precision training, Gradient checkpointing/accumulation/clipping, JAX, PyTorch, TensorFlow etc.
- General ML: Curse of dimensionality, CNN, RNN/LSTM, MLE vs MAP, Bias-Variance Tradeoff, Backprop, BatchNorm/LayerNorm/RMSNorm, Adam/AdamW, KL Divergence, Precision/Recall/F1/AUC-ROC etc.
- Linear Algebra: Positive Semi-Definite, Jacobian, Eigenvectors/Eigenvalues, Hessian, Null/Image space, Rank/Span, Determinant etc.
Ainda não há comentários.