Si te hace sentir mejor, existen malos programadores en casi todos los países. Cómo eliminarlos es el problema.
El primer deshierbe es el currículum. Una cosa que busco es una gran cantidad de experiencia lingüística y nada que describa lo que hicieron en ese idioma. He visto currículos que afirman que saben todos los idiomas inventados y, sin embargo, su experiencia demuestra que solo han trabajado con Access y Visual Basic. Esos van directamente a la basura. 10 hojas de vida van directamente a la basura (especialmente las hojas de vida de personas con menos de 2 años de experiencia que he recibido). De los recién graduados universitarios con poca experiencia, tienes que ser muy exigente con la forma en que se presentan. Los mejores candiatos son cuidadosos con sus currículos, no tienen errores. ¿Realmente estás buscando a alguien a quien le importe tan poco que no se molestó en revisar su currículum?
Los curriculums vitae preparados profesionalmente van a la basura también. Una vez que haya leído cientos de currículos, puede seleccionarlos ya que usan exactamente la misma redacción. No puedes confiar en el contenido de un currículum preparado profesionalmente y sabes que la persona no hizo su propia preparación. Este es el tipo de persona que confiará en otros para resolver sus problemas por él, ¿realmente quieres eso en una posición de programación?
Busque cosas que hagan que la persona se destaque por las que elija. Eso es más difícil, por supuesto, con los que están recién salidos de la escuela, pero busque logros, contribuciones al código abierto, etc.
La próxima eliminación es la entrevista telefónica. Pregunte sobre los conceptos básicos que se relacionan con el trabajo real que tiene. Si las personas no tienen un conocimiento básico de los conceptos que necesita que tengan, no vale la pena molestarse en participar en una entrevista personal. Los jóvenes a menudo piensan que esto es injusto porque pueden buscar todo en Internet, pero la verdad es que nunca he conocido a un buen programador que haya tenido que buscar todo en Internet. Debe tener algún conocimiento de su profesión que no tenga que buscar cada vez.
Después de la entrevista telefónica, debe seleccionar los mejores 4-5 candidatos y la entrevista. Por supuesto, si solo tiene 1-2 buenos candidatos, no se moleste en entrevistar a las personas que ya eliminó. Ahora va a hacer las preguntas difíciles y tener una idea de cómo abordan los problemas. Nunca usaría la prueba de fizzbuzz porque es demasiado conocida, por lo que las respuestas no le dicen nada. En su lugar, inventa algunos problemas desde tu propio código base. Podría darles un requisito y una pieza de código y preguntarles si el código cumple con el requisito y, de no ser así, por qué no y qué podrían hacer para que cumpla con el requisito. Les pido que describan el problema de programación más difícil que han tenido que resolver y qué pasos tomaron para encontrar la respuesta. Me gustaría hacer algunas preguntas técnicas más a fondo. Recuerde que está tratando de familiarizarse con su competencia técnica, su capacidad de resolución y depuración de problemas y su capacidad para adaptarse a su equipo actual. También hago preguntas que probablemente no saben la respuesta para juzgar qué tan bien manejan el estrés, es un trabajo estresante, no quiero a alguien que se retire en la entrevista porque el estrés del trabajo es mayor que el estrés de la entrevista. . Busco fortalezas en áreas en las que actualmente estamos débiles y con capacidad para trabajar en equipo y presentarnos a los clientes (nuestros desarrolladores tratan ampliamente con los usuarios), su lista puede ser diferente.