Boas perguntas da entrevista para um desenvolvedor da Web Python/Turbogears? [fechado

StackOverflow https://stackoverflow.com/questions/2034128

  •  19-09-2019
  •  | 
  •  

Pergunta

Se você estava procurando contratar um desenvolvedor da Web que trabalhasse principalmente com Turbogears/Python - que tipo de perguntas você deve fazer?

Foi útil?

Solução

Além das boas sugestões nas outras respostas, algo que eu sempre gosto de perguntar (de qualquer pessoa que seja candidata para desenvolver qualquer coisa que esteja relacionada à web) é: "Quando um usuário digita www.foo.com no endereço do navegador deles Bar e hits retornam, o que acontece então? Por favor, descreva com tanta ou pouca detalhe que você pense melhor, então podemos perfurar algumas ou todas as partes da resposta ".

Além da estrutura (s) do lado do servidor (s) em uso, isso pode me dizer um muito Sobre o entendimento do candidato de outras tecnologias cruciais com as quais eles podem acabar tendo que lidar: HTTP e toda a pilha TCP/IP abaixo dela, DNS, caches de muitos e diversos tipos (e como eles podem ser um incômodo e o que pode Você, o desenvolvedor, tenta fazer sobre isso ...), aspectos visíveis da superfície das tecnologias, cookies, HTML e CSS e talvez algum JavaScript, ...

Sim, as tecnologias cotidianas que usamos, como estruturas, tentam abstrair longe de tudo isso (e aumentar a produtividade), mas Joel Spolsky's Lei das abstrações com vazamento Aplica -se - estar ciente das camadas da pilha da qual você normalmente está abstraindo é crucial para o domínio real do ofício de software.

Dependendo dos detalhes da posição que a entrevista do candidato, as brocas mais profundas serão apropriadas em diferentes áreas. Por exemplo, descrever (no nível de abstração razoável) como a solicitação HTTP receberia (através de um servidor da Web e máquinas de turbogears, talvez por meio do WSGI) para o seu código de aplicativo, como seu código estudaria a solicitação e prepararia uma resposta, como A resposta seria empacotada e enviada de volta ao navegador solicitante, pode ser todos itens de interesse - dependendo do tipo de responsabilidades de front -end/UI que o desenvolvedor em questão pode ter, mais sobre a maneira como o navegador lidará com vários aspectos de A resposta (incluindo links para folhas de estilo, scripts, imagens, ...) também pode ser apropriada.

Qualquer um pode "criar" uma tecnologia específica, como uma estrutura, o suficiente, se forem inteligentes o suficiente, para "Ace" A "Quiz", entrevista. Mas qualquer pessoa que seja capaz de aceitar uma entrevista discursiva mais aberta, como esta, é extremamente provável que realmente tenha dominado e compreendido muitas das camadas da pilha relevante de tecnologias e abstrações-eu prefiro contratar alguém com Um entendimento tão profundo e com raízes profundas, mesmo que eles nunca tenham usado turbogears (mas sim, digamos, django, wekrzeug e web.py) [Eles poderão amontoar e obter os detalhes específicos dos turbogeares em um Pat em um Semana, tops], do que alguém que se comprometeu com a memória de uma pilha de manuais de referência de turbogears, mas realmente não entende HTTP, cookies, TCP/IP ... (este A falta levaria pelo menos muitos meses para remediar).

Outras dicas

As melhores perguntas da entrevista são aquelas em que você solicita que resolvam problemas.

Aqui estão algumas sugestões semi-aleatórias (após o Teste de Fizzbizz)

Pitão

Dê a eles um projeto não trivial para implementar mais de uma semana no domínio em que você está trabalhando. Eu me inscrevi uma vez a uma empresa de pesquisa e eles me pediram para implementar um sistema de filtragem colaborativo.

As áreas que geralmente são confusas são decoradores, o sistema de tipos, metaclasses, talvez iteradores. Você pode perguntar a eles algo sobre essas coisas para investigar sua profundidade.

Turbogears

Não posso sugerir muito aqui, mas você pode questioná -los no ORM de sua escolha (construa alguns mapeadores e consultas), pergunte um pouco sobre validação (tive alguns problemas para obter validação condicional para trabalhar com o FormEncode). Você também pode passear um pouco sobre como eles testariam o aplicativo, certifique -se de que ele escalou, testasse o desempenho e implantá -lo.

Peça a ele:

  • Instrpecção
  • Design de controle de modelo-visualização
  • Documentando ferramentas

Se ele souber muito sobre isso, certamente sabe muito sobre outros problemas.

Não teste. Obtenha um código real (possivelmente quebrado) de você VCS. Faça com que eles lhe digam como eles corrigiriam / adicionariam um recurso.

Se puderem, peça -lhes que tragam algumas amostras de trabalho anterior.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top