Ján Regeš, un collega, un amico e soprattutto una grande persona, lavora presso l'agenzia digitale SiteOne da oltre 15 anni. È stato il mio primo teamleader quando ho iniziato a programmare. Ricordo con molto affetto la nostra collaborazione, perché riusciva sempre a trasmettermi molte nozioni utili che io annotavo e capivo solo anni dopo.
Qualche tempo fa sono riuscito a intervistare Janek e gli ho chiesto, a posteriori, come percepisce il lavoro con i giovani e come fare le cose davvero bene. Da tempo ho capito la differenza tra ciò che pensavo anni fa e come percepisco le cose oggi. Si tratta di collaborazione, umiltà (verso le persone, verso la tecnologia, verso le aziende), ... insomma, Janek l'ha scritto benissimo.
Ecco le sue intuizioni:
Sei giovane, intelligente e molto abile, ma imho troppo sicuro di te, sia nella programmazione che nel business - hai indubbiamente fatto un grande passo avanti nella conoscenza, ma hai bisogno di esplorare ulteriormente.
Accettate con umiltà le vostre attuali conoscenze, i vostri saperi e anche i possibili contatti e concedetevi ancora qualche anno per esplorare consapevolmente il mondo (tecnologia, affari, personalità...). Non perderete nessun treno. Quando dovrete prendere decisioni più importanti e difficili, avrete a disposizione più dati, esperienza e un istinto più raffinato.
Cercate di capire quali sono le competenze o le tecnologie in cui siete più esperti o che volete sviluppare maggiormente, e scegliete il vostro prossimo datore di lavoro di conseguenza.
Non andate per i soldi, ma per la bella sensazione di un lavoro fatto, di un team arricchito, di un valore fornito o di un bisogno soddisfatto. È un luogo comune, ma i soldi andranno di pari passo se vi concentrerete sulle cose giuste della vostra professionalità.
Se iniziate da qualche parte, mappate e capite a chi si rivolge il vostro ambiente di lavoro e qual è la percezione della vostra "qualità" e del vostro "valore" da parte di coloro che commissionano e pagano il progetto. Imparate a concentrarvi e a fornire alta qualità e valore, non solo "buon codice". Ci sono aziende e progetti in cui la consegna riguarda un piccolo pezzo di codice che deve essere perfetto, rigorosamente testato e che si sa che funzionerà per i prossimi 10-15 anni. Ma ci sono progetti che durano 2-3-4 anni e in cui la qualità e il valore attesi sono completamente diversi da quelli che il programmatore pensa. Imparate a percepire questo aspetto, a differenziarlo e, se necessario, a porre domande di questo tipo ai vostri colleghi o al cliente.
Ammettete a voi stessi che ogni pochi anni, se guardate il vostro codice di 2-3 anni fa, non sarà mai buono, anche se prima vi sembrava all'avanguardia. È meglio e più promettente concentrarsi sulla qualità risultante percepita dal "cliente", sia esso interno o esterno. Queste sono le cose più positive che rimarranno e ricaricheranno voi e i soci o i clienti con cui avete lavorato in passato in futuro.
Dedicatevi al vostro nuovo ambiente: capite qual è il loro "problema", cosa li aiuterà di più grazie alle vostre competenze distintive, comunicatelo al vostro supervisore e fatelo pensando a un risultato di qualità, non a un codice di qualità. Forse l'ambiente ha bisogno di punti di forza diversi dalla programmazione.
Aiutate, ma sempre con umiltà: rispettate e cercate di capire le prospettive e le opinioni di altri che hanno una vera responsabilità e sono pronti a sopportare i successi e i rischi delle loro decisioni per gli anni a venire. Nel contesto di un programmatore, ciò include le decisioni tecnologiche, la selezione dello stack o la direzione e la strategia a lungo termine.
In qualità di programmatore, è necessario presentare sempre un lavoro rigorosamente testato. Leggete ogni riga del vostro codice nel diff prima di ogni commit. Testate l'interfaccia UI preparata su X scenari diversi e provate a giocare con un utente semplice ma sofisticato. Non affidatevi a tester o a CR estranei: questo è solo un buon bonus di supporto quando il team ha questi processi funzionanti.
Tenete a mente la regola KISS e fate attenzione all'eccessiva ingegnerizzazione. Se si fanno le cose in modo semplice ma efficiente, impeccabile, sicuro e con confini chiari, è meglio che inventare una centrale nucleare super-modulare e un'architettura. Dipende da cosa si sta facendo, ma imho nella maggior parte dei casi è meglio scegliere la soluzione più semplice.
Se avete preso buone decisioni architettoniche sarà sempre evidente dopo anni di funzionamento e di implementazione di funzionalità future. Purtroppo, la realtà è che la maggior parte dei programmatori di oggi cambia lavoro piuttosto rapidamente e non ha idea di quali siano gli impatti positivi o negativi delle proprie decisioni precedenti e quindi se siano state buone o cattive.
Imparare a riconoscere e a lavorare con persone ragionevoli e corrette che non si limitano agli affari, ma si preoccupano anche del valore reale di ciò che fanno e per chi lo fanno.
Vivete e lavorate in modo tale che quando qualcuno della vostra famiglia vi chiede a cosa state lavorando, la vostra risposta sia onesta e riguardi più che altro l'aiutare i vostri clienti a soddisfare le loro esigenze o i loro sogni nel mondo di Internet, ma non l'essere un programmatore perfetto e scrivere codice perfetto. Non esiste un codice perfetto, ma l'unica prova che il codice è buono è quando, anni dopo, il proprietario o il collaboratore di uno dei vostri progetti/prodotti vi fa i complimenti per il fatto che è stato sempre bello lavorarci o che si è espanso bene.
Non lasciatevi abbattere e pensate alla vostra salute fisica e mentale. Lavorare solo 8-10 ore al giorno. Se scegliete di passare un po' di tempo al PC dopo l'orario di lavoro o nei fine settimana, non dovreste chiamarlo lavoro che avete "dovuto" fare. Assicuratevi di dire a voi stessi, col senno di poi, che è stata un'ottima decisione. Io stesso dedico una grande quantità di tempo al lavoro, ma solo perché le cose che faccio dopo l'orario di lavoro non mi stressano, mi rendono felice, migliorano il clima professionale del nostro team o di me stesso, e anche dopo molti anni non rimpiango il tempo che vi ho investito. Faccio solo quello che voglio fare e quello che la mia famiglia mi permette di fare. Mi sento libero e lo so. Anche se lo faccio da oltre 16 anni.
Ho scritto il punto precedente soprattutto perché mi sembra chiaro che gli dedichi lo stesso tempo che dedico io, ma a posteriori spesso valuti che non è stato l'uso migliore del tuo tempo (in genere lavorando per le persone o i progetti sbagliati). Fate attenzione e scegliete le vostre collaborazioni in modo consapevole e con termini chiaramente concordati.
Conoscere, percepire e realizzare la missione della propria vita. Anche se incontrerete delle difficoltà nel realizzarlo, almeno non dubiterete di essere sulla strada giusta, ma vi concentrerete sul superamento degli ostacoli lungo il cammino invece di rimuginare sulle sciocchezze.
Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.