¿Por qué los entrevistadores suelen dar problemas de codificación que pueden no tener nada que ver con el trabajo diario?

A menudo me pregunto esto. Ambos porque odio las entrevistas, y nunca he usado las cosas que me pusieron a prueba durante las entrevistas. Con todo lo dicho, entiendo por qué tenemos que hacerlos.

Tiene que haber alguna medida objetiva. Por supuesto, hay muchas “habilidades blandas” que no se pueden evaluar directamente: pasión, determinación, aprendizaje rápido, solo por nombrar algunas. Todos estos son rasgos importantes que hacen buenos programadores; quien no le va a decir a su entrevistador “Me apasiona la informática, aprendo rápido y nunca me doy por vencido”. Eso suena genial, pero simplemente no hay una forma objetiva de medir esto.

Las preguntas de codificación dan a los entrevistadores algo para evaluar . Usted responde bien la pregunta o no. O lo codifica en O (1) tiempo o no lo hace. Usted sabe lo que es una lista vinculada o no. Sí, probablemente nunca se enfrente directamente a tener que implementar la eliminación de las vocales de una cadena o invertir una matriz en su lugar en el trabajo diario. Sin embargo, la mayoría de los entrevistadores hacen estas preguntas para evaluar su proceso de pensamiento y sus habilidades para resolver problemas .

Uno piensa que definitivamente se enfrentará día a día es resolver problemas nuevos y difíciles de nuevas maneras . No hay forma de saber exactamente qué problema tendrá que resolver, por lo que no pueden preguntarle a los entrevistados. Sin embargo, pueden hacer otras preguntas difíciles y ver cómo hace para comprender, diseñar e implementar una solución. Nuevamente, las preguntas de codificación son la mejor manera de hacer esto porque pueden evaluar tanto sus estructuras de datos como sus algoritmos, y también pueden evaluar sus habilidades de diseño al pedirle que designe algún sistema. También hacen todo esto en una hora. Rara vez tendrá que resolver un problema en una hora, pero las empresas no tienen todo el tiempo del mundo para entrevistarlo, por lo que poder hacer una pregunta que pruebe sus habilidades en un corto período de tiempo les brinda una buena evaluación de qué tan bien entiendes algo.

En resumen, no me imagino que a mucha gente le encanten las entrevistas. Sin embargo, todos tenemos que entender su necesidad. Ser capaz de diseñar y resolver un problema difícil en un tiempo limitado muestra mucho acerca de su comprensión del tema. Más importante aún, ser capaz de resolver un problema después de escucharlo por primera vez expondrá sus habilidades para resolver problemas . Esta es la métrica más importante que surge de una entrevista, me imagino. Los algoritmos específicos utilizados para resolver problemas son bastante exclusivos de los problemas específicos. Pero la forma en que diseccionas y resuelves problemas es aplicable a cualquier cosa con la que te enfrentarán día a día.

Las entrevistas de codificación solo permiten entre 30 y 60 minutos, no los días o semanas que toman los problemas diarios. En lugar de traer candidatos para entrevistas más largas, extrapolamos donde aquellos que no pueden resolver problemas de codificación triviales manejando condiciones de borde y bucles que terminan no podrán manejar problemas comerciales significativamente más complejos.

Absolutamente no tengo idea.

Recientemente escribí una prueba técnica que se está utilizando en este momento en una ronda de reclutamiento. Traté de incluir tantas cosas como pude relacionadas directamente con el trabajo y lo que tendrían que hacer a diario.

Hubiera sido demasiado fácil incluir todas las cosas básicas, por lo que hubo algunas preguntas más difíciles que probaron aspectos un poco más complicados del trabajo, pero aún permanecieron en el ámbito “general” de programación para la web. No pregunté nada específico que no esperaría de alguien extremadamente preparado.

Por lo tanto, no tengo una respuesta para usted que realmente resuelva su problema. En realidad estoy contigo, estoy de acuerdo en que es ridículo. Lo más probable es que falle en estas pruebas extrañas que realizan a las personas, pero ¿significa esto que soy malo en mi trabajo o menos capaz que otra persona, absolutamente no!