Cómo entrevistar a un desarrollador full stack frente a un ingeniero de nivel básico

Haz que describan su pila.

Lo que considero un desarrollador Full stack es alguien que puede llevarlo a través de todo el proceso desde la concepción -> hacer que el servidor funcione y mantenerlo de esa manera. Debe tener conocimiento de lo siguiente:

  • Un proceso de desarrollo de software y herramientas para respaldarlo.
  • La trinidad profana HTML / CSS / JS
  • Un servidor web y un lenguaje que se ejecuta en él.
  • Herramientas para que ese idioma ejecute pruebas unitarias tanto para la parte de JavaScript como para la parte del servidor web.
  • Conocimiento de un servicio de construcción.
  • Plataforma para desplegar.

Hay muchas opciones para todas estas categorías. Pero si una persona conoce al menos a todos al nivel, puede apoyar un proceso. Puede hacerlo en alguna otra pila con el tiempo.

Después de definir la pila, es probable que desee analizar cómo usa la herramienta y por qué esa en lugar de todas las demás. Puntos de bonificación si conoce las herramientas de la pila de la competencia.

Mis entrevistas están destinadas a evaluar no solo su conocimiento / habilidad técnica, sino también su personalidad y valores.

Tengo un problema técnico que le doy a todos los desarrolladores que entrevisto, independientemente del nivel. La respuesta que recibo me da una idea bastante buena de si estoy tratando con un ingeniero de nivel de entrada o un desarrollador de stack completo, o si simplemente me están engañando arrojando toda la jerga en su currículum.

Los mejores ingenieros de nivel básico harán todo lo posible para resolverlo, incluso si el problema está más allá de ellos. Los mejores desarrolladores de full stack responderán al problema utilizando su conocimiento y experiencia acumulados. El desafío es descubrir si solo están tratando de salir del paso haciendo preguntas más profundas sobre el problema.

Al final del día, le doy preferencia a las personas que perseveran a pesar de las dificultades. Porque el desarrollo de software es difícil. Y necesito personas que estén dispuestas a sufrir por ello.

Un desarrollador de pila completa es alguien que es muy familiar, si no Genius, en casi todas las áreas de desarrollo (¿software?).

1. Pregúnteles por sus proyectos anteriores oficiales y cualquier proyecto paralelo
Las personas con ese tipo de habilidades no solo se caen del cielo o nacen de esa manera. Se vuelven “IT” ensuciándose las manos.
Permítales explicar cómo funciona todo el proyecto, desde la base de código a la UX, a la interfaz de usuario y al ServerStack.
Si es posible, haga que personas con especialidades en cada una de estas áreas estén presentes en la sala y permita que hagan preguntas interesantes sobre su especialidad.
Un buen desarrollador de pila completa tendrá un conocimiento bastante bueno para poder involucrar a casi todos bastante bien.
Sé esto por experiencia personal.

Alternativamente podrías

2. Obtenga ayuda
Tiene colegas, amigos que son mejores y más especializados en otras áreas de la pila que no sean su especialidad. Permita que él / ella se siente con ellos para una entrevista y sea evaluado por ellos.

Solo mi 2c

Se espera que el desarrollador de pila completa conozca bien los diferentes niveles de la aplicación. Por lo tanto, al entrevistar al desarrollador de pila completa, debe centrarse más en las diferentes capas.

  • El desarrollador de pila completa debe saber cómo desarrollar la interfaz de usuario utilizando HTML y CSS. Preferiblemente HTML 5 y CSS 3.
  • Debería sentirse cómodo en el marco JS front-end como AngularJS o Backbone.
  • Debería ser bueno en lenguaje del lado del servidor como PHP, C #, Java.
  • Sus conceptos sobre el servidor web deben ser claros, como la escalabilidad, la limitación.
  • Debe tener buenos conocimientos sobre DBMS.

Incluso si la persona no es muy consciente de ninguna tecnología específica si sus conceptos de desarrollo web son buenos, creo que puede recoger cualquier pila fácilmente.

Existen técnicas tradicionales de entrevista, como preguntas y respuestas establecidas / prueba práctica, etc., y luego hay entrevistas conductuales en las que el entrevistado explica su trabajo y, a partir de eso, el entrevistador plantea preguntas basadas en escenarios.

El último funciona mejor para los desarrolladores de full stack, ya que revela cuánto saben sobre lo que dicen que han hecho.

No se trata de hacer preguntas avanzadas, sino de comprender su nivel de conocimiento conceptual. La capacidad analítica y la capacidad de dividir un problema en problemas más pequeños junto con la comunicación, la confianza y el comportamiento es todo lo que la entrevista debería tratar en mi opinión.

Simplemente pon.

Una pila completa necesita tener experiencia. Por lo general, puedo decir si se experimenta una pila completa simplemente hablando con ellos sobre una amplia gama de temas técnicos (administración de servidores, desarrollo del servidor, front-end, marcos) y lo siento desde allí. Es difícil dar pruebas técnicas completas porque no piensan como ingenieros regulares. Un buen stack completo no tiene miedo de aventurarse fuera de su zona de confort para hacer un trabajo. Un portafolio y una prueba para llevar a casa son buenos aquí.

Para los ingenieros de nivel básico, me encanta darles una pieza de un juego JS para construir. Me ayuda a juzgar qué tan rápido pueden recoger y usar cosas nuevas.

Al prepararse para la entrevista con un candidato para un trabajo de desarrollador de stack completo, debe tener en cuenta que este rol es más complejo. Por lo general, las preguntas de una entrevista de desarrollador de Full Stack son de carácter técnico. Puede encontrar más información allí: preguntas de la entrevista completa para desarrolladores

Para los puestos de nivel de entrada, busco la capacidad de aprender, la capacidad de hacer un trabajo independiente y encajar en nuestra cultura corporativa.

Para puestos más altos, busco la experiencia además.