Cómo superar un test de programación durante la entrevista

19 dic 2019

5 min

Cómo superar un test de programación durante la entrevista
autor
Javier Lacort

Redactor freelance especializado en tecnología y startups

Si eres desarrollador web, es muy probable que en algún momento tengas que enfrentarte (o te hayas enfrentado ya) durante una entrevista de trabajo a un test práctico en el que se te pide que resuelvas un problema o que lleves a cabo un ejercicio de programación. Son ejercicios que sirven para poner a prueba al candidato y comprobar cuáles son sus conocimientos prácticos y cómo encara la búsqueda de soluciones a nuevos problemas. Estos son nuestros consejos para superar un test de programación como parte de un proceso de selección.

Qué puedes esperar de una entrevista para un perfil técnico

En este tipo de entrevistas se suele reservar un momento para hablar de los aspectos técnicos. Durante la conversación, puedes sacar a relucir tus conocimientos teóricos y demostrar que conoces el lenguaje apropiado para el puesto. El problema que esto plantea es que una conversación siempre girará alrededor del ámbito teórico y el entrevistador difícilmente podrá evaluar tu capacidad real de resolución de problemas en el área del desarrollo.

Y precisamente por eso existen las pruebas prácticas: el escenario en el que debes demostrar al reclutador que, más allá de la formación y habilidades que reflejaste en tu currículum, sabes afrontar los desafíos y sacar adelante las tareas. Normalmente, estas pruebas consisten en resolver un problema o realizar un desarrollo desde cero.

Pero lo importante no es solo el resultado, sino también los motivos por los que has elegido un método concreto para llegar hasta ese resultado y cómo has desarrollado ese método durante el proceso. A la empresa le interesa comprobar:

  • cuál es tu forma de proceder
  • cómo trabajas en equipo para facilitar el trabajo a tus compañeros
  • cómo respondes ante un bloqueo

En qué consisten los tests de programación

Los tests pueden tener formatos distintos y se dirigen a candidatos con distintos perfiles. “Este tipo de pruebas se utilizan tanto para ingenieros de software (BE/FE/mobile) como para software test engineers de cualquier nivel (junior, mid y senior), pero en función del nivel, se esperará del candidato una solución de mayor o menor dificultad técnica”, asegura Marta Ruiz, team lead en Xing.

Desarrollo

Pueden consistir en:

  • construir el esqueleto de una aplicación móvil
  • desarrollar el código apropiado para un tipo de web concreta
  • encontrar un error en un código ya dado

Adaptación

A partir de un fragmento de código, desarrollar una adaptación para un uso distinto del que tenía originalmente. Por ejemplo, añadir la posibilidad de que plugins externos puedan manejar sus propios archivos, para lo que el candidato tendrá que añadir el código necesario para este fin sin comprometer el código preexistente. Existen plataformas como TestDome donde se pueden consultar distintos tipos de tests que las empresas acostumbran a pedir a los candidatos.

Resolver un enunciado

Otra plataforma también a menudo utilizada por reclutadores y empresas durante las pruebas es Codility, donde normalmente el candidato debe resolver un enunciado en 30 minutos. La propia plataforma permite compilar y probar la solución ofrecida, y devuelve una puntuación. También permite hacer un test gratuito para prepararse de cara a una posible entrevista.

Las 5 claves para preparar la prueba

Con estas premisas en mente, ya puedes empezar a preparar de forma específica el test de programación de un proceso de selección. Para ello, te recomendamos que sigas estos consejos:

1. Prioriza las instrucciones que te dé el reclutador

Las empresas que recurren a este método tienen estilos y necesidades distintas, por ello es esencial que prestes atención a las instrucciones que se te entregan para poder completar la prueba. No atender a los requerimientos de la empresa puede ser interpretado como síntoma de desgana, de no saber respetar las instrucciones de un superior o de no saber trabajar en equipo.

Por ejemplo, según comenta Marta Ruiz, la red Xing acostumbra a realizar tests de programación a los candidatos que superan la entrevista inicial, aunque en lugar de fijar un límite de tiempo para resolverlos, les pide que sean ellos quienes comuniquen la fecha estimada en que van a entregar la respuesta. “En este caso, si no proporcionas una fecha o la excedes sin avisar, esto será sin duda un mal indicador”.

2. Dedica tiempo a pensar en la solución

Las ganas de acabar la prueba en un tiempo que impresione al reclutador pueden hacer que te precipites y tomes una decisión incorrecta o parcial. También pueden entrar en juego los nervios, que podrían hacer que interpretaras mal el enunciado y acabaras optando por un camino que no fuera el requerido. Invertir el tiempo suficiente en entender la prueba y asegurarte de que sigues las pautas correctas aumentará tus probabilidades de encontrar la solución perfecta.

Y si tienes alguna duda, no dudes en preguntar. Huye de esa vocecita que te dice que admitir que no has entendido una parte del test es un síntoma de debilidad. La buena comunicación en equipo es un factor clave para el éxito, y precisamente cuando más falta hace esa comunicación es cuando surgen complicaciones o malentendidos.

3. Documenta todo el proceso

En estas pruebas no solo se busca un buen resultado final, sino también comprobar cómo el candidato va resolviendo los problemas que van surgiendo por el camino. Parte del objetivo de un test de este tipo es que el candidato pueda explicar y argumentar el porqué de sus decisiones. Es más: muy posiblemente, tras la entrega, la empresa te pregunte sobre tus decisiones, incluso si el resultado ha sido satisfactorio. Deberás tener claras las respuestas que quieres dar y tus argumentos.

Y para ello, nada mejor que plasmarlo todo por escrito, tanto para ti mismo como para ayudar al reclutador a comprenderlo de un solo vistazo. Es más: según explica la team lead de Xing, lo ideal es “acompañar tu entrega final de un archivo README que contenga los pasos a seguir para ejecutar y evaluar el resultado final”.

4. Haz Commit con frecuencia

Es decir, confirma los cambios provisionales que deban pasar a convertirse en solución permanente. Como sabes, guardar los archivos en el repositorio implica que estos cambios se han consolidado y que la ejecución ha sido exitosa. Según Marta, “esto también proporciona información sobre la línea de pensamiento del candidato”.

5. Interactúa con el resto de miembros del equipo

A un desarrollador freelance que trabaje por su cuenta se le presupone la capacidad de trabajo autónomo e independiente. Pero para encontrar soluciones dentro de un grupo de trabajo, la virtud está en saber trabajar en equipo. En algunas entrevistas grupales hay varias personas de la empresa evaluándote para un test en tiempo real. En ese caso, y si procede en el tipo de test (en algunos casos debes hacerlo a solas), puedes comunícate con el resto de miembros de las distintas áreas: calidad, operaciones… pues es una forma de demostrar tu capacidad para el trabajo colectivo

Por último, ten presente que en un test de programación como parte de un proceso de selección no solo se pretende conocer tu habilidad como programador, sino también tu forma de enfrentarte a los bloqueos o de organizar el trabajo que tienes por delante, la capacidad para resolver desafíos como parte de un equipo y sacar adelante las tareas junto al resto de miembros, cuál es tu manera de argumentar tus decisiones, y en definitiva, cómo podrías encajar en el día a día de la empresa más allá de tu talento con el código. Es una buena ocasión para sacar a relucir muchas habilidades transversales que te pueden suponer muchas más papeletas para ser el candidato que logre el puesto, no olvides que no solo les interesa el aspecto técnico.

Foto de WTTJ

¡Sigue a Welcome to the Jungle en Facebook y abónate a nuestra newsletter para recibir nuestros mejores artículos!

Las temáticas de este artículo