¿Cuáles son las mayores diferencias al entrevistar a un recién graduado frente a un desarrollador de software con 1 año de experiencia?

En mi experiencia, demasiados recién graduados piensan que su experiencia escolar los ha preparado completamente para una carrera en el mundo real. Tienen una visión demasiado optimista de sus propias habilidades y fortalezas, y una visión correspondientemente baja de su necesidad de continuar aprendiendo cosas nuevas.

Después de un año de experiencia, tienden a tener una visión más realista de sus propias habilidades y fortalezas. De hecho, a veces esto incluso oscila demasiado bajo. El primer año puede ser bastante abrumador.

Hay un recién graduado en mi equipo que previamente había realizado una pasantía de verano con la compañía. Durante su primer año a tiempo completo, completamos el proyecto de pasantía para que esté listo para la producción. (Esto implicaba reescribir porciones significativas de él …) Observó en un momento que finalmente se había dado cuenta de cuán lejos había estado el proyecto interno; cuando regresaron a la escuela, asumieron que estaba listo para comenzar.

Para ser honesto, no hay mucha diferencia. Un año de experiencia en el campo en el que opero básicamente no es nada, y lo coloca en el ámbito de los candidatos sin experiencia.

Los candidatos sin experiencia se evalúan principalmente por su potencial, inteligencia bruta y rendimiento académico , en lugar de un historial comprobado de logros e impacto.

En todo caso, podría mirar con un poco de sospecha una tenencia de 1 año, si fuera un puesto de tiempo completo en un empleador regular. En algunos entornos, podría perjudicar su candidatura. En muchos campos, un año es un período demasiado corto para hacer una contribución duradera. Como entrevistador, me pregunto por qué exactamente te vas tan temprano, qué está mal en tu empleador actual, si me cuentas la historia completa y si también corres el riesgo de dejar a mi empleador después de un año si contrato tú.

Eso sería malo, porque durante la mayor parte de ese año sería una pérdida neta, disminuyendo la velocidad y distrayendo a los miembros del equipo más experimentados que necesitan dedicarle tiempo para ponerse al día. Más tarde, cuando llegue el momento de devolverle algo al equipo, estará listo para partir. Eso no es deseable.

Esta respuesta refleja solo mi opinión personal y no representa necesariamente las políticas de ningún empleador mío, actual o anterior.

Entrevisté a principios de este año con 3 años de experiencia. Entonces quizás no sea exactamente lo que querrías.

Recién salido de la universidad, la entrevista no fue demasiado intensa. Charle sobre su proyecto de último año, con un debate en profundidad sobre las opciones de diseño, mejoras, etc. Una serie de preguntas técnicas, como escribir una lista vinculada, escribir una cola, explicar las etapas de la compilación. Discusión y preguntas sobre el trabajo en equipo, yada yada.

A principios de este año, las entrevistas mejoraron su juego. Hubo más de ellos (generalmente 2 o 3), las preguntas técnicas continuaron hasta que te quedaste sin respuestas (para probar tus límites). Pruebas técnicas donde envía el código. El código de escritura habitual en una pizarra para lo siguiente: recorrido del árbol, fizzbuzz, cola, pila, cubierta … Discusiones sobre cosas pasadas en las que he trabajado. Por qué me voy de mi otro trabajo. A dónde quiero ir en mi carrera. El error más difícil, cómo se solucionó. Proyectos caseros, debates sobre ellos y sus opciones de diseño. Cómo resolvería un problema que están teniendo. Además de todas las preguntas habituales de trabajo en equipo y comunicación.

Los encontré mucho más intensos que mi entrevista inicial directamente de la Universidad. Se espera que tenga más ejemplos, pueda relacionar su experiencia con lo que quieren y resolver problemas más difíciles. Mientras te prepares y practiques para ellos, no será tan malo. El libro Cracking the Coding Interview (Libro) fue invaluable para ayudarme a conseguir algunas ofertas.

Lo que necesita saber depende de lo que haya hecho y de lo que quiera hacer.

Si está interesado en conseguir un trabajo como desarrollador de software, lo más importante sería demostrar su capacidad para desarrollar software. Lo que eso significa es demostrar que ha trabajado en proyectos de software con otras personas, que tiene conocimiento de lenguajes de programación y sistemas de construcción, pruebas, depuración y el ciclo de vida del software.