Após passar pela triagem de currículo, a 1a etapa é um Teste Online que você faz sozinho. No meu caso foram 2h para responder 3 questões:
Uma Query SQL (precisava de LEFT JOIN, GROUP BY, SUM E COALESCE).
Um desafio de programação em Python. O tempo é grande o suficiente para fazer código de qualidade (com funções bem definidas, testes unitários, docstring).
E uma prova de múltipla escolha com diversos assuntos de ML, Estatística e Data Science (essa eu achei difícil).
A 2a etapa possui 2 entrevistas:
Um "pair programming". Saiba a complexidade dos algoritmos que você construir (notação O) e estruturas de dados simples: dict, set, listas. Não é difícil, mas se precisar peça ajuda para o entrevistador. :)
E um "System Design Interview". O blog tech do QuintoAndar dá dicas sobre este tipo de entrevista! Use um whiteboard para desenhar uma solução de ML em alto-nivel. Saiba quando é necessário fazer predição em lote ou em tempo real. Aqui também é importante discutir sobre componentes de software (Bancos de Dados, Cache. Data Lake, Serviços de Mensageria, Filas). Não há uma única solução, então o importante é apresentar alternativas e discutir prós e contras. Ah, você também será questionado sobre modelos, preparação de dados, testes, monitoramento em produção... Conheça e saiba explicar os Algorimos que você sugerir!
A última etapa é uma entrevista com RH. As perguntas são sobre sua experiência de trabalho:
Qual o projeto mais desafiador?
Qual feedback que você recebeu que mais te marcou?
Qual o pior feedback que você deu?
Cite um erro grave que você cometeu...Como você lidou?
Pode haver um reference check como etapa final. Se você conhecer alguém que já trabalha no QuintoAndar (como foi o meu caso) agiliza o processo.