Versione breve
Se il lavoro consiste nel mantenere un'applicazione, le abilità che devi testare durante le interviste sono:
-
Capacità di comprendere la grande base di codice con la sua documentazione, test di unità , ecc.
-
La capacità di refactare il codice e di apportare modifiche senza rompere tutto.
Chiedere alle persone di leggere il codice non ti aiuterà a valutare quelle capacità.
Versione lunga
Eri stato chiesto di scrivere il codice? Se sì, come indicato in la sua risposta , questo è sufficiente. Se generalizziamo un po ', una persona che scrive codice sorgente chiaro e facile da capire sarebbe in grado di leggere il codice sorgente scritto da altre persone.
Se non ti è stato chiesto di scrivere il codice, allora, probabilmente, sei stato probabilmente intervistato da una persona del dipartimento risorse umane. Tali interviste non possono essere troppo tecniche e sono per lo più inutili, dal momento che non mettono a frutto le tue capacità e la tua capacità di lavorare bene, ma piuttosto il numero di anni trascorsi al college e altre cose che non hanno nulla a che fare con il lavoro. / p>
Ci sono alcuni altri motivi per non chiedere di leggere il codice per un lavoro di manutenzione:
1. È difficile da fare in modo affidabile
Concretamente, cosa faresti se fossi un intervistatore? Fai leggere ai tuoi candidati un codice. Quale codice? In che lingua? Quanto bene o male scritto? Con o senza commenti? Con o senza documentazione?
Ancora più importante, cosa racconta del candidato? Quanto bene è correlato con lo stesso codebase?
Supponiamo che tu abbia un'app legacy VB.NET da mantenere. Sai che il codice sorgente è per lo più brutto e non testato, e alcuni commenti sono obsoleti o fuorvianti. Negli ultimi tre mesi, hai avuto uno sviluppatore molto abile che lavora sulla soluzione; ha rifattorizzato e ha testato le parti più critiche dell'applicazione, ha aggiunto commenti dove c'era bisogno di commenti e, soprattutto, ha scritto una documentazione dettagliata sull'architettura generale, le parti critiche e le insidie.
Ora stai assumendo uno sviluppatore per mantenere questo codebase. Durante un'intervista, forniresti un pezzo di codice (non ancora testato) o il codice che è stato refactored dallo sviluppatore precedente?
Daresti la documentazione? Per leggere la documentazione, il candidato dovrà passare almeno un paio d'ore. Ciò rende impossibile farlo durante un'intervista.
2. Leggere un breve pezzo di codice non equivale a leggere il codice di un progetto familiare
Ricorda, il lavoro è di mantenere un progetto. È difficile mantenere una base di codice estesa i primi giorni o settimane in cui non hai familiarità con il progetto. È molto più facile farlo dopo alcuni mesi quando hai scritto tutta la documentazione e hai una visione chiara della base di codice globale.
La cosa più importante da testare è se la persona sarà efficiente quei mesi . Non ti importa se la persona non sarà in grado di capire nulla nei primi due giorni.
Chiedendo a una persona di leggere una breve parte di codice da zero, non stai testando come questa persona sarebbe in grado di gestire una codea di codice familiare e documentata di migliaia di LOC .
3. Il mantenimento del codice sorgente non si limita a leggerlo
Quando mantieni una base di codice, stai modificando . Uno sviluppatore che legge solo il codice non porta nulla di utile alla sua azienda.
Le abilità utili sono la capacità di codice refactore , di aggiungere test unitari , di prevedere l'impatto di un cambiamento , ecc. non testare tali capacità chiedendo a una persona di leggere il codice durante l'intervista.