La rotación de personal puede costar al empresario entre el 50% y el 200% del salario del empleado saliente, dependiendo de la antigüedad del puesto. Contratar a las personas adecuadas y llevar a cabo un proceso de entrevistas eficaz es fundamental para reducir el riesgo de rotación y garantizar que solo se contrata a la mejor persona para el puesto.
La selección de personal no siempre es la parte más difícil del proceso de contratación. Para muchas empresas, el proceso de entrevista es igualmente desalentador. El objetivo de la entrevista no es sólo conocer a los candidatos, sino aportar claridad y elementos diferenciadores que faciliten el proceso de selección. Pero hay más cosas que se pueden hacer para facilitar el proceso. Cuando se contrata a programadores, por ejemplo, las evaluaciones de codificación son una práctica común para evaluar la capacidad antes de una entrevista. No hay necesidad de hacer perder el tiempo a nadie si el candidato no puede completar una prueba básica de programación, ¿verdad?
A primera vista, los tests de programación parecen una gran idea, pero últimamente han sido objeto de una gran reacción en blogs y redes sociales. ¿Merecen la pena? ¿Ahorran recursos a la empresa? ¿Garantizan una mejor contratación? Veamos los hechos.
Las pruebas demuestran habilidad, no potencial
Todos sabemos que algunas personas tienen mejores resultados que otras. Un test es sólo una medida de la aptitud, pero nunca debe tomarse como único indicador de la capacidad de una persona. El factor más importante es si una persona puede demostrar habilidad, así como potencial para aprender más. ¿Puede recibir formación? ¿Puede un mentor o directivo aprovechar lo que el candidato ya sabe?
La mayoría de las ramas de la programación evolucionan a un ritmo cada vez más rápido. Siempre hay un nuevo marco de trabajo o una nueva biblioteca y para tener éxito hay que mantenerse al día. Puede que un candidato tenga una experiencia impresionante trabajando en proyectos heredados, pero no esté al tanto de las nuevas tecnologías. Las evaluaciones de codificación modernas no revelarán su potencial para salvar rápidamente la brecha de aprendizaje.
La capacidad de aprender es una característica valiosa que a menudo no se refleja en una prueba. Por supuesto, necesitas saber si un desarrollador tiene las habilidades básicas, pero intenta no dar demasiada importancia a una sola prueba.
Los entornos de las pruebas de codificación no reflejan la realidad
Los deportistas tienen este concepto llamado "entrenamiento de especificidad". Significa que cuanto más se acerque tu entrenamiento al deporte real, más preparado estarás. Las evaluaciones de codificación suelen sacar a un programador de su entorno natural y le piden que complete una prueba sin sus recursos favoritos. ¿Cuántos programadores trabajan sin acceso a Google? ¿Cuántos escriben el código en una pizarra o en papel?
Sería como probar la forma física de un boxeador haciéndole montar en una bicicleta estática en lugar de golpear. Sí, te harás una idea de su forma física general, pero no verás lo que realmente puede hacer cuando está en su elemento. Del mismo modo, hay muchos ciclistas que podrían enseñar al boxeador en una bicicleta, pero que se cansarían rápidamente al golpear el saco de boxeo.
Investigar utilizando motores de búsqueda y aplicar una solución a un problema es una parte crucial del trabajo de codificación actual. Internet te da acceso a millones de otras mentes que han estado trabajando en el mismo problema. ¿Por qué reinventar la rueda? Sí, los desarrolladores no deberían depender de los motores de búsqueda cada vez que escriben un bucle "for". Pero poner a prueba la capacidad de alguien sin acceso a los motores de búsqueda es tanto una prueba de memoria como una prueba de codificación.
Si encuentra valor en las evaluaciones de codificación, considere la posibilidad de dar a los candidatos acceso a Google o permítales que completen la prueba en casa y luego pídales que le hablen de los resultados.
Las pruebas demuestran el proceso de pensamiento del candidato
Las pruebas de evaluación ofrecen una perspectiva poco frecuente del proceso de pensamiento de un candidato, siempre que se formulen las preguntas adecuadas. Si se toman los resultados de las pruebas tal y como están escritos, se pierde una gran oportunidad de conocer los métodos y el enfoque del candidato. Este conocimiento le ayudará a evaluar la capacidad de la persona para aplicar lo que sabe a distintas situaciones.
Con la prueba en la mano, pídeles que te guíen a través del proceso que utilizaron para obtener sus resultados. También puedes pedirles que hablen en voz alta mientras hacen la prueba para que veas cómo enfocan un problema. Sin embargo, esta metodología te será más útil si la enfocas desde un determinado ángulo.
Ten en cuenta que los candidatos están fuera de su zona de confort en una entrevista. Los nervios pueden afectar a los procesos de memoria y razonamiento de una persona, así que no plantees esta prueba como un episodio de Mastermind. No dudes en dar indicaciones al candidato si se atasca. Ayúdale sin responder por él. No pierdas de vista el objetivo: no buscas una respuesta concreta, sino saber cómo piensa y aplica sus conocimientos a las tareas para obtener un resultado.
Las pruebas demuestran las aptitudes interpersonales
Puede que la programación sea un trabajo técnico, pero las habilidades interpersonales siguen siendo esenciales. Los programadores trabajarán en equipo y tendrán que hablar de su código, justificar sus planteamientos y estar abiertos a diferentes puntos de vista. Tendrán que apreciar los comentarios constructivos para mejorar continuamente.
Las evaluaciones de codificación pueden darle una idea de este tipo de habilidades interpersonales. La compostura de un candidato durante una prueba puede decirle mucho sobre cómo interactuará y trabajará con otras personas en el puesto. ¿Son entusiastas y apasionados? ¿Están preparados para el reto? ¿Considera que la prueba está por debajo de sus posibilidades?
Para sacar el máximo partido de las pruebas de codificación, no pierdas de vista las aptitudes generales, además de las técnicas: actitud, comunicación y capacidad de aceptar críticas.
Las evaluaciones de codificación son excelentes para los puestos junior
Si está entrevistando a jóvenes programadores, las pruebas de codificación son valiosas porque pueden ser una forma sencilla de ver lo que son capaces de hacer. Para un programador junior, no se busca el producto acabado. Sólo necesitas que conozcan los fundamentos de la programación y que sientan pasión por aprender más.
Haz una prueba sencilla como FizzBuzz o invertir una cuerda. Puede que estas pruebas no tengan sentido, pero si alguien es capaz de montar una de ellas, demuestra que conoce los conceptos básicos. Como mínimo, demuestra que entiende los bucles, las variables, los condicionales y el flujo de control.
Si les pides que hagan una aplicación pequeña y sencilla, una aplicación CRUD básica por ejemplo, obtendrás aún más información sobre su nivel de codificación. Luego puedes hablar con ellos sobre el código que han escrito para saber más sobre cómo enfocan la codificación, qué saben y qué necesitarán que les enseñes.
Los exámenes no son ideales para los altos cargos
Los candidatos senior deben ser tratados de forma diferente. A diferencia de un candidato junior, un senior ya debería conocer bien todos estos aspectos básicos y esto debería ser obvio en su CV. Si tienen años de experiencia y les pides que escriban FizzBuzz, es probable que se sientan insultados y que estés perdiendo el tiempo. En esencia, estás cuestionando lo que han escrito en su CV.
Los desarrolladores sénior son profesionales experimentados: trátelos como tales. Esto no significa que tenga que subir la apuesta de sus evaluaciones de codificación y pedirles que escriban algo parecido a una aplicación lista para el mercado. Lo que quiere es desarrollar una prueba de codificación que se ajuste a su nivel de experiencia y que quizás les empuje un poco más allá de su zona de confort.
Relacionado: Por qué una entrevista de trabajo es cosa de dos
Las muestras de código suelen ser mejores que las pruebas
Para puestos intermedios y superiores, normalmente se puede prescindir por completo de la prueba formal de codificación. Lo mejor es pedir al candidato que envíe ejemplos de código que haya escrito y comentarlo con él. A partir de esta conversación, deberías ser capaz de desarrollar preguntas de sondeo que revelen su nivel de conocimientos.
Discutiendo una muestra, aprenderás todo lo que la prueba de codificación podría decirte y mucho más. Puedes pedirles que te lo expliquen, profundizar en los aspectos técnicos y preguntarles por qué adoptaron este enfoque en lugar de otro. Determina si lo que te están explicando se traduciría en el entorno y los requisitos del puesto. ¿Está relacionado? ¿Es pertinente?
Las pruebas de codificación llevan tiempo
Otro inconveniente de las evaluaciones de codificación, tanto si se hacen internamente como si se reparten deberes antes de la entrevista, es el tiempo que se tarda en completarlas. Las pruebas de codificación plantean un dilema. Desde la perspectiva de la empresa contratante, lo ideal sería que el candidato dedicara varias horas a una prueba relevante. La prueba tiene que ser lo suficientemente exhaustiva como para mostrar sus habilidades y usted quiere que se tomen su tiempo para poder hacerse una idea precisa.
Puede que el candidato no esté tan entusiasmado. Muchos programadores solicitan decenas, si no cientos, de puestos de trabajo antes de encontrar uno que les encaje. Imagínese dedicar unas cuantas horas a codificar pruebas para cada solicitud. No es factible y puede desanimar a un candidato viable.
También supone un coste para usted revisar el trabajo de los candidatos y gestionarlos mientras están en el edificio realizando las pruebas. Si utiliza pruebas, hágalas breves, por su bien y el de sus candidatos. Asegúrese de que la prueba sea eficiente y, al mismo tiempo, constituya una medida eficaz de la aptitud.
Las pruebas son más valiosas cuando son similares al trabajo real
Si realizas evaluaciones de codificación, asegúrate de que sean relevantes para el puesto al que aspira el candidato. Se podría pensar que esto no hace falta decirlo, pero en las redes sociales abundan las historias de terror sobre entrevistas, como las de personas a las que se somete a pruebas sobre algoritmos complejos, solo para descubrir que estarían todo el día corrigiendo errores y resolviendo conflictos de Git.
Si el trabajo implica algoritmos, pruébelos con algoritmos. Si van a trabajar en comercio electrónico, pídeles que conecten una aplicación sencilla a tu API. Si van a corregir errores, diseña una prueba en la que corrijan errores reales.
Usted no sólo tendrá una mejor idea de las aptitudes del candidato, sino que éste se hará una idea mucho más clara de cuál será su trabajo si es contratado. Es más justo y le acerca más a la contratación de la persona adecuada para el puesto, una persona que se quedará una vez contratada.¿Necesita ayuda para encontrar a los candidatos adecuados para su empresa? Conocemos la dotación de personal de TI por dentro y por fuera, y tenemos un proceso probado para conseguir a las personas adecuadas en los lugares adecuados. Si le parece bien, póngase en contacto con nosotros: ¡nos encantaría hablar de cómo podemos ayudarle!

Consejero Delegado, Zilker Partners
Jeff aporta a Zilker Partners una profunda experiencia en contratación, TI, digital y prestación de servicios, aprovechando su experiencia en telecomunicaciones, IBM y Dell. Como CEO, aborda cada proyecto centrándose en alinear a las personas, los procesos y la tecnología, garantizando una ejecución eficiente y unos resultados satisfactorios a través de una estrategia de entrega equilibrada e integrada.
