Trazendo código para uma entrevista? [fechadas]

14

Trazer um código ou código impresso em um USB para uma entrevista é uma boa idéia? Nesse caso, que tipo de código devo trazer. Devo evitar grandes projetos e apenas mostrar pequenos trechos que mostrem minhas habilidades?

Anthony
fonte
Não. O que uma empresa pode fazer é fazer um exame para levar para casa após uma entrevista e, em seguida, você deve voltar em dois dias para explicar o que você fez e por quê.
Job

Respostas:

15

Antes não . Eu faria isso apenas quando solicitado explicitamente, e é claro que você não pode trazer código que seja de alguma forma confidencial, o que geralmente se aplica a tudo o que você escreveu no seu trabalho anterior, então você está basicamente restrito ao código que você criou no seu tempo livre. (A maioria dos entrevistadores o levaria imediatamente até a porta se você vir com código confidencial do seu atual empregador ...)

De qualquer forma, como entrevistador, eu gostaria de ver você escrever código durante a entrevista, para ter certeza de que você é a pessoa que tem as habilidades necessárias. É muito fácil ter bons amigos para ajudá-lo a escrever um código mais impressionante e memorizar as explicações.

user281377
fonte
6

Eu penso que é uma grande ideia! É uma pena que as revisões de código não sejam feitas com mais frequência, pois é uma das poucas maneiras de reconhecer bons programadores (exceto que eles realmente codifiquem algo). Olhando para o código de alguém, você rapidamente percebe como um programador é bom, apenas porque o código é "mais limpo".

Se eu estivesse entrevistando, estaria analisando duas coisas que provavelmente seriam boas para cobrir no código que você traz

a) A qualidade de alguma implementação / método / algoritmo. Mostre algum código que você achou especialmente elegante

b) A arquitetura geral de um programa maior. Como o programador lidou com as dependências, ele pode explicar as decisões de design que tomou

O objetivo não é passar por todo o código, para que realmente não importa quanto tempo o código que você traz realmente seja, mas o que você escolheu destacar.

Homde
fonte
5
Sempre existe o problema de realmente saber que o código é escrito pelo entrevistado. Nesse sentido, talvez uma revisão de código do código de outra pessoa possa lhe ensinar tanto, se não mais, porque o entrevistado não poderá se preparar com antecedência?
Benjol 19/01/11
1
Eu não acho que isso seja um grande problema, já que você está julgando a pessoa pela capacidade de explicar seu código e pensamento. Isso é muito difícil de fazer se não for seu próprio código. Como você pode explicar algo bem que você não entende completamente?
Homde
5
Não vamos esquecer o potencial (ou probabilidade) que a peça que você escreveu é o IP do seu ex-empregador (a menos que seja um projeto paralelo ou uma peça pessoal escrita) e eu evitaria cruzar essa linha o máximo possível, inocente ou não.
precisa saber é o seguinte
Brad, esse é um bom argumento. Normalmente, você não tem permissão para reter cópias do trabalho realizado como consultor; portanto, pode ser difícil usar código assim. Outro motivo para contratar programadores que trabalham em projetos para animais de estimação! :)
Homde 19/01
4

Uma variação disso é fornecer ao entrevistador a URL do repositório para algum projeto de código aberto para o qual você fez uma grande contribuição.

Stephen C
fonte
2

Não.

A menos que você esteja programado para fazer uma apresentação de duração razoável em sua entrevista, o tipo de código que você tem tempo para mostrar e eles têm tempo para apreciar; não pode ser representativo de sua habilidade, independentemente de onde você esteja em sua carreira.

Se eles querem ver evidências de que você é um desenvolvedor de software maduro, isso não será encontrado no tamanho do programa em que você poderá percorrer efetivamente a seção AOB de uma entrevista.

Se eles querem que você demonstre que é capaz de programar, eles terão um teste adequado ou farão com que você faça algo pequeno, como uma lista vinculada no local. Se você trouxer uma implementação de lista vinculada em uma chave USB, eles não têm idéia do quanto você copiou de um livro; se você levou 10 minutos ou duas semanas; ou se você tinha que perguntar ao stackoverflow o que é um ponteiro.

Além disso, o que você mostraria? Código limpo e bem escrito que é facilmente compreensível é chato. Seus entrevistadores não ficarão lá, maravilhados com a clareza com que conseguem entender a intenção do seu trecho; eles se perguntarão por que você considera a jóia da sua coroa. Por outro lado, imagine que você inventou algo inteligente como o dispositivo de Duff e queria mostrar isso. Os entrevistadores provavelmente considerariam você um inimigo de legibilidade.

Paul Butcher
fonte
Um código limpo e bem escrito que resolve um problema complicado pode ser extremamente interessante. E se o entrevistador não pensa assim, ele diz uma de duas coisas: ou você não está no nível que está procurando ou não está no nível que deseja para os colegas. De qualquer maneira (e, esperançosamente, a discussão destacaria qual), é hora de procurar outro lugar.
Anon
O que quero dizer é que um código limpo e bem escrito que resolve um problema complicado faz com que o problema pareça consideravelmente menos complicado, fazendo com que o próprio código pareça consideravelmente menos interessante.
Paul Butcher
1

O código que você mostra geralmente deve ser pequeno o suficiente para ser discutido em 5 minutos, e o código deve ocupar não mais que 2 páginas impressas. Mesmo que seja apenas um método que você escreveu para analisar números de telefone de uma lista telefônica, é útil.

George Stocker
fonte
1

Se você quiser levar o design. Não carregue o código. Mais do que ver a limpeza, o entrevistador começará a apontar os erros. Certamente haveria (muitos) erros (nos quais você ainda não pensou) se o projeto for algum projeto do ensino médio. E se for uma empresa, é ilegal levar o código protegido por direitos autorais e exibir para outras pessoas.
Mostrar o código que você já escreveu pode não ter muito peso se você não responder às perguntas feitas pelo entrevistador. E se você não carregá-lo, também há pontos de não-ve. Então, por que se preocupar?

Manoj R
fonte
1

Sim!

Qualquer idiota pode escrever código que um computador possa entender, é preciso um ótimo programador para escrever código que um humano possa entender.

Por esse motivo, você deve se exibir

billy.bob
fonte
Se você codificar é realmente humano compreensível. Caso contrário, não faça :) #
1919
0

Se você tem um pedaço de código que é particularmente interessante, traga-o de qualquer maneira (supondo, é claro, que não seja propriedade intelectual protegida). Mas não force o entrevistador . Se ele estiver interessado em examinar seu código, ele perguntará se você tem algo a mostrar.

Esteja preparado para explicar por que é interessante e melhor o que você faria de diferente no futuro.

Anon
fonte
0

Se você fez algum desenvolvimento de código aberto (comercial ou pessoal), acho que seria uma ótima idéia. Enviei trechos de código junto com os materiais de inscrição para o trabalho que tenho atualmente, por isso arriscaria adivinhar que funcionou bem para mim. Certifique-se de respeitar a confidencialidade / direitos autorais e atribuir outras pessoas envolvidas (se for um projeto colaborativo).

Zoot
fonte