Recentemente un intervistatore ha posto questo tipo di domanda, quindi ho spiegato come ho considerato il sistema di valutazione come un sistema esponenziale, piuttosto che una scala lineare.
La parte superiore della scala di "10" sono gli sviluppatori che hanno scritto la lingua, la libreria o la tecnologia. Un "9" è qualcuno con una padronanza quasi assoluta di quella tecnologia, come qualcuno con più di 20 anni di esperienza e che ha affrontato "tutto".
Un "8" sarebbe qualcuno che è almeno un Senior posizione con molta esperienza, probabilmente una discreta quantità di formazione formale, e ci lavora nel proprio tempo. Un "7" sarebbe un programmatore di livello medio-alto che ha affrontato una gamma piuttosto ampia di problemi in una manciata di anni.
Un "6" sarebbe entrare in uno sviluppatore di livello Junior, forse subito del college che capisce un bel po ', ma non ha davvero fatto nulla in modo professionale.
Di seguito si entra in una comprensione più basilare di parti delle lingue, ecc. La persona comprende i concetti di loop, raccolte , oggetti, API, ecc.? Un principiante assoluto (senza alcuna conoscenza pertinente o correlata) sarebbe effettivamente uno 0 e dovrebbe essere in grado di progredire fino a circa un "3" in un anno, con altri 2-3 anni che diventano un "5" o un "6". Qualcuno proveniente da una tecnologia simile potrebbe arrivare a essere un "6" in un mese e un "8" in un anno o meno, ad esempio se passassero da Java a C # plus avessero un livello "8" nel linguaggio complementare.
Quindi puoi vedere che la mia visione è completamente diversa da quella che gli altri vedono nella scala. Mi considererei un "7" nel mio ruolo attuale, ma ho parlato con alcune persone che penserebbero che io sia un "9" e altri penserebbero che io sia un "5", a causa della relativa scala quando mi confrontano con loro stessi.
Poiché questo è così soggettivo, la definizione della scala varia molto e hai l ' effetto Dunning-Kruger (come menzionato in un'altra risposta), tu non otterrò mai una buona risposta a questo tipo di domande.
Hai davvero bisogno di fare domande sul tipo di cose che hanno fatto prima e su come hanno risolto i problemi. Quindi chiedi perché non hanno scelto un metodo diverso.
Tu: Quindi, hai risolto questo problema utilizzando un array, ma perché non un elenco?
Loro: cos'è un elenco? {Sicuramente non il 7-8 che dicevano di essere.}
Loro: Beh, non avevo bisogno di tutti i metodi e le funzionalità extra che avrebbero richiesto memoria e potenza di elaborazione extra. Avevo solo bisogno di qualcosa di semplice per estrarre facilmente pezzi di dati. {Probabilmente il 7-8 che hanno detto di essere.}
Questo è ancora soggettivo, ma ora sei tu che sei soggettivo piuttosto che il candidato. Finché puoi controllare come vengono valutate le cose, avrai un modo migliore per sapere cosa vuoi veramente sapere. Certo, qualcuno potrebbe essere in grado di creare un ordinamento rapido dalla memoria, ma può costruire una struttura di dati complessa e fare in modo che l'ordinamento rapido esegua un'iterazione su una raccolta IC?
Forse non hai bisogno di un "8" e sono disposti ad addestrare un "6". Ciò si riduce alla comprensione dei propri bisogni e desideri, alla ricerca del candidato giusto e all'adeguamento delle domande a tali esigenze. Un test standardizzato non funzionerà per questo. Un "9" potrebbe attraversarlo e considerarlo una perdita di tempo, mentre un "6" lotta e si arrende. Allo stesso modo con un'intervista standardizzata. Se un "9" non viene sfidato dalle domande dell'intervista, potrebbe non pensare che valga la pena essere assunto, dal momento che non sarà sfidato dal lavoro. Un "6" che fatica a trovare risposte durante il colloquio potrebbe anche rinunciare lì, perché pensa che il lavoro sarà allo stesso modo. Non molte persone vogliono avere un lavoro in cui vengono utilizzate solo per il 50% del loro impegno e della loro conoscenza. Né le persone vogliono dover spendere il 120% del loro tempo, energia e capacità intellettuali per imparare nuove cose per il lavoro.
Quello che sto dicendo è che il colloquio deve essere orientato verso il candidato, non solo che hai un elenco di domande che fai a tutti. Puoi avere un elenco, ma non fare roboticamente ogni singola domanda a ogni singola persona. Sembra che tu l'abbia già capito, quindi mi fermo qui, dal momento che penso che questo stia andando fuori strada dalla tua domanda originale, comunque.