Entrevista técnica y capacidad del programador [cerrado]

14

Lo que voy a decir podría ser un poco controvertido por naturaleza, pero hoy estoy muy descorazonado, por lo que preguntaré.

Acabo de tener una entrevista con una importante empresa de tecnología para un puesto de pasantía, donde me hicieron muchas preguntas típicas de entrevistas orientadas a algoritmos. Ahora, dado mi historial, me considero fuerte en algoritmos (también obtuve buenas calificaciones en algoritmos de nivel de posgrado, cosas que involucran la NP-completa y más allá (aproximación y algoritmos aleatorios), pero desafortunadamente suspendí la entrevista. No pude piense en un método muy eficiente para resolver un problema de cuerdas en aproximadamente ~ 10 minutos. Una vez que terminó la entrevista, tomé un vaso de agua, comí un plátano y me relajé por un tiempo y probé el problema otra vez. La respuesta podría llegar en menos de 5 minutos. Y lo peor de todo: en realidad estaba en esa pista y el entrevistador lo insinuó, pero me presionó demasiada presión. Toda mi experiencia me hizo pensar en entrevistas con tecnología. preguntas y quería plantearlas en este foro -

  1. ¿Es realmente posible juzgar la capacidad técnica de alguien en media hora? ¿Honestamente? ¿O es solo un tiro de dados?

  2. ¿Las preguntas técnicas de la entrevista miden la capacidad de resolución de problemas? Este punto es muy discutible? Como estudiante de doctorado, sé que la resolución de problemas matemáticos implica resolver algo de lo que nunca has oído hablar antes. Por otra parte, preguntas como: ¿fusionar dos listas vinculadas en orden ordenado, o imprimir todos los elementos de un árbol binario en el nivel k se convierten en "meros ejercicios" una vez que alguien ha visto la solución o ha resuelto el problema de antemano?

  3. ¿Las personas que salen con mucho éxito en estas entrevistas se convierten en grandes programadores? ¿Continúan y diseñan elegantes motores de juegos, bibliotecas gráficas, escriben marcos de unión rápida de fork? ¿Hay alguna evidencia que apunte a una co-relación positiva entre hacerlo bien en las entrevistas técnicas y la capacidad real de programación? ¿O están estas entrevistas más orientadas a encontrar el tipo de persona "haciendo las cosas" (Spolsky)?

Puedo apostar a que muchos académicos que publican ideas innovadoras en ICML, VLDB, Mobicom suspenderán estas entrevistas. Pero puedo asegurarte que son algunas de las personas más inteligentes que encontrarás en este planeta.

Estoy principalmente en el mundo académico (estudiante graduado), por lo que apreciaré enormemente algo perceptivo por parte de alguien al otro lado de la cerca. ¿Alguien que conduzca estas entrevistas?

[Ok a todos. Gracias por todas las respuestas agradables y reflexivas. Como no quiero hacer otra pregunta, le pediré que responda esta pregunta por mí.

Supongamos que el candidato X tiene un buen portafolio público de trabajos en los que ha contribuido a algún proyecto de código abierto conocido en el que puede ir y verificar sus parches, verificar los errores que ha cerrado y echar un vistazo a los diseños que ha creado. . En ese caso, la pregunta es ¿cuánto peso está dispuesto a darle a su trabajo disponible / verificable públicamente en comparación con qué tan bien lo hace al responder una pregunta de entrevista de árbol binario muy artificial en menos de 15 minutos?]

    
pregunta user396089 29.02.2012 - 02:14

5 respuestas

11

Ten en cuenta que ...

  1. El objetivo principal de un proceso de entrevista no es llegar a la verdad absoluta sobre la capacidad personal de cada entrevistado, sino seleccionar a pocos candidatos de un grupo de muchos.
  2. Es MUCHO, mucho más costoso contratar a un mal desarrollador que pasar a uno bueno.

Muchas veces cuando se realizan entrevistas, se toman atajos imperfectos (como pruebas técnicas) porque, como mencionó, no hay un proceso perfecto para poder juzgar a una persona en 30 minutos. Pero como la mayoría no puede darse el lujo de trabajar con usted de lado a lado, debe aceptar que es lo que es, un juego de probabilidades que todos juegan.

    
respondido por el DXM 29.02.2012 - 03:50
9
  

¿Es realmente posible juzgar la capacidad técnica de alguien en media hora?

No exactamente. Es posible eliminar a las personas que no pueden programar en absoluto, y aquellos que no pueden explicar las cosas en su CV. Más allá de eso, por lo general solo trato de medir la inteligencia general y el interés en el campo. Es difícil hacer más comentarios sobre su situación sin conocer el problema que se le pidió resolver.

  

¿Las preguntas técnicas de la entrevista miden la capacidad de resolución de problemas?

Ese no es el objetivo de mis preguntas técnicas. En cambio, estoy tratando de descubrir si el candidato tiene un conocimiento de los fundamentos de la informática. Para evaluar la capacidad de resolución de problemas, le pido a un candidato que cuente sobre un problema interesante en el que trabajaron.

  

¿Las personas que salen con mucho éxito en estas entrevistas se convierten en grandes programadores? ¿O están estas entrevistas más orientadas a encontrar el tipo de persona "haciendo las cosas" (Spolsky)?

Eso es todo. La grandeza es rara. Estoy feliz de encontrar a alguien competente.

    
respondido por el kevin cline 29.02.2012 - 02:36
5
  1. Sí. Sí, honestamente. Esto no quiere decir que 30 minutos sea suficiente para obtener una imagen completa de lo que una persona es capaz de hacer. El trabajo del entrevistador es hacer todo lo posible para tener una idea de quién es el entrevistado y lo que pueden hacer. Encontrar a las personas que pusieron algo en su currículum que realmente no sabían es sencillo. Descubrir exactamente lo que puede hacer el entrevistado, incluidas todas sus habilidades y fortalezas, no lo es.

  2. Sí. Te dejan ver cómo piensa el entrevistado. Obtener la respuesta correcta no siempre es necesario. Ver a alguien lidiar con un problema con el que lucha es tan beneficioso como ver a alguien responder un problema correctamente sin muchos problemas. Siempre hago una pregunta que creo que el entrevistado no puede responder.

  3. No conozco ninguna prueba empírica que indique que las entrevistas técnicas encuentren a los mejores candidatos, pero es lo mejor que he intentado. Diferentes personas son buenas en diferentes cosas y obtener respuestas técnicas correctas no es lo único que decide si alguien es contratado. Ser un buen ajuste para la empresa también es muy importante.

Basándome en su pregunta, creo que lo más importante que debe comprender es que los días se definieron claramente como una calificación de letras. Obtener la respuesta correcta es solo una parte del resultado. Escribir un buen código, comunicar sus ideas y escuchar a los demás es igual de importante. Sin embargo, estas áreas son más subjetivas y deben ser tratadas como tales.

Al igual que en cómo resolviste el problema, da un paso atrás y despeja tu mente. Mucho entra en una entrevista y el entrevistador sabe que no es un sistema perfecto. Intentan hacer lo mejor que pueden por la empresa, al igual que usted trata de hacer lo mejor por usted.

    
respondido por el unholysampler 29.02.2012 - 02:46
5

En media hora puede juzgar que la capacidad técnica de una persona es al menos tan buena como x. Es decir, su capacidad podría ser mayor de lo que demostraron, pero puede estar bastante seguro de que no es peor. Si x es más alto que tus requisitos, los contratas. Sí, es injusto si demuestras debajo de tu habilidad real. Todo lo que puedo decir es mejorar en la demostración.

Si alguien contestara una respuesta prácticamente memorizada, les daría un problema más difícil. En la academia la memorización es una habilidad importante. En un trabajo, es en su mayor parte redundante cuando tienes google allí.

Al ver cómo se emplean la mayoría de los grandes programadores, es seguro asumir que pasaron una entrevista de trabajo en algún momento. No, no puedes decir si alguien será un gran programador en una entrevista de media hora. Afortunadamente, la mayoría de las empresas no necesitan grandes programadores. Se llevan bien con programadores sólidos y confiables que no temen abordar tareas fuera de su zona de confort.

La razón por la que los pensadores innovadores pueden rechazar las entrevistas de trabajo es que las oportunidades para resolver problemas llamativos e innovadores son muy raras, y solo se te confiará que las resuelvas después de que hayas demostrado que puedes resolver cosas mundanas pero difíciles. los problemas que sus colegas no pueden, como por qué el software se bloquea cuando se carga por encima del 16%.

    
respondido por el Karl Bielefeldt 29.02.2012 - 05:11
3

Muy pocas personas saben si sus técnicas de entrevista realmente funcionan, porque nunca aprenden más sobre los que fallaron. Pero cuando nada refuta su hipótesis, lo toman como confirmación de que son ciertos. Así que hay un elemento definido de lanzar los dados.

Si las teorías económicas que dicen que los mercados son racionales y eficientes son ciertas, entonces las compañías buscarían contratar a personas que eran malas para una entrevista en formas que no los perjudicarían en su trabajo. Así que alguien que llevaba un traje mal ajustado, sudaba, parecía muy nervioso y tenía problemas para resolver problemas técnicos bajo la presión de una entrevista; si existían pruebas externas, de lo contrario podrían resolver problemas técnicos y las presiones del trabajo no eran como esas de una entrevista (como generalmente no lo son) - representaría la mejor oportunidad de una empresa para obtener un candidato mejor de lo que podría atraer y actuaría en consecuencia. (Think Money-ball para el mundo corporativo). Eventualmente, los sesgos de las entrevistas desaparecerían.

En la práctica esto va en contra de la naturaleza humana. A los entrevistadores les gustan los extrovertidos confiados, sin importar cuál sea la posición, e incluso si la entrevista técnica proporciona peor información que el currículum y las referencias (como quizás sea cierto en su caso), lo tendrán en cuenta.

En cuanto a sus preguntas:

  1. Algo. Las pruebas tienen una relación pobre de señal a ruido, pero se pueden ajustar para eliminar completamente las calificaciones sin tener en cuenta a las entrevistas cualificadas pero malas en la técnica.

  2. Vea # 1. Parte del ruido proviene de la variación en si las personas han visto el problema antes.

  3. Vea # 1. Probablemente haya una pequeña correlación positiva entre estas pruebas y convertirse en un gran programador.

Mi consejo: estudie algunas preguntas técnicas de muestra para obtener una familiaridad básica. Recuerda que es un poco como tirar los dados, así que durante la entrevista trata de tener confianza. Si puede explicar lo que está pensando sin distraerse de pensar realmente, entonces hágalo. Si realmente va mal, admita que se pone nervioso en las entrevistas y hágales saber que parece ser algo con lo que normalmente no tendría problemas, posiblemente dando un ejemplo de un problema similar pero más difícil que resolvió.

    
respondido por el psr 29.02.2012 - 03:36

Lea otras preguntas en las etiquetas

Comentarios Recientes

El entrevistador técnico valora mucho la capacidad básica de comunicarse directamente con humanos aleatorios con iluminación de tecnología avanzada y otros problemas de modelado de software independiente, tendrá que desarrollar un sistema vivo y robusto para mantener una impedancia de salida útil a través de sus altavoces a la intensidad de disparo total para fabricar simulaciones de audio ... Necesita generar su propia ecuación a partir de cómo funciona su amplificador para que pueda hacer cálculos precisos... Lee mas