Folha de dicas para um trainee: solução passo a passo de problemas em uma entrevista no Google

imagem

No ano passado, passei os últimos dois meses me preparando para uma entrevista para um estágio no Google (Google Internship). Tudo correu bem: consegui um emprego e uma ótima experiência.

Agora, dois meses após o estágio, quero compartilhar o documento que costumava preparar para as entrevistas. Para mim, era algo como uma folha de dicas antes de um exame. Mas o processo de criação de um documento e uma verificação passo a passo constante nele me ajudaram a lembrar o mais importante.

Tenho certeza de que qualquer pessoa pode passar com êxito em entrevistas em grandes empresas de tecnologia, apenas leva algum tempo para entender como essas entrevistas funcionam e se preparar para elas.

Minha cábula é suficiente para você se preparar para qualquer entrevista técnica, seja no Google, em uma startup ou no seu primeiro estágio. Ela ajudará a se sentir mais confiante durante a preparação e durante a própria entrevista.
Recomendamos intensivos de programação gratuita para iniciantes:
Noções básicas de Java em apenas 3 dias - 8 a 10 de agosto;
Estamos escrevendo o primeiro modelo de aprendizado de máquina - 12 a 14 de agosto;
Desenvolvimento de mensageiro Python - 15 a 17 de agosto

Folha de dicas para entrevistas técnicas


Sites

Pramp

Neste recurso, você pode praticar entrevistas. Os participantes se revezam na entrevista (existem canais de áudio e vídeo) e podem usar um editor de código comum. Muito provavelmente, nas primeiras entrevistas, será difícil para você e você se sentirá desconfortável. Mas quanto mais você treina, mais confiante você os passa, e uma entrevista real depois disso parecerá fácil.

Codesignal

Boas perguntas de entrevistas da vida real no Facebook, Google, Microsoft, etc. Eu recomendo usar este site juntamente com recursos sobre a prática de codificação, incluindo o estudo da complexidade algorítmica.

Livros

Quebrando a entrevista de codificação

Minhas partes favoritas são Grade de preparação para entrevistas (pág. 32), uma seção sobre o comportamento da entrevista e Perguntas da entrevista: Estruturas de dados (pág. 88-107). Se você ainda não encontrou o termo “complexidade algorítmica”, agora é a hora, o livro apresenta perfeitamente o tópico.

O que fazer na entrevista?


  • Não desconecte da comunicação e responda honestamente. Ao pensar em uma pergunta, pense em voz alta, descreva o curso de seus pensamentos.
  • Adicione um pouco de humor à sua conversa, não tenha medo de brincar. Tente aproveitar a comunicação.
  • Registre informações importantes.
  • Faça perguntas e tente usar o que aprendeu com o entrevistador.

Entrevista de emprego passo a passo

E aqui está a lista de verificação para se preparar para a resposta na entrevista. Não é necessário usar todos os pontos; pule os que lhe parecem desnecessários. O principal é confiar no bom senso. Mesmo que você não tenha chegado ao final da lista, nada de terrível acontecerá.

  1. Leia a pergunta.
  2. Classifique todos os dados, de entrada e saída, e preste atenção aos efeitos colaterais.
  3. Esclareça a essência da tarefa e expresse suas suposições para que o entrevistador entenda o curso de seus pensamentos. Por exemplo, quais serão os volumes de dados e quem se tornará o usuário.
  4. Procure um exemplo e dê voz ao entrevistador para ter certeza de que entendeu a tarefa corretamente. Não tenha medo de gastar tempo investigando as condições do problema. Quanto melhor você entender, mais rápido encontrará a solução ideal.
  5. Desenvolva um algoritmo. Tente resolver um problema semelhante, mas menos difícil. Anote pensamentos, analise exemplos em um rascunho.
  6. Siga seu algoritmo com exemplos para garantir que o código funcione corretamente. Verifique todos os casos críticos e limítrofes.
  7. Estime a complexidade do algoritmo no tempo e na memória.
  8. Se você conseguiu encontrar uma solução mais eficaz para o problema, volte para a etapa 4.
  9. Escreva uma solução usando o algoritmo selecionado. Divida o problema em vários métodos, se aplicável em um caso específico.
  10. Verifique o código quanto a erros.
  11. Pense em como a implementação do algoritmo lida com casos críticos e de fronteira.
  12. Verifique a implementação usando um exemplo, veja o código de erro.
  13. Depois de verificar se o código está funcionando corretamente, verifique sua limpeza e estilo.

Isso é tudo, na verdade!

Source: https://habr.com/ru/post/pt462979/


All Articles