Principale Tecnologia Come dire la differenza tra un buon programmatore e un ottimo programmatore

Come dire la differenza tra un buon programmatore e un ottimo programmatore

Il Tuo Oroscopo Per Domani

Se scrivere codice fosse una scienza, tutti gli sviluppatori sarebbero praticamente gli stessi.

Proprio come nell'arte, non esistono due sviluppatori che hanno lo stesso pensiero, percezione o verità soggettiva mentre scrivono codice per lo stesso risultato.

Mentre alcuni lottano per produrre il risultato desiderato, per alcuni viene quasi naturale, come se un'epifania li colpisse nel momento in cui si siedono per creare programmi o risolvere un problema.

In un post sul blog , Steve McConnell (citato come esperto di ingegneria del software) scrive che lo studio originale che ha trovato enormi variazioni nella produttività della programmazione individuale è stato condotto alla fine degli anni '60 da Sackman, Erikson e Grant. Hanno scoperto che il rapporto del tempo di codifica iniziale tra i programmatori migliori e peggiori era di circa 20 a 1. Non hanno trovato alcuna relazione tra la quantità di esperienza di un programmatore e la qualità o la produttività del codice.

Sebbene ci fossero difetti in questo studio, anche dopo averli presi in considerazione, i dati mostrano ancora una differenza di oltre 10 volte tra i migliori programmatori e i peggiori.

quanto è alto Paul Nassif

In Arkenea abbiamo più di cinque anni di esperienza nell'assumere sviluppatori ed è difficile come lo era nei primi giorni distinguere un bravo programmatore da uno bravo.

Non è una sfida unica. Abbiamo visto molte grandi imprese e aziende di tutti i settori alle prese con lo stesso problema. Molti hanno creato un processo di filtraggio attraverso vari test, ma puoi davvero mettere alla prova un artista?

La risposta diretta è no.

Scrivere un buon codice semplicemente non è l'unico fattore per giudicare se il programmatore è una grande risorsa.

Ma c'è un modo. Ci sono alcuni altri indicatori (a parte la qualità della scrittura del codice) che separano i grandi programmatori da quelli bravi.

Christopher Burke, in una risposta su Quora , ha evidenziato che chiunque sappia scrivere programmi funzionanti per risolvere problemi è un programmatore. Un buon programmatore, d'altra parte, è colui che collabora con altri per creare programmi manutenibili, eleganti, adatti all'uso da parte del cliente, in tempo e con bassi tassi di difetto, con poco o nessun dramma interpersonale.

Ma ciò che rende un grande programmatore è uno che comprende algoritmi e architetture in modo intuitivo, può costruire grandi sistemi autoconsistenti con poca supervisione, può inventare nuovi algoritmi, può refactoring sistemi live senza romperli, può comunicare in modo efficace e convincente con personale non tecnico su aspetti tecnici. e questioni non tecniche, sa come tenere sotto controllo il suo ego e può insegnare le sue abilità agli altri.

Nella mia esperienza, però, identicherei la sua definizione di programmatore con quella di un buon programmatore e la sua definizione di buon programmatore con quella di un grande programmatore.

Qualcuno che Christopher chiama un grande programmatore, direi, non scriverà necessariamente codice una volta raggiunto questo stadio della sua carriera. La persona lavorerebbe in modo più strategico con le aziende e i loro team di sviluppo per dare indicazioni sul prodotto, essenzialmente qualcuno come un CTO.

La volontà di rimanere con un problema fino a quando non viene risolto (da non confondere con il sedersi su un problema), insieme alla capacità di risolverlo creativamente, è un'abilità o un'attitudine molto desiderata che si trova solo nei grandi programmatori.

biografia del tennista madison keys

Quindi la domanda per eccellenza, come si identifica un grande programmatore? Questa persona sarà in grado di arrivare rapidamente alla radice del tuo problema. Lui o lei potrebbe non fornire immediatamente una soluzione, ma può tracciare un percorso per arrivare alla soluzione in modo rapido ed efficace.