Parlando dall'esperienza sull'intervistato e sul lato intervistatore delle cose: i problemi in cui ti viene chiesto di usare un pezzo di carta o lavagna bianca sono fatti perché il tuo potenziale datore di lavoro essenzialmente vuole sapere due (2) cose su di te:
- Sei un risolutore di problemi ? Potrebbe sembrare elitario e duro, ma se non riesci a risolvere i miei problemi, allora perché dovrei assumerti?
- Sei in grado di comunicare bene su come risolvi un problema? Lavorerai insieme a un team, alla direzione e alle vendite. La mancata comunicazione è problematica in un ambiente di squadra, ci sono molte volte durante la creazione / lo sviluppo del software, in cui una soluzione può causare il caos su un'altra. Non sottolineerò mai abbastanza quanto sia importante che una semplice chat ti abbia salvato e che il tuo team abbia a che fare con il caos e trovare una soluzione ancora migliore.
Quando il problema che ti viene dato viene svolto direttamente dall'intervistatore, dovresti essere in grado di rispondere ad alcune domande e risolvere problemi senza la necessità di IDE o altri strumenti. Di solito i problemi che ti vengono dati dovrebbero essere rispondenti indipendentemente dalla conoscenza intellisense / autocomplete in quanto comunque non ti aiuteranno comunque nella progettazione di software e algoritmi, quindi è una falsa affermazione se qualcuno ti dice altrimenti poiché questi strumenti aiutano solo la tua produttività. Non sarei sorpreso se i candidati che lamentano la mancanza di IDE sono contrassegnati in rosso come utenti copia / incolla / wizard piuttosto che come programmatori / programmatori "reali".
Quindi, se ti trovi in una situazione in cui devi scrivere il codice, procedi come segue:
- Fai un respiro profondo. Prendi quel sangue che circola nella tua testa.
- Concentrati sul problema in questione. Tutto il resto è irrilevante.
- E qualunque cosa tu faccia: Non farti prendere dal panico! Assumi sempre le buone intenzioni . Solo per quello che ne sai: scappare è un brutto segno.
Di solito non verrai comunque calibrato sulla correttezza della sintassi. Finché sai quali sono le variabili, gli array, i loop e i condizionali, dovresti essere in grado di risolvere i problemi sulla carta. Punti bonus se è possibile ricordare alcune strutture e algoritmi del computer. A volte l'intervistatore potrebbe sondare gli errori di battitura e sarebbe utile riconoscere i propri errori; in tali situazioni basta scusarsi, correggere e andare avanti.
E se vuoi fare pratica, c'è Project Euler ... oppure potresti semplicemente lavorare su problemi reali nella scrittura di applicazioni reali .