Domanda:
Intervista Domanda sulla familiarità con un linguaggio di programmazione
foreverska
2020-02-28 01:31:33 UTC
view on stackexchange narkive permalink

Ultimamente ho fatto una serie di interviste. Ho una serie di domande su cui generalmente opero. Uno di questi era "valuta la tua esperienza con il linguaggio X da 1 a 10." Beh indovina cosa? TUTTI si sono valutati un 7 o un 8. Entrambe le persone senza affari che lo facevano e con oltre 20 anni di esperienza i ragazzi direbbero 8. Quindi ho lasciato cadere la domanda e ho tentato di riformulare, ma ho finito per creare confusione.

Io generalmente poni ancora domande che mi danno un'idea della loro esperienza, ma c'è un modo per porre questa domanda in modo significativo o è solo una domanda fottuta da porre?

Fai una domanda soggettiva e otterrai una risposta soggettiva.
https://softwareengineering.stackexchange.com/a/59480/285
A proposito, probabilmente dovresti aspettare più di un'ora per accettare una risposta.
@kevin Hai ragione.Ritirato.
Non fraintendermi: dwizum ha un'ottima risposta e probabilmente merita la casella di controllo (la loro risposta è sicuramente più completa della mia). Ma ci sono persone che non rispondono alle domande che hanno già una risposta accettata, quindi in un modoper ottenere una vasta gamma di opinioni è darle qualche giorno prima di sceglierne una.
Qual è il tuo lavoro?Cosa stai cercando esattamente, perché sei interessato alle competenze linguistiche specifiche?Per cosa intendi utilizzare le risposte?
In qualche modo stai dicendo agli intervistati che vuoi fare esperienza con la lingua X?Ad esempio, è elencato nella descrizione del lavoro?Perché se lo fosse, probabilmente non mi applicare a meno che la mia conoscenza non fosse almeno nell'intervallo 7-8.OTOH Non mi preoccuperei di fare domanda per lavori che richiedono linguaggi come Haskell, C #, Ruby o altri in cui dovrei valutarmi 0-1.
Perché non introdurlo con "Bjarne Stroustrup, quando gli è stato chiesto, ha valutato la sua conoscenza di C ++ a 7. Con questo in mente, cosa valuteresti la tua conoscenza del linguaggio X".Puoi scoprire come cambiano le lingue e le persone di solito non sanno tutto.Se il candidato non mostra umiltà, dovrebbe essere una bandiera.
@NDEthos: Non conosco le motivazioni di Bjarne per questo, ma capisco la sua prospettiva.Per molti anni sono stato uno sviluppatore del team di compilatori Microsoft JScript e un membro del comitato di standardizzazione, ma il numero di righe di codice JS di produzione effettiva che avevo scritto era ovviamente zero!Ho scritto solo casi di test in JS.Ero un esperto di storia, progettazione e implementazione del linguaggio, ma non un esperto di come veniva effettivamente utilizzato nell'industria, e questo mi sembra abbastanza rilevante.
Dodici risposte:
#1
+64
dwizum
2020-02-28 01:41:39 UTC
view on stackexchange narkive permalink

Hai chiesto,

esiste un modo per porre questa domanda in modo significativo o è solo una domanda fottuta da fare

Io non non credo che esista una versione significativa di questa domanda.

Le domande con risposte numeriche semplici ( sono un sette! ) sembrano attraenti perché sono facili da porre, ma non sono sempre significativi. In definitiva, il difetto principale di questa domanda è che si tratta di un'autovalutazione senza alcuna relazione con le effettive esigenze per cui stai assumendo. La mia percezione delle mie capacità potrebbe non corrispondere alla percezione del pubblico in generale delle mie capacità, anche se possiamo concordare un criterio di punteggio generico. E come stai scoprendo, molte persone si giudicheranno "troppo alte" o, almeno, la distribuzione dei punteggi auto-selezionati sarà distorta troppo alta. Basta andare a sedersi all'angolo di una strada trafficata e chiedere a tutti quelli che passano vicino: "Sei più bravo a guidare rispetto al guidatore medio?" e scommetto che più del 50% delle persone pensa di essere migliore della media.

Forse ancora più importante, chiedere a qualcuno di "valutare la propria esperienza" ha sostanzialmente zero rilevanza rispetto a quelle che sono probabili le tue esigenze specifiche. Ad esempio, ho assunto un team di sviluppatori SQL che avevano il compito di costruire un data warehouse ampio e complicato. Sì, usavano SQL come lingua principale, ma avevamo esigenze piuttosto specifiche su tipi specifici di problemi. Invece di chiedere ai candidati una valutazione SQL generica, mi concentrerei su questi problemi. E invece di chiedere valutazioni , mi concentrerei sul convincere la persona a raccontare una storia. Quindi, invece di chiedere,

Valutati su SQL

ti chiederei,

Puoi parlarmi di una volta stavi scrivendo codice SQL per lavorare con un grande blocco di dati? Come hai deciso dove cercare i miglioramenti delle prestazioni?

Oppure

Supponiamo che tu debba costruire un modello di dati che caricherà i dati delle transazioni tramite un lavoro batch ogni notte. Quindi, per tutto il giorno, gli utenti eseguiranno rapporti sui dati. Come decidi su un livello appropriato di rinforzo ed elaborazione da fare durante il lavoro in batch, rispetto a fare le cose in fase di esecuzione quando vengono richiesti i rapporti?

In questo modo, fai parlare il candidato effettivamente delle loro capacità e parla dei problemi che hanno risolto o di come affronterebbero i problemi teorici. Mentre alcune persone cercheranno di mentire a queste domande, diventa abbastanza facile individuare persone che non sarebbero in grado di autovalutarsi accuratamente. Fornisce anche molti dettagli contestuali sui processi di pensiero della persona. Chiunque abbia google può trovare tutti i tipi di materiale di riferimento su come scrivere codice SQL; Non mi aspetto che gli sviluppatori memorizzino tutto nella lingua. Fondamentalmente, non sto cercando di trovare un esperto di SQL letterale. Invece, quello che cerco sono persone che possano usare SQL per risolvere i problemi specifici che so che avrò nel mio team. Fare in modo che un candidato racconti storie o spieghi il proprio processo di pensiero è molto più significativo per questo tipo di valutazione che chiedergli di auto-assegnare un punteggio numerico arbitrario.

: -) In realtà, il [93%] (https://en.wikipedia.org/wiki/Illusory_superiority#Driving_ability) delle persone pensa di essere autisti superiori alla media.Ad ogni modo, +1 per aver spiegato che tale domanda è quasi inutile per valutare un candidato.
A peggiorare le cose con l'autovalutazione, le persone che sono più informate tenderanno ad essere più consapevoli di quanto non sanno e spesso si giudicheranno peggio.Ricordo che una volta il dipartimento in cui lavoravo ha fatto un esperimento in cui hanno chiesto agli sviluppatori di valutare se stessi in base a quanto pensavano di sapere sulle tecnologie con cui stavamo lavorando.Quelli che si sono classificati i più bassi erano ampiamente conosciuti per essere alcune delle nostre persone migliori!Non puoi fidarti delle persone che si valutano in base alle loro capacità.(vedi anche: effetto Dunning-Kruger)
Questa risposta è chiaramente un 8. Meglio di 7 almeno.
In realtà è possibile che la stragrande maggioranza delle persone sia al di sopra della media in alcune abilità!Ci sono sicuramente più persone che guidano come spazzatura rispetto ai corridori professionisti e che stai selezionando per persone che guidano più spesso fa aumentare la percentuale.Il bias di autovalutazione non è necessario per spiegare i risultati.
"molte persone si giudicheranno troppo alte" - inoltre, dato che questa è un'intervista, anche le persone che * non * si valutano troppo saranno più inclini a dare un numero alto, perché come apparirà sedire "3" o "4"?Il presupposto sarà che l'intervistatore cerchi persone con un numero elevato.
E sì, @JohnDvorak è corretto.Non c'è nulla di intrinsecamente errato nell'idea che più del 50% delle persone possa essere al di sopra della media.Ad esempio, dati i punteggi: 1, 9, 9, 9;la media è 7 e il 75% dei punteggi è sopra la media.
@JonBentley Penso che l'ipotesi principale dell'esempio sia una normale distribuzione dei driver, nel qual caso in media circa il 50% guiderà meglio della media.Per una distribuzione diversa dal normale, o per un sottoinsieme troppo piccolo per diventare normale, possono succedere di tutto (tranne il 100% per essere sopra la media immagino)
Hai ancora un bias di auto-selezione anche se assumiamo una distribuzione normale (cosa tecnicamente impossibile perché la distribuzione è di dieci valori discreti mentre la distribuzione normale richiede una finestra R ^ n).Le persone che pensano di non essere idonee tenderanno a non candidarsi.
@IgorG: sebbene si possa presumere che il campione di prova fosse rappresentativo della popolazione in generale, non sembra esserci una valutazione effettiva delle competenze.Sebbene eccedente, incredibilmente improbabile, è in realtà del tutto possibile che tutte quelle persone in realtà * fossero * migliori della media.Esaminare la griglia di partenza di una gara automobilistica sarebbe un problema ovvio: non valutare effettivamente gli intervistati significa che non hai idea di quanto siano utili i tuoi risultati, vero?Infatti, l'abstract dello studio afferma che i risultati hanno confermato le aspettative.Hmmmmmmmmmmm!
Dato che mi è già stata posta questa domanda e ho risposto a 7, lascia che ti dica questo: Ovviamente, non volevo rispondere a un numero basso.Ovviamente volevo il lavoro.Quindi, sapevo anche che probabilmente so programmare, ma ci sono maghi che sanno più cose.Quindi, 9 e 10 probabilmente escludono.I prossimi migliori sono 7 e 8. Volevo sembrare modesto e ho scelto 7.
Se non altro, vorrei prendere tutto questo approfondito esame del mio "quanto sei bravo come pilota?"esempio (che è stato volutamente non ben articolato) come ulteriore conferma dell'inutilità di porre domande di autovalutazione!Grazie a tutti per i commenti su questo punto.
@Igor La maggior parte delle persone ha un numero di gambe superiore alla media.(Questo è effettivamente vero.)
@user3067860 beh, sicuramente sbagli se per media intendiamo mediana.Ma allora avrai ragione se intendevi dire.
#2
+37
Eric Lippert
2020-02-28 03:33:10 UTC
view on stackexchange narkive permalink

c'è un modo per porre questa domanda in modo significativo?

Sì.

La tua osservazione che tutti dicono che 7 o 8 è perfetta . Usa quello . Quello che avrei fatto quando ho posto questa domanda nelle interviste è seguirla con " qual è qualcosa con cui hai avuto difficoltà quando eri un 6, ma che trovi semplice ora? "

Questo porta quindi a una discussione con il candidato su dove si trova, cosa trova ancora stimolante e così via.

Ricorda, ogni domanda dell'intervista dovrebbe essere progettata per suscitare un segnale chiaro . Hai ragione a criticare la tua domanda per aver prodotto un segnale scarso. Pensa attentamente a quale segnale desideri suscitare dalla domanda e concepisci follow-up che portino naturalmente a una conversazione che ti dia quel segnale.

Quando stavo intervistando per le posizioni io stesso, avevo una risposta pronta in caso mi è stata posta questa domanda. Se qualcuno mi dicesse "quanto sei bravo un programmatore C ++ su una scala da 1 a 10?" Direi qualcosa come

Mi classificherei un sei; Ho una vasta esperienza nella scrittura di compilatori e altri strumenti di linguaggio in C ++, con particolare attenzione alla programmazione COM. Ho una solida conoscenza dei fondamenti del linguaggio tra cui preelaborazione, analisi lessicale, grammatica, semantica e quali comportamenti sono indefiniti. Tuttavia la mia conoscenza della libreria standard C ++ è relativamente debole e non ho mai scritto un compilatore C ++. Né sono stato nel comitato di standardizzazione per C ++. Quando lavoravo in Microsoft avevo persone in fondo al corridoio che avevano lavorato su compilatori C ++ e avevano dato un contributo significativo alla progettazione del linguaggio; quelle persone sono decine, e io non sono loro; mi ci vorrebbero molti anni di lavoro specializzandomi in C ++ per diventare un dieci come uno di loro.

Questa risposta è stata progettata sia per fornire un riepilogo accurato delle mie capacità C ++, sia per dare all'intervistatore molte opportunità di dire "dimmi di più su ..." su argomenti che ero pronto a discutere ampiamente.

I commenti non sono per discussioni estese;questa conversazione è stata [spostata in chat] (https://chat.stackexchange.com/rooms/108026/discussion-on-answer-by-eric-lippert-interview-question-about-familiarity-with-a).
#3
+20
Kevin
2020-02-28 02:34:11 UTC
view on stackexchange narkive permalink

Lascia che ti dia una risposta personale su questo.

"Kevin, quanto sei bravo in C # /. NET, da 1 a 10?"

" 8. " Voglio dire, sì, sono bravo con la lingua. Ma so di non aver fatto molte cose con Moq, e sono un po 'debole con Unit Tests e TDD. Inoltre, beh, in realtà non ho usato Resharper: non è una parte critica di un buon codice standard in .NET? Non ne so nemmeno abbastanza per rispondere. Sì, ho lavorato un po 'con i Generics, ma ci sono un sacco di persone che l'hanno fatto e sono in grado di usarlo in modo molto più intuitivo. Inoltre, molte delle cose che faccio sono più esoteriche, non è perché le comprendo completamente - è solo una conoscenza generale di ciò che mi ha detto una risposta di StackOverflow.com. "Sì, decisamente 8."

Siediti accanto a un altro "8", però, e io dirò: "Aspetta, perché lo rendi un metodo pubblico? Non dovresti accedervi al di fuori della classe su tutti. E perché non rimuovere questo effetto collaterale modificando inutilmente una proprietà della classe: rimuovere l'effetto collaterale, renderlo una funzione pura e scambiarlo in una statica privata? Inoltre, non dovresti creare due versioni di questo metodo - tutto ciò su cui differiscono è su quale classe derivata operano. Creane uno combinato che sia nella classe base o scrivi un metodo di estensione che possa operare sulla classe base. DRY - non ripetere te stesso. "

Vedi il problema?

Quando hai chiesto a me qual era la mia valutazione? Ho pensato a tutte le cose di cui sono consapevole di cui non sono un esperto, di cui sono debole. Moq, Resharper, TDD, ecc. Quindi so di non poter dare a me stesso 9 o 10, perché un '9' non conoscerebbe quel genere di cose? Ma chiedere all'altra persona qual è il loro grado? Non sono consapevoli di ciò che non sanno. Hanno rami IF, cicli FOR e possono usare intuitivamente List<>, baby! 8 di sicuro!

Fondamentalmente, vieni fregato sia dall'effetto Dunning-Kruger che dalla sindrome dell'imposter. Gli esperti sanno quanto non sanno; i meno esperti non lo sanno, quindi pensano di saperne più di loro.

Modifica:

Quindi, questo risponde a una parte della tua domanda - è è una domanda da barbone? Sì, lo è. Allora cosa fai invece?

Separi gli '8 che sanno di cosa stanno parlando dagli' 8 che non lo fanno. Ti vengono in mente alcune domande a cui otterrai risposte diverse tra questi due gruppi. Quando stavo pensando alle domande del colloquio per gli ultimi due assunti, ho scelto di creare due problemi di programmazione: uno relativamente semplice, uno un po 'più duro e un po' più aperto (c'erano diversi percorsi da percorrere, e in parte del problema era se il richiedente ne sapesse abbastanza per chiarire la situazione prima di scrivere il codice) e un terzo problema di revisione del codice che era "ecco un codice difettoso - cosa c'è che non va?"

Ma alla fine , questo è il punto centrale per tutte quelle domande tecniche / lavagne / ecc: il richiedente sa davvero il fatto suo?

Direi che la maggior parte delle cose che dici nel tuo paragrafo "Siediti accanto a un altro 8" sono cose più "OOP" generali che specificamente C #.Sono _ molto applicabili a C # ovviamente, ed è difficile essere bravi in C # con una scarsa comprensione dei principi OOP, ma A! = B. Per ribadire: _generalmente_ sono d'accordo che questa risposta è spinta di "Ma cos'è esattamente un 8?O un 10? "
#4
+17
Mars
2020-02-28 12:45:55 UTC
view on stackexchange narkive permalink

Immagino che tu stia cercando un modo in cui puoi facilmente filtrare i candidati, senza conoscere il loro livello (puoi farlo più avanti nel processo di intervista). In tal caso, il fatto che principianti ed esperti si valutino allo stesso modo è un problema.

Suggerirei un'immersione più profonda nella lingua: è qui che scoprirai chi sa davvero cosa sono parlando di.

Es:

  1. Mai sentito parlare di
  2. Visto ma mai scritto
  3. Scritto, ma sconosciuto
  4. Scritto e comodo
  5. Scritto e in grado di spiegare in profondità.

Valuta la tua esperienza in C # con quanto segue:
Generici: ① ② ③ ④ ⑤
LINQ: ① ② ③ ④ ⑤
Ereditarietà: ① ② ③ ④ ⑤
Eventi e delegati: ① ② ③ ④ ⑤
Etc.

Scoprirai che i punteggi sono generalmente alti , ma dovresti anche iniziare a vedere una separazione basata su anni di esperienza. In questo modo, sarai effettivamente in grado di filtrare i tuoi candidati in anticipo.

Ma ovviamente, scrivere un sondaggio decente come questo è noioso e richiederebbe qualcuno con una solida conoscenza per cominciare.

Se vuoi solo un sistema pass-fail, puoi usare un test di codifica online. Penso che Linkedin abbia anche un proprio sistema di "certificazione"

#5
+6
flexi
2020-02-28 03:51:51 UTC
view on stackexchange narkive permalink

Quando intervisto il personale tecnico non faccio mai domande del genere, perché come hai scoperto sono prive di significato.

Come riformuli questa domanda?

"quindi, parlami della tua esperienza con il linguaggio x"

Quindi lascia che il candidato parli senza interromperlo.

Dalla sua risposta dovresti essere in grado di dire qual è la sua esperienza e puoi porre domande di follow-up alle cose che menzionano.

La chiave è lasciare che siano loro a parlare per la maggior parte. Se non hanno molto da dire, non hanno molta esperienza.

#6
+6
Jared Smith
2020-02-28 21:23:56 UTC
view on stackexchange narkive permalink

Mi spiace aggiungere un'altra risposta, ma questa è importante e nessun altro ne ha parlato ancora.

Non riesci a considerare la domanda dal punto di vista dell'intervistato .

Le interviste, in particolare per i candidati che hanno frequentato molte scuole formali, sono un gigantesco gioco di "quale risposta vogliono", ovvero indovina la password dell'insegnante aka hack the test.

Così il candidato passa attraverso il processo mentale di "beh, se dico che sono debole non mi assumeranno, ma se lo dico che sono fantastico, mi chiederanno di provarlo e non posso, quindi sono un 7 ". Se hanno una certa fiducia nelle proprie capacità, potrebbero dire "8".

Non è che quei numeri siano accurati , è che sono difendibili : il candidato probabilmente sa di non essere realmente un sette, ma quando viene messo sotto pressione si sente come se ne sapesse abbastanza da poter difendere quell'affermazione. Ma ora la conversazione è filosofica sul significato attribuito a un punto della scala.

Un'altra forza trainante qui, e cito la scuola per un motivo: a scuola 7-8 / 10 è nella media . Possiamo lamentarci tutto il giorno dell'inflazione dei voti, ma sappiamo tutti che è una cosa. Abbiamo addestrato le ultime 2-3 generazioni a pensare in questo modo. Qualcuno oggi di età inferiore ai 45 anni (divulgazione completa, appartengo a quel gruppo di < 45) probabilmente direbbe simultaneamente che hanno 7 anni e che sono un programmatore medio. Per quella persona quelli significano la stessa cosa . In nessun modo quel programmatore medio si classificherà come 5/10.

Eric Lippert può cavarsela dicendo "Sono un 6" in virtù del fatto di essere Eric Lippert: è già una quantità nota e ha la sua storia di successi e CV a cui attingere (scuse per aver riff sulla tua risposta Eric). Non sarà mai seduto in un'intervista a essere sottoposto a una lettura fredda. Ma per i mortali non rischieranno e giocheranno sul sicuro, ammesso che non considerino solo 7 di media in primo luogo.

Quindi consiglio di abbandonare la domanda: potrebbe essere recuperabile, ma il tuo primo pensiero per qualsiasi domanda dell'intervista dovrebbe essere "come intenderanno (male) interpretarlo" e quella domanda fallisce il controllo di sanità mentale di base.

Stavi effettivamente citando qualcuno o volevi evidenziare quella frase?
Fai un'ottima osservazione sul significato della scala stessa.Se pensiamo alla scala come suggerisci, se mi fosse dato un quiz ragionevole su questo argomento, avrei circa l'80% delle domande, giusto?- allora ha senso dire 7 o 8. Se pensiamo alla scala come logaritmica - diciamo, decine sono circa una persona nel mondo, nove sono dieci persone nel mondo, otto sono 100 persone nel mondo ecosì via, quindi dire "8" è molto diverso.Allo stesso modo, se pensiamo a 5 come media, 6 come una deviazione standard dalla media e così via.
Ottimo punto, stavo leggendo questo pensando a 5 come nella media o forse un po 'sopra (10 essendo fondamentalmente fuori questione).
@EricLippert esattamente.Il mio pensiero immediato è stato 7/10 == 70% == C == nella media (e ci è voluta un po 'di introspezione per estrarre effettivamente quella catena associativa per capire perché un 7 sembrava nella media), ma entrambe le altre due interpretazioni che hai suggerito sonoperfettamente ragionevole.Il che è probabilmente un chiodo nella bara per questa particolare domanda dell'intervista.
Evidenziare @Llewellyn.Non stavo necessariamente citando nessuno.
#7
+5
ZOMVID-20
2020-02-28 18:05:27 UTC
view on stackexchange narkive permalink

Qualsiasi autovalutazione risentirà del fatto che è possibile solo confrontare qualcosa che conosci con qualcosa che conosci. Dal momento che probabilmente non conoscono alcuna lingua per un'azienda 10, non possono essere paragonati a uno sconosciuto. L'esempio più famoso di questo è l'effetto Dunning-Krueger.

Chiedi loro invece di classificare la loro conoscenza di più lingue dalla migliore alla peggiore. Questo ti darà una panoramica delle loro conoscenze.

Per ottenere un livello assoluto, chiedi se può svolgere un compito specifico . Elabora da lì: ottieni una stima del tempo, chiedi come si sono avvicinati esattamente all'attività l'ultima volta e scopri cosa farebbero diversamente con la tua attività.

Ad esempio, "Abbiamo bisogno di un'API REST che riceve un JSON simile a questo e memorizza il suo contenuto in Oracle XE. Quanti giorni ti ci vogliono di solito per una cosa del genere?

Quindi chiedi i dettagli: quali framework e librerie useranno , come si avvicineranno a questo e quello.

Un buon sviluppatore (livello medio +) avrà domande proprie, ad esempio a quale registrazione devono riferire, è il servizio da containerizzare e così via. Se non lo fanno, probabilmente non sono un 9, ma puoi sollevare le domande da solo per vedere se hanno familiarità con questi aspetti.

È meglio se è un'attività che è stata eseguita prima nella tua azienda, quindi hai una base per il confronto.

#8
  0
Xophmeister
2020-02-28 17:04:18 UTC
view on stackexchange narkive permalink

Piuttosto chiedere loro di autovalutarsi, cosa che dubito che chiunque possa fare in modo completamente oggettivo, specialmente in una situazione in cui vogliono vendersi, perché non convincere i candidati a dimostrare le loro conoscenze?

diciamo che stai chiedendo informazioni sulla competenza in Python; mantenendo una meccanica abbastanza essenziale, per coprire la maggior parte delle basi. Ad esempio, supponi di concentrarti sull'OOP: inizia con una domanda di medio livello che valuta la loro conoscenza, ad esempio, MRO. Potresti quindi salire di livello (metaclassi, ecc.) O scendere (eredità vs. composizione, ecc.), A seconda delle loro risposte. In questo modo, stabilisci da solo la loro competenza - in un'area che è importante per te (OOP in Python, in questo caso), mentre controlli la narrazione - attraverso le prove piuttosto che la soggettività.

#9
  0
Philipp
2020-02-28 23:59:04 UTC
view on stackexchange narkive permalink

Il problema con questa domanda è che non ha una definizione corretta di cosa sia un "10". Quindi tutti lo interpreteranno come vogliono e ti daranno la risposta che pensano sia la valutazione più alta con cui possono farla franca senza sembrare arroganti.

Quindi potresti ottenere risultati molto più significativi se quantificassi le diverse valutazioni significa:

Come valuteresti la tua esperienza con il linguaggio X da 1 a 10, dove 1 è "Ho scritto un programma Hello World una volta", 5 è "Conosco tutte le sue caratteristiche" e 10 essendo "Ho scritto il libro a riguardo"?

Questa risposta illustra il valore di scrivere libri!Conosco diversi autori che hanno scritto libri non perché ottengano molto in royalty - i diritti d'autore dei libri tecnologici nella migliore delle ipotesi sono in gran parte entrate per hobby - ma perché desiderano sfruttare "Ho scritto il libro su questo" in un lavoro di consulenza migliore.
#10
  0
Dragonel
2020-02-29 00:03:18 UTC
view on stackexchange narkive permalink

Sono d'accordo con la maggior parte degli altri commenti sulla sconsiderabilità di prendere solo valutazioni numeriche, ma penso che ci sia un altro aspetto che viene toccato solo nella risposta di @Mars. Stai chiedendo loro una valutazione complessiva in una vasta area "lingua X". Nelle parti della lingua che l'intervistato usa tutti i giorni può essere un 9 (o meglio, ma c'è sempre qualcosa che devi imparare). Su come usarlo per produrre (o parlare) con le interfacce utente potrebbero essere solo un 6, per lavorare con i database potrebbero essere un 3. Potrebbero esserci altre aree a cui non pensano nemmeno. Allora come farà un intervistato a raggruppare tutti questi in un unico numero? Faranno una media (con un po 'di pregiudizio verso i numeri alti come se pensassero che valesse la pena fare domanda per il tuo lavoro, si spera che sarà nella loro area principale). Anche prima di passare da "valuta la tua esperienza" a "parlami della tua esperienza con", fermati e pensa a quali aree di competenza desideri conoscere e affrontale in modo più specifico.

#11
  0
computercarguy
2020-02-29 00:39:18 UTC
view on stackexchange narkive permalink

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.

#12
-1
Kemal Cengiz
2020-02-28 23:22:24 UTC
view on stackexchange narkive permalink

Ciò che più conta è per quanto tempo hanno utilizzato un linguaggio nell'ambiente di produzione. Quindi puoi chiedere questo:

Hai mai sviluppato un progetto che girava in produzione nel linguaggio di programmazione X? Se sì, per quanto tempo?

Quindi indovina il numero da solo in base a quanto tempo ha utilizzato la lingua durante la produzione.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 4.0 con cui è distribuito.
Loading...