Minha empresa precisa contratar um desenvolvedor de PHP, mas ninguém tem conhecimento de PHP em minha empresa e achamos difícil testar suas habilidades em PHP. Se fosse um desenvolvedor de C / Java, eu pediria que ele escrevesse uma rápida implementação do Game of Life, mas o PHP é uma linguagem completamente diferente.
Eu vi esse teste com interesse:
http://vladalexa.com/scripts/php/test/test_php_skill.html
Alguém mais tem mais sugestões?
Respostas:
Código
Se você pedir ao candidato para escrever código, verifique se:
Se você solicitar ao candidato que leia o código, verifique se:
Você pode usar três ou mais partes diferentes do código, comece pelo mais simples e avance para o próximo se perceber que o candidato lida com facilidade. Jogue alguma recursão, para apimentar as coisas.
Recursos
Peça uma lista detalhada dos recursos PHP que o candidato usa. Livros, blogs, fóruns, revistas etc. Foi assim que meus atuais empregadores descobriram o StackOverflow .
Se o candidato mencionar StackOverflow ou Programmers, você NÃO deve perguntar ou tentar descobrir o nome de usuário. Se eles quisessem anunciar sua reputação, teriam incluído um link de Carreiras 2.0 em seu currículo.
Frameworks
Todo desenvolvedor PHP deve conhecer as estruturas PHP mais populares:
e seja fluente em pelo menos um deles. Você pode ter alguns exemplos de código prontos para cada um e pedir ao candidato que os leia e explique, depois que eles disserem com quem eles estão mais familiarizados.
Depuração e criação de perfil
Sempre achei que os desenvolvedores de PHP não possuem habilidades de depuração e criação de perfil (talvez apenas os desenvolvedores de PHP com quem trabalhei). Se durante a discussão você descobrir que o candidato usa o xdebug ativamente , não se preocupe com o resto da entrevista e apenas contrate-os. ;)
Desinfecção de entrada
Isso é importante. Você pode começar com uma discussão sobre por que é importante e depois pedir os métodos mais comuns para alcançá-lo. Esta discussão irá ajudá-lo sobre o que perguntar.
Algumas dicas:
Snafus PHP
Você pode encontrar muitos snafus PHP nesta excelente discussão . Se você está entrevistando para uma posição sênior, você definitivamente deve perguntar sobre alguns deles. Alguns exemplos:
Manipulação do PHP de valores numéricos em strings:
Código PHP válido :
No PHP, uma string é tão boa quanto um ponteiro de função:
Teste de unidade
Preciso dizer mais?
Conclusão
Um bom desenvolvedor de PHP deve combinar uma variedade de habilidades e talentos:
A lista continua e continua. Certifique-se de adaptar a entrevista às necessidades específicas da vaga, você não deseja contratar apenas um bom desenvolvedor, mas um bom desenvolvedor que seja ótimo no que você precisa que ele faça imediatamente.
fonte
O teste ao qual você vinculou é interessante, e a resposta de Yannis Rizos é ótima, mas acho que o importante também é o seguinte:
Se você precisa de um bom desenvolvedor, não procure pelo desenvolvedor PHP. Procure um bom desenvolvedor que saiba PHP. Isso significa que, pelo menos metade da entrevista, você deve fazer perguntas que não têm muito a ver com sintaxe do PHP ou funções do PHP.
Pergunte a ele o que é MVC, o que é AJAX, como funciona o HTTP, como funciona o REST, como funciona o SQL, algumas estruturas de dados, alguns princípios básicos de desempenho (como você mede, como você melhora), conceitos básicos de teste, conceitos básicos de segurança (XSS, XSRF, injeções, como você defende), conhecimentos básicos de programação, aplicados aos domínios típicos do PHP - web, redes, transformações de dados etc.
Se ele é bom nisso, peça a ele para escrever um código simples, escolha uma tarefa fácil que não demore muito - como encontrar palavras com a maioria das vogais seguidas no texto, ou inverter cada palavra no texto ou multiplicar duas matrizes. Você também pode pedir a ele para implementar o Jogo da Vida em PHP, se quiser :)
Se ele aprovar isso, você poderá prosseguir para questões PHP mais complicadas, mas não coloque muito peso nisso. Ele pode ler a maior parte do manual e, o que não pode ler, aprenderá rapidamente se for bom. O PHP foi desenvolvido para ser simples; portanto, se ele é um bom programador e possui algum conhecimento prático de PHP, provavelmente será capaz de se atualizar. Se ele sabe programar em geral, aprender a programar em PHP é mais fácil do que o contrário - saber minúcias de sintaxe do PHP não é importante se você não entender para que servem os testes de unidade ou como se livrar de problemas de XSS.
fonte
Embora a resposta de Yannis Rizos seja boa - eu sei que não passaria nesse teste e poderia usá-la como um recurso para determinar onde focar para melhorar minhas costeletas de PHP, acho que valeria a pena encontrar uma programação amigo que sabe PHP para participar do processo de entrevista. Todas as perguntas da resposta anterior são boas, mas sem algum conhecimento de domínio, será difícil avaliar a qualidade das respostas.
Dito isto, dependendo do que você precisa, como já foi dito por outros, a facilidade geral de programação e o ajuste da equipe são provavelmente mais importantes que o conhecimento específico do idioma.
fonte
I think it would be worth your while to find a programming buddy who knows PHP to sit in on the interview process.
, ótima sugestão.