Guardando indietro, qual è il tuo più grande contributo alla tua squadra come programmatore esperto?

Soprattutto evita errori costosi.

Ho introdotto diverse cose ai team che hanno risparmiato tempo. Molti sono dati per scontati ora, come unit test, OOP, Java e codifica per leggibilità.

Queste sono state tutte risposte difficili alle situazioni del mondo reale che mi hanno frustrato. Devi avere esperienza per sapere cosa è rotto. E poi trova una risposta. E quindi guidare il cambiamento dall’interno, per esempio.

Tutto ciò richiede esperienza di vita, tecnologia, fallimento e soprattutto persone. Le persone spesso resistono al cambiamento, specialmente se pensano che tu sia contro di loro.

L’esperienza aiuta anche l’intuizione.

Quando arriva un difetto, posso spesso metterlo in relazione con qualcosa che ho visto prima. In alcuni casi, sembra quasi leggere la mente. Molti difetti sottili relativi a thread, prestazioni o usabilità si manifestano in modi strani. E quando li hai vissuti, puoi individuarli rapidamente.

L’esperienza offre flessibilità.

Prendi qualsiasi nuova tendenza. Di solito è una combinazione di vecchie tendenze. NoSQL? È come un database composto da un file e una hashmap. Quindi puoi impararlo rapidamente mettendo in atto modelli mentali esistenti.

L’esperienza ti aiuta a navigare in politica.

Piaccia o no, i team di programmazione sono gruppi umani tribali. Accade una dinamica di potere mutevole. E devi leggere le persone e influenzare le persone per essere efficaci.

L’esperienza porta il pensiero funzionale trasversale.

Ho gestito la mia consulenza software e sono stato un tipo di personale permanente. Apprezzo il marketing, le vendite, gli inviti all’azione, la contabilità, la progettazione di software, i test, i vincoli di produzione, la distribuzione.

Non sono esperto in queste cose; ma posso parlare sensatamente con le persone che lo sono.

E non ho potuto fare nulla di tutto ciò nel mio primo lavoro di programmazione. Quindi ottieni la massima esperienza possibile. Non è mai sprecato!