Última actualización el
2010-12-26
3 min de lectura
Consideren la siguiente entrevista ficticia
“Gerente de Circo: ¿Cuanto tiempo ha estado usted haciendo
malabarismo?
Candidato: Oh, como seis años
Gerente: ¿Puede dominar tres bolas, cuatro bolas, y cinco bolas?
Candidato: Sí, sí y sí.
Gerente: ¿Trabaja usted con objetos en llamas?
Candidato: Claro.
Gerente: ¿…cuchillos, hachas, cajas de cigarro abiertas, sombreros de
paja?
Candidato: Puedo hacer malabares con cualquier cosa.
Gerente: ¿tiene algún tipo de golpeteo divertido como parte de su
espectáculo?
Candidato: Es hilarante.
Gerente: Bueno, eso suena bien. Supongo que queda contratado.
Candidato: Ummm… ¿No quiere verme hacer unos malabares?
Gerente: Esteee, nunca pensé en eso.”
“Sería ridículo pensar en contratar a un malabarista sin haber visto su
performance antes. Es de sentido común. Aún así cuando se trata de
contratar a un ingeniero o diseñador o programador, o jefe de grupo, las
reglas del sentido común parecen suspendidas. No les pides ver un
diseño, o un programa o cualquier cosa. De hecho, la entrevista es
simplemente una conversación”
por Tom DeMarco y Timothy Lister (citador por Reg Braithwaite en este
post )
Es dificil generalizar, pero de acuerdo a estos dos autores se da
bastante esta tendencia en nuestra industria, la de escoger gente sólo
en base a lectura de currícula y entrevistas personales.
Personalmente, cuando lo he hecho así he tenido malas experiencias,
porque el currículum aguanta de todo.
En particular, para los ingenierios informáticos, inclusos si van a ser
jefes de proyectos, mi principal filtro es averiguar si saben programar.
Hay gente que contrata jefes de proyecto que no son informáticos, yo no
soy de esa idea, porque creo que el buen programador es una persona
mentalmente disciplinada, probablemente al único otro profesional que
contrataría para jefe de proyecto es a alguien que haya estudiado
filosofía. Lo digo en serio.
Como no espero contratar a los mejores programadores a la primera, tengo
que establecer un cierto método de entrevista que me permita obtener
buenos elementos. No es fácil, llevo años contratando gente, y he tenido
los más diversos resultados.
Lo primero que mido es si el candidato sabe programar, el filtro
FizzBuzz
es asombroso, en un post
anterior les
propuse este test, normalmente esta o una pregunta similar va incluida
en mi examen de ingreso. En mi experiencia el 40% no la contesta, o la
contesta mal. Las otras son preguntas de programación más avanzada, o de
análisis de requerimientos, y siempre alguna pregunta que implique
hacer un modelo.
Con los años me he dado cuenta que los ingenieros informáticos salen
cada vez con menos experiencia en programación desde las universidades,
lo que es lamentable. Es como jugadores de fútbol que no sepan hacer
pases, o cabecear, parafraseando a Franco Catrin.
Para mí es importante que los ingenieros desarrollen habilidades
comunicacionales, eso es en lo que más me fijo en el último tiempo. Ya
no me interesa contratar a los más inteligentes, prefiero a los menos
ensimismados.
El otro aspecto que me interesa es que
no sean atolondrados,
ya estoy cansado de sufrir con la mantención de código
copypasteado malamente de google.
Yo entrevisto y selecciono cada vez más jóvenes inteligentes, y
apasionados, que quieren aprender a programar, pero que han tenido una
pésima preparación. No es nuestro rol en la empresa prepararlos, pero
hemos tenido que hacerlo, pero al menos debemos poner un filtro pasa
bajo, como FizzBuzz,
porque lo mínimo que se espera de un ingeniero informático es que sepa
hacer un loop con un par de ifs, ¿o estoy mal?