Abbiamo avuto un candidato per un colloquio di livello senior che ha fallito una sfumatura della domanda FizzBuzz 1 2 .
Voglio dire, davvero, completamente, completamente, ha fallito la domanda - nemmeno vicino.
Ho anche lo ha allenato fino a pensare a utilizzando un ciclo e che 3
e 5
erano veramente degni di essere considerati come casi speciali.
L'ha fatto saltare.
Solo per scopi di controllo qualità, ho dato la stessa identica domanda a tre compagni di squadra; diede loro 5 minuti; e poi tornò a raccogliere il loro pseudo-codice. Tutti loro lo hanno inchiodato e non hanno mai visto la domanda prima. Due hanno chiesto quale fosse il trucco ...
In un diverso esercizio logico, il candidato ha mostrato una certa comprensione di alcune delle funzionalità disponibili nella lingua che ha scelto di usare (C #). Quindi non è come se avesse mai scritto una riga di codice. Ma la sua logica è ancora puzzolente.
La mia domanda è se avrei dovuto dargli o no la risposta alle domande logiche.
Sapeva che li ha fatti esplodere e l'ha riconosciuto più tardi nell'intervista.
D'altra parte, non ha mai chiesto la risposta o quello che mi aspettavo di vedere.
So che gli esercizi di codifica possono essere usati per impostare i candidati per il fallimento (di nuovo, vedi il secondo link dall'alto). E ho davvero cercato di aiutarlo a casa a rispondere al nocciolo della domanda. Ma questo era un candidato di livello senior e Fizz-Buzz è, francamente, ridicolmente facile anche dopo aver considerato i nervosismi delle interviste.
Mi sembrava che avrei dovuto mostrargli un modo di risolvere il problema in modo che almeno potesse imparare dall'esperienza. Ma di nuovo, non ha chiesto.
Qual è il modo giusto per gestire questa situazione?
1 Ok, questo non è il link alla domanda di FizzBuzz, ma è una buona discussione di P.SE su FizzBuzz e link ai vari aspetti di esso.
2 Per aiutare a chiarire, questa è la sfumatura di Fizz-Buzz che ho chiesto ed è da Il primo problema del progetto Eulero . Sostituzione stampa Fizz | Buzz per sommare i numeri e hai la stessa domanda fondamentale.
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 Questa domanda ha attirato più attenzione di quanto mi aspettassi e apprezzo tutte le risposte. Alcune delle risposte successive sono davvero arrivate al nocciolo della mia domanda, quindi consentirò alla community di rivedere e aggiornare la votazione prima di assegnare la "risposta".
4 Ho selezionato "la" risposta basata sui voti della comunità in quel momento. E penso che la risposta di Yannis sia appropriata per le interviste ai nuovi sviluppatori. Penso che la risposta collettiva che si concentra sulla mancanza di chiedere la risposta sia azzeccata.