mais lidos
Life at Nu
Conheça a sede do Nubank em Pinheiros, São Paulo/Brasil jan 11
Design
A nova aparência do Nubank: conheça nossa nova logo maio 17
Culture & Values
Como os valores e a cultura da Nu moldam os produtos que criamos ago 7
Carreiras
Reunimos grandes mentes de diversas origens que permitem a discussão e o debate e melhoram a resolução de problemas.
Saiba mais sobre nossas carreiras



Esse post foi revisado por: Luiz Felix, Fernando Santos, Hellen Lima
Processos seletivos são sempre um assunto muito debatido em qualquer área, pois podem ser longos e intensos. No Nu, discutimos sempre como torná-los mais enxutos e focados nas habilidades essenciais para cada função. Nossas entrevistas têm como objetivo coletar o máximo de informações sobre as pessoas candidatas para tomar as melhores decisões de contratação. Ainda assim, sabemos que é impossível resumir todas as experiências e habilidades de uma pessoa em apenas algumas perguntas, respostas e exercícios durante uma quantidade limitada de entrevistas.
Como o Nubank é uma empresa que usa ciência de dados desde a sua fundação em 2013, isso significa que já entrevistamos muitas pessoas para vários cargos diferentes, como Cientistas de Dados, pessoas Engenheiras de Aprendizado de Máquina e Lideranças de Ciência de Dados.
Se você quiser conhecer mais sobre as etapas dos processos seletivos para posições de Ciência de Dados e Engenharia de Machine learning esse é o artigo certo!
Aqui vão nossas dicas:
1. Compreenda o problema primeiro
Em muitas situações, pessoas candidatas podem ser questionadas sobre como solucionar um problema específico usando aprendizado de máquina. Nos processos seletivos do Nu, é comum que as perguntas abordem problemas reais de negócio, exigindo que o candidato considere diferentes possibilidades, suas vantagens e desvantagens, bem como as implicações dessas decisões para o negócio como um todo.
Muitas vezes, compreender o problema é mais importante do que a própria solução. Quando o problema é claramente definido, identificar e validar as possíveis soluções torna-se consideravelmente mais fácil.
O ponto principal aqui é garantir que a pessoa candidata faça perguntas e compreenda o problema e as possibilidades envolvidas antes de começar a trabalhar na solução. Em determinado momento, por exemplo, pode ser pertinente usar técnicas de exploração de dados para entender alguns padrões em eventos passados e, a partir disso, propor o desenvolvimento de um modelo de machine learning. Em resumo, a pessoa candidata deve explorar essas decisões e ponderar.
Conheça nossas oportunidades
2. Reconheça quando não usar soluções de ciência de dados ou aprendizado de máquina
Aqui estão alguns exemplos do que é essencial se preocupar mais com os resultados de negócios do que como esses resultados são alcançados. A ciência de dados não é um fim em si mesma. Aqui estão alguns exemplos de quando soluções baseadas em aprendizado de máquina podem não ser apropriadas:
3. Compreenda como e onde as aplicações que utilizam aprendizado de máquina diferem do software tradicional
Sistemas que utilizam aprendizado de máquina compartilham muitas características com o software tradicional, mas também apresentam desafios únicos. Além de serem aspectos importantes na decisão de usar aprendizado de máquina ou não, é importante ficar atento a estes desafios.
Sistemas de produção com aprendizado de máquina precisam estar conectados à infraestrutura subjacente de alguma forma. O código precisa ser reproduzível, ter controle de versão e passar por testes rigorosos de unidade e integração. Além disso, deve ser extraído para outras bibliotecas e compartilhado entre a equipe. A complexidade do código deve ser mantida sob controle para que seja fácil analisá-lo e refatorá-lo mais tarde.
Resumindo, tudo o que você aprendeu sobre engenharia de software básica também se aplica ao código de aprendizado de máquina.
Entre as principais diferenças entre sistemas de aprendizado de máquina e software comum estão:
Rastreamento de dados: se você quer reproduzir o comportamento de um sistema de aprendizado de máquina, precisa não só do código exato que foi usado, mas também dos dados utilizados nos momentos de treinamento e predição. Se você quiser saber mais sobre este assunto, esse post apresenta uma introdução ao tema.
Falhas silenciosas: um sistema que utiliza aprendizado de máquina pode produzir resultados inesperados sem um alerta claro. Por exemplo, se um recurso importante para o seu modelo falhar devido a problemas nos dados, o sistema continuará realizando previsões, sem saber que está recebendo dados inadequados.
4. Reconhecer o ponto de equilíbrio entre desempenho e complexidade do modelo
Modelos mais complexos geralmente oferecem desempenho superior, mas exigem mais recursos de hardware e demandam um ambiente de deploy mais sofisticado. Na prática, isso se reflete em maiores custos de execução, maior necessidade de manutenção, monitoramento mais desafiador e uma maior dificuldade em entender como os dados apresentados ao modelo influenciam suas previsões.
Por isso, vale a pena considerar os seguintes aspectos ao avaliar se um modelo mais simples ou mais complexo é adequado para resolver um determinado problema:
A resposta para essas perguntas geralmente é “depende da demanda do negócio”. O trabalho da pessoa Cientista de Dados é ajudar as partes interessadas a entender onde traçar a linha e avaliar quando a complexidade adicional já não faz mais sentido frente ao retorno esperado.
5. Considere como os modelos geram resultados de negócios
Quanto maior seu nível de senioridade, maior será a expectativa que você consiga identificar como os modelos de aprendizado de máquina ajudam a resolver problemas de negócio. Portanto, é importante saber explicar como o uso de um modelo mais complexo pode se traduzir em satisfação do cliente ou menor tempo de espera, e como estes aspectos podem ser avaliados.
A contextualização do papel de um modelo de aprendizado de máquina dentro do fluxo de negócios pode depender do seu papel. Aqui estão algumas perguntas que podem ajudá-lo durante esse processo:
Ciência de dados
Engenharia de aprendizado de máquina
6. Não tenha medo de responder “eu não sei”
É quase certo que uma pessoa candidata será perguntada sobre temas com os quais não tem experiência, então não tenha medo de ser honesto nessas situações. Ninguém espera que você saiba tudo, mas sim que seja capaz de aprender o que for necessário como parte do seu trabalho diário.
Fingir conhecimento sobre algo que você não sabe é muito pior do que expressar desconhecimento. É provável que o entrevistador faça perguntas mais detalhadas sobre os assuntos e perceba sua falta de conhecimento. Não há problema algum em admitir a falta de experiência em um determinado tema e tentar entender mais sobre ele com o entrevistador.
Ainda assim, é possível ter algum conhecimento correlato que ajude a arriscar um palpite informado, deixando claro que trata-se de uma especulação. Quando perguntado sobre um tema desconhecido, é possível responder algo como: “Não sei exatamente o que você quer dizer com X, mas com base no contexto e na minha experiência anterior, eu acho que é algo como… Isso está certo?”
7. Espere receber perguntas sobre assuntos em que você alega ter experiência
É interessante destacar as experiências em certas áreas relacionadas à ciência de dados e aprendizado de máquina, especialmente quando elas se conectam com a posição à qual você está se candidatando. Se você estiver fazendo uma entrevista para uma empresa de visão computacional, por exemplo, vale a pena mencionar que você tem experiência trabalhando com redes neurais convolucionais e processamento de imagens em seu trabalho anterior.
Naturalmente, isso atrairá perguntas específicas sobre essas áreas. Portanto, é importante manter seu currículo atualizado e certificar-se de que você consegue responder perguntas sobre esses temas.
8. Considere a vida útil de uma aplicação que usa aprendizado de máquina
É importante entender como um sistema com aprendizado de máquina evolui de uma ideia para um sistema de produção real. Vamos falar brevemente sobre as três principais etapas do ciclo de vida de um sistema assim. Nosso blog possui textos dedicados aos problemas pertinentes a cada um destes momentos.
Conheça nossas oportunidades