5 preguntas para entrevistar a un Desarrollador Back-End

Ricardo Galicia
Tabla de Contenidos

Introducción

Sabemos que contratarás talento para este cargo. Por lo tanto, desarrollamos un manual completo para facilitar tu labor. Esta es la última publicación de la serie


Aquí los post relacionados con el tema de Desarrollador Back-End:

  1. ¿Qué es un Desarrollador Back-End? 
  2. 5 habilidades requeridas en un Desarrollador Back-End.
  3. 6 lenguajes de programación utilizados por Desarrolladores Back-End. 
  4. 5 KPI que miden el éxito de un Desarrollador Back-End. 
  5. 5 preguntas para entrevistar un Desarrollador Back-End. (Este post)


En este post te compartimos las preguntas que son necesarias para tu entrevista con un Desarrollador Back-End, así como las respuestas que esperas del candidato. 


1. ¿Cuál fue el último proyecto en el que participaste? ¿Cuáles fueron los resultados logrados?

Con esta pregunta sabrás de la última experiencia laboral del candidato. Hablará del tipo de proyecto en que estuvo involucrado en su desarrollo y los resultados logrados por parte del equipo. 


Respuesta esperada: 

Algunos proyectos en los que participan normalmente los Desarrolladores Back-End son: 

  • Aplicaciones móviles. 
  • Plataformas empresariales. 
  • Sistemas de automatización. 
  • Plataformas con inteligencia artificial implementada para análisis de datos.
  • Bases de datos.
  • Videojuegos.
  • Drivers e interfaz de hardware.
  • Páginas web.



El candidato hablará de los proyectos en los que participó previamente. Asimismo destacará los resultados obtenidos en ellos. Estableciendo que el equipo trabajo para que la plataforma funcionará correctamente cuando los usuarios hicieran uso de ella. Aquí debes buscar que su experiencia previa sea lo más compatible posible con el desafío que tendrá el candidato cuando entre a trabajar.


2. ¿Qué técnicas has empleado para mejorar el rendimiento de los proyectos de sitio web en los que participaste?

Con la pregunta conocerás las técnicas con las que el candidato optimizó los sitios o aplicaciones web que desarrolló. Garantizando que la plataforma se mantenga estable mientras es navegada por los usuarios.


Respuesta esperada

  • Optimización de bases de datos: esto reduce la cantidad de espacio que requiere una base de datos (normalización) o el tiempo de consulta de información (denormalización). 
  • Disminución de consultas a bases de datos: una gran cantidad de consultas afecta el rendimiento de sitio. Para ello, es necesaria la implementación del mecanismo llamado “carga ansiosa”. El cual permite la carga de datos requeridos por el sitio en una sola consulta y no en varias. 
  • Almacenamiento en memoria caché: reduce el tiempo de carga de la base de datos. Aumentando la velocidad a la que el servidor procesa las solicitudes de los usuarios.
  • Implementación de un CDN (Red de distribución de contenido): conjunto de servidores en todo el mundo que almacenan en caché contenido estático como imágenes, archivos JavaScript y CSS. Esto garantiza que el sitio web tenga velocidades de carga de contenido más rápidas. 


El candidato mencionará las técnicas que utilizó para mejorar el rendimiento de sitios web. Destacará aquellas que emplea recurrentemente y que le brindan resultados. Asegurando que el sitio cuente con capacidad para responder las solicitudes de los usuarios. 


3. ¿Has desarrollado aplicaciones web escalables? ¿Qué enfoque implementaste para lograrlo?

Una aplicación web escalable mantiene un rendimiento constante, independientemente de cuántas personas la ocupen al mismo tiempo. Por lo que, con esta pregunta conocerás las acciones que implementa el candidato para lograrlo.  


Respuesta esperada: 

La escalabilidad de una aplicación es posible a través de dos diferentes enfoques. Los cuales son: 


  • Escala vertical: el enfoque contempla la actualización del hardware del lado del servidor. Aumentando las capacidades del procesador, memoria, bases de datos y red implementados para el funcionamiento de la aplicación. De manera que, hace frente al aumento de usuarios a través del aumento de la potencia del servidor. 
  • Escala horizontal: este enfoque considera la adición de servidores adicionales a la infraestructura del sistema. De forma que, varios dispositivos comparten la carga de procesamiento. Aumentando así su capacidad para manejar crecientes demandas de tráfico.


El candidato mencionará las ocasiones en las que participó en el escalamiento de una aplicación. Mencionando el enfoque y acciones que se adecuaron más a cada caso. Logrando que las aplicaciones mantuvieran su rendimiento sin importar cuanto aumentaran los usuarios.


4. ¿A qué desafíos te has enfrentado como Desarrollador Back-End?

El candidato mencionará los retos que enfrentó en experiencias laborales pasadas. Hablará de las soluciones que implementó y lo que aprendió de dichas situaciones. Así, conocerás su capacidad de respuesta ante circunstancias complejas.


Respuesta esperada:

  • Los requerimientos de la plataforma cambian continuamente. Para ello, es necesaria una comunicación sólida entre las partes involucradas en el proyecto. 
  • Depuración del código del sitio, aplicación o plataforma. Parte del proceso es manual debido a que las herramientas no detectan todos los errores existentes. 
  • Tiempo de desarrollo limitado. Lo que en algunos casos limita la calidad del producto entregable.  
  • Creación de una plataforma escalable que ofrezca un buen rendimiento a los usuarios. 
  • Asegurarse de que las bases de datos proporcionan la información correcta a los usuarios mientras interactúan con la interfaz. 
  • Conocimiento y aplicación de nuevas tecnologías para el desarrollo. Principalmente, el uso de frameworks. 
  • Aplicación de medidas de seguridad pertinentes del lado del servidor. Evitando que la plataforma y los datos de los usuarios queden expuestos contra ataques.


El candidato mencionará aquellas situaciones en las que obtuvo mayor aprendizaje. Hablará de que, a pesar de la complejidad encontró una solución adecuada a dicha circunstancia. Lo cual, ayudó a que ahora resuelva problemas similares de forma efectiva y en menor tiempo


5. ¿De qué forma simplificas tu trabajo cuando estás programando?  

Con la pregunta reconocerás cómo simplifica su trabajo el candidato. Mencionando aquellas prácticas que le brindan resultados. 


Respuesta esperada:

  • Uso de nombres en variables, funciones y clases que sean comprensibles tanto para desarrolladores junior como senior. 
  • Inclusión de comentarios que declaren los cambios realizados por otros desarrolladores y el motivo. 
  • Organización del código mediante sangrías/ indentaciones. Las cuales facilitan la distinción entre fragmentos de código. 
  • Aplicación de pruebas a cada fragmento de código. Garantizando que cada uno sea funcional individualmente y posteriormente, en grupo. 
  • Consideración de la escalabilidad de la plataforma. Anticipando posibles cambios e implementación de nuevas funcionalidades. 
  • Reutilización de líneas de código funcionales provenientes de otros proyectos. 


El candidato hablará de las prácticas que implementó para el desarrollo eficiente de los proyectos en los que participó. Destacando aquellas que permitieron que su equipo y él lograran mayor productividad. Evitando posibles errores o fallas de funcionalidad de la plataforma. 


Conclusiones

Ahora cuentas con las preguntas necesarias para tu entrevista con un Desarrollador Back-End. Toma en cuenta lo anterior en tu siguiente proceso de reclutamiento y selección. Recuerda, recluta profesionales que garanticen el funcionamiento del sitio web de tu empresa.


Te recomendamos que continúes leyendo sobre el tema de Desarrollador Back-End. Aquí los demás post relacionados:

  1. ¿Qué es un Desarrollador Back-End? 
  2. 5 habilidades requeridas en un Desarrollador Back-End.
  3. 6 lenguajes de programación utilizados por Desarrolladores Back-End. 
  4. 5 KPI que miden el éxito de un Desarrollador Back-End. 
  5. 5 preguntas para entrevistar un Desarrollador Back-End. (Este post)


Si estás buscando que el reclutamiento de tu próximo Desarrollador Back-End sea 100% online, es el mejor momento para iniciar gratuitamente un piloto con Aira y renovar tus herramientas de reclutamiento. ¡Agenda una llamada con nosotros!


Aprende a reclutar al mejor talento

Accede a las mejores prácticas en reclutamiento y selección con el contenido especial para tech recruiters que enviaremos a tu correo cada que saquemos contenido que te sume valor.

Artículos Relacionados

Descubre más contenido que te puede interesar.
July 1, 2021

¿Qué es un Data Analyst?

Un Data Analyst es el encargado de compilar, analizar e interpretar datos con los que se puedan definir estrategias de crecimiento para la empresa.
Ricardo Galicia
June 23, 2021

¿Qué es un Scrum Master?

Un Scrum Master es la persona encargada de la correcta ejecución de los procesos ágiles para el desarrollo de productos de calidad dentro de la empresa.
Ricardo Galicia
June 9, 2021

¿Qué es un Product Owner?

El Product Owner es la persona encargada de trabajar con los stakeholders para determinar las características que el producto tendrá cuando sea lanzado. 
Ricardo Galicia