Código
- Pídale al candidato que escriba el código
- Pídale al candidato que lea el código
Si le pide al candidato que escriba el código, asegúrese de que:
- El código no es trivial sino pequeño.
- Usted permite el acceso al manual y a internet
Si le pide al candidato que lea el código, asegúrese de que:
- El código tiene algunos errores triviales.
- El código tiene algunos errores no triviales.
- El código funciona bien, pero se puede optimizar fácilmente
Puede usar tres o más partes diferentes de código, comenzar desde el más simple y avanzar hasta el siguiente si ve que el candidato se las arregla con facilidad. Agregue algo de recursión, para condimentar las cosas.
Recursos
Solicite una lista detallada de los recursos PHP que utiliza el candidato. Libros, blogs, foros, revistas, etc. Así es como mis empleadores actuales se enteraron de StackOverflow .
Si el candidato menciona StackOverflow o Programadores, NO debe preguntar ni intentar averiguar su nombre de usuario. Si quisieran anunciar su reputación, habrían incluido un enlace de Carreras 2.0 en su currículum.
Marcos
Todos los desarrolladores de PHP deben conocer los marcos PHP más populares:
y ser fluido en al menos uno de ellos. Puede tener algunos ejemplos de código listos para cada uno y pedirle al candidato que los lea y los explique, después de que le digan con cuál están más familiarizados.
Depuración y perfilado
Siempre he sentido que los desarrolladores de PHP carecen de habilidades de depuración y creación de perfiles (quizás solo los desarrolladores de PHP con los que he trabajado). Si durante la discusión descubre que el candidato usa activamente xdebug , no se moleste con el resto de la entrevista y simplemente contrate a ellos. ;)
Desinfección de entrada
Esto es importante. Puede comenzar con una discusión sobre por qué es importante y luego pedir los métodos más comunes para lograrlo. Esta discusión le ayudará sobre qué preguntar.
Algunos consejos:
PHP snafus
Puede encontrar muchos problemas de PHP en esta excelente discusión . Si está entrevistando para un puesto de alto nivel, debe definir preguntar sobre algunos de ellos. Algunos ejemplos:
Manejo de PHP de valores numéricos en cadenas:
"01a4" != "001a4" // true
"01e4" == "001e4" // also true
Código PHP válido :
System.out.print("hello");
En PHP, una cadena es tan buena como un puntero de función:
$x = "foo";
function foo(){ echo "wtf"; }
$x(); # "wtf"
Examen de la unidad
¿Necesito decir mas?
Conclusión
Un buen desarrollador de PHP debe combinar una variedad de habilidades y talentos:
- Una buena comprensión de HTTP
- Una buena comprensión de la configuración de Apache (incluso si utiliza un servidor web diferente en su empresa)
- Al menos una comprensión básica de JavaScript
- Una gran comprensión de HTML / CSS
La lista sigue y sigue. Asegúrese de adaptar la entrevista a las necesidades específicas de la oferta de trabajo, no desea contratar solo un buen desarrollador, sino un buen desarrollador que sea excelente en lo que necesita que haga inmediatamente.