O que as principais empresas procuram em uma entrevista? [fechadas]

9
  1. Basicamente, estou procurando o que você faz de errado e está fora do processo restante?
  2. As rodadas de eliminação são uma maneira justa de julgar uma pessoa? Qualquer um pode ter uma hora ruim :-(
  3. Você deve codificar da melhor maneira possível ou deve obter o algoritmo certo? Geralmente, primeiro codifico uma solução viável e depois a trabalho até um nível que me pareça bonito. Esta é uma abordagem errada?

Recentemente, tive uma entrevista telefônica na qual me pediram para escrever uma variação da passagem da Ordem de Nível em 20 minutos. Eu consegui obter o algoritmo e o código de trabalho em 20 minutos, mas não consegui acertar o tratamento de exceção e a convenção de codificação, após o que não recebi resposta deles :-( Todas as outras perguntas da entrevista foram muito bem. a única coisa que 'não era boa'.

Escusado será dizer que eu gosto da empresa e irá aplicar novamente, mas quer acertar na próxima vez :-)

Por favor, compartilhe suas experiências e sugestões valiosas.

Nerd
fonte
4
Lembre-se dos custos relativos de julgar incorretamente um candidato. Um falso negativo (não contratar alguém que seria um bom funcionário) tem apenas um custo de oportunidade para o empregador, enquanto um falso positivo pode ser muito dispendioso e ter consequências em toda a organização e também desagradáveis.
ChrisChee1
@ Chris: Você está certo. +1.
4134 Geek

Respostas:

7

Ao fazer entrevistas técnicas, honestamente estou procurando pessoas para acertar em casa. Se o candidato não parecer que conhece o material, não será eficaz em seu papel (estou falando das posições dos desenvolvedores seniores aqui).

Olhe isto deste modo: você prefere ter uma entrevista difícil, onde você não conseguir o emprego (porque você não é um bom ajuste), ou uma entrevista fácil onde fazer fazer o trabalho, mas, em seguida, obter deixar ir depois de 90 dias porque você está louco demais?

Eu já vi muitos desenvolvedores neste último campo. Se você não conseguiu o emprego porque fracassou na parte técnica, considere uma bênção disfarçada. Se você não gosta de rejeição, aprimore suas habilidades técnicas.

Marcel Lamothe
fonte
4
Muito bem Marcel. De alguma forma, sinto que nem todos (não importa quão bons) possam acertar tudo em um problema desconhecido (o tempo é uma restrição). Se alguém resolve um problema, provavelmente já escreveu o mesmo código ou código semelhante antes. Uma pergunta, porém, em uma rodada de eliminação, você sabe que alguém não é bom o suficiente se ele fizer uma ou duas perguntas (a menos que alguém cometa um erro). O que estou tentando enfatizar é 'Rodada de Eliminação', enquanto você parece estar saindo de uma Hipótese 'você sabe que alguns1 não são bons o suficiente'. Sim, um cara mau? Óbvio que não há contratação ..
Geek
Entrevistar é uma arte difícil, com certeza, e não pretendo ser um especialista de forma alguma. Mas no meu caso, não estou tentando jogar um jogo de "pegadinha!" - onde estou apenas esperando que alguém entenda algo errado. Em vez disso, estou investigando o conhecimento deles, tentando ver quão profundo é. O candidato pode explicar facilmente como uma tabela de hash funciona, por exemplo. Geralmente é muito fácil ver quem acaba na coluna da vitória e quem não.
Marcel Lamothe
@ Geek - você prefere ser a pessoa que acertou e foi ignorada por alguém que não? Pode ser um desafio de codificação ou uma pergunta suave sobre como você trabalha com os membros da equipe problemática, mas eventualmente todos os candidatos, exceto um, precisam ser eliminados.
JeffO 01/10/12
@ Geek: "escreveu um código semelhante antes". Talvez eles tenham escrito código grosseiramente semelhante. A travessia por ordem de nível é uma variação da travessia em árvore, que deve ser familiar para todo graduado em CS. Se não lhe é familiar, você perdeu algo em algum lugar. Você fez uma aula de algoritmos, não foi?
Kevin cline #
@ Kevin: A transferência de ordem de nível é fácil, se eu pudesse reformular a pergunta como "Dada a restrição de tempo, quais são as coisas que você pode pular e ainda ser considerado bom o suficiente". Eu acho que Chris Bye tem um ótimo comentário sobre a questão.
411 Geek
4

Quando as pessoas solicitam que você codifique algoritmos simples em um período de tempo muito limitado, as convenções de codificação e o tratamento de exceções seriam a última coisa que eles analisariam. A menos que você está fazendo algo terrível, é claro, como a nomeação de sua função de atravessamento func, e todas as variáveis a, b, c. Talvez houvesse outra razão pela qual eles não ligaram de volta.

Claro, qualquer um pode ter uma hora ruim. Mas é um mau sinal se é provável que você tenha uma hora ruim dentre as cinco que gasta em várias rodadas de entrevistas e se não consegue se preparar para ações importantes.

Pessoalmente, acho que conseguir algo que funcione e melhorá-lo é uma abordagem errada. Muitas pessoas (inclusive eu) pensam que, se uma pessoa escreve um código que parece uma bagunça, ela também tem uma bagunça na cabeça. Eu sugiro que você escreva o código mais lentamente, mas de uma maneira mais ponderada.

E ainda mais pessoalmente (e, talvez, ofensivo), não acho que você seja bom o suficiente em algoritmos. Só porque você o escreve como "o Algoritmo" com a letra A. Você não escreve algo de que não tenha medo assim.

P Shved
fonte
5
Gostei do último parágrafo :-) Observe a letra L em 'Lol'. Sinto muito, mas o inglês não é minha primeira língua. BTW eu aprendi algoritmo tem de ser escrito sem um capital Um :-)
Geek