Tuvimos un candidato de entrevista de nivel superior que falló en un matiz de la pregunta de FizzBuzz 1 2 .
Quiero decir, en verdad, completamente, completamente, falló la pregunta, ni siquiera cerca.
Incluso lo entrené a través de pensar en usando un bucle y que 3
y 5
eran realmente como casos especiales.
Lo sopló.
Solo para propósitos de control de calidad, hice la misma pregunta exacta a tres compañeros de equipo; les dio 5 minutos; y luego volvieron a recoger su pseudocódigo. Todos ellos lo clavaron y no habían visto la pregunta antes. Dos preguntaron cuál era el truco ...
En un ejercicio de lógica diferente, el candidato mostró cierta comprensión de algunas de las funciones disponibles dentro del lenguaje que eligió usar (C #). Así que no es como si nunca hubiera escrito una línea de código. Pero su lógica aún apestaba.
Mi pregunta es si debería haberle dado o no la respuesta a las preguntas lógicas.
Sabía que los había echado a perder, y lo reconoció más tarde en la entrevista.
Por otro lado, nunca pidió la respuesta o lo que esperaba ver.
Sé que los ejercicios de codificación se pueden usar para configurar a los candidatos para el fracaso (nuevamente, vea el segundo enlace desde arriba). Y realmente traté de ayudarlo a que respondiera el núcleo de la pregunta. Pero este era un candidato de alto nivel y Fizz-Buzz es, francamente, ridículamente fácil, incluso después de tener en cuenta las inquietudes en las entrevistas.
Sentí que debería haberle mostrado una forma de resolver el problema para que al menos pudiera aprender de la experiencia. Pero una vez más, él no preguntó.
¿Cuál es la forma correcta de manejar esa situación?
1 Bueno, ese no es el enlace a la pregunta real de FizzBuzz, pero es una buena discusión de PSE en torno a FizzBuzz y enlaces a los diversos aspectos de la misma.
2 Para aclarar, este es el matiz de Fizz-Buzz que pregunté y es de El primer problema del Proyecto Euler . Impresión sustituta Fizz | Buzz para sumar los números y tiene la misma pregunta fundamental.
If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Write a function that finds the sum of all the multiples of 3 or 5 below 1000.
3 Esta pregunta atrajo más atención de la que esperaba, y agradezco todas las respuestas. Algunas de las respuestas posteriores realmente han llegado al núcleo de mi pregunta, así que permitiré a la comunidad revisar y votar antes de asignar "la" respuesta.
4 Seleccioné "la" respuesta basada en votos de la comunidad en ese momento. Y creo que la respuesta de Yannis es apropiada para entrevistas con nuevos desarrolladores. Creo que la respuesta colectiva centrada en la falta de pedir la respuesta también es acertada.