JavaRush /Java Blog /Random-IT /Pausa caffè #48. 9 abitudini utili per uno sviluppatore j...

Pausa caffè #48. 9 abitudini utili per uno sviluppatore junior

Pubblicato nel gruppo Random-IT
Fonte: Free Code Camp Hai mai analizzato le tue abitudini? Quelli buoni ti aiutano a diventare chi vuoi essere. Le cattive abitudini ti trasformeranno gradualmente in chiunque tu voglia diventare. Avendo lavorato come sviluppatore di software per oltre 12 anni, ho sviluppato alcune abitudini di cui sono orgoglioso e altre che preferirei abbandonare. All’inizio non mi rendevo conto del loro significato, ma poi mi è diventato chiaro quali di queste abitudini mi hanno aiutato a crescere e quali mi hanno ostacolato. Ciò mi ha spinto a fare un inventario e scrivere di qualcosa che potrebbe ispirarti a fare lo stesso.Pausa caffè #48.  9 abitudini utili per uno sviluppatore junior - 1

Affronta volontariamente cose che non capisci

All'inizio della tua carriera non sai molto. Pertanto, probabilmente ti sentirai un impostore. Dopotutto, l'azienda ti paga uno stipendio come specialista e non conosci nemmeno la metà dei nomi delle tecnologie e dei framework con cui lavorano i tuoi colleghi. E hai sentito parlare della seconda metà solo perché hai cercato su Google in tempo. Se sostituisci le parole “all’inizio di una carriera” con “all’inizio di qualsiasi nuovo progetto”, puoi ottenere un quadro abbastanza accurato di una carriera nello sviluppo di software. Ogni nuovo progetto è l’inizio di qualcosa di nuovo. Incontriamo nuove persone, comprendiamo nuove esigenze, apprendiamo nuovi framework. E così ogni volta. Ecco perché è così importante imparare costantemente cose nuove. Se fai sempre solo ciò che ti riesce bene, non sarai in grado di affrontare con sicurezza un nuovo progetto. La paura dell'ignoto apparirà sempre davanti a te. Prendendo l'abitudine di svolgere da solo compiti di cui non sai nulla, puoi acquisire nuove abilità e conoscenze. Se devi riparare qualcosa in un assieme e non hai mai affrontato un lavoro del genere prima, assumi questo compito! Acquisirai l'esperienza necessaria e nuove competenze. Se c'è un bug nel codice JavaScript del tuo frontend e finora hai lavorato solo con il backend Java, risolvilo! Fare cose di cui non sei sicuro è un ottimo modo per crescere professionalmente. Ma non ingannare le aspettative degli altri. Non fingere di essere un asso in tutto. Sii onesto dicendo che non l'hai mai fatto prima, ma vorresti imparare.

Chiedi di lavorare con qualcuno in coppia

Se sei bloccato su qualcosa o non sai come completare un'attività, chiedi a qualcuno più esperto di lavorare con te. La programmazione in coppia è un ottimo modo per far muovere le cose. Discuti i requisiti con il tuo collega: questo ti renderà più semplice capire quale dovrebbe essere il risultato. Quindi inizia a discutere le opzioni di soluzione. Puoi andare ancora oltre e offrirti di lavorare in coppia, in modo che tu scriva il codice e il tuo collega ti dia suggerimenti e viceversa. Questo ti aiuterà a imparare a pensare e risolvere i problemi. Per un principiante, la programmazione in coppia è molto vantaggiosa. Una nota sul lavoro da casa. Quando siamo passati al formato di lavoro remoto, ho dovuto affrontare problemi completamente nuovi per me. Ho cominciato a dubitare se avrei dovuto chiedere ai miei colleghi di lavorare in coppia con me. In ufficio tutto era semplice: puoi semplicemente andare al tavolo accanto e discutere di questo problema. Con il lavoro a distanza e la comunicazione tramite videoconferenza tutto è diventato notevolmente più complicato. Se questo è un problema anche per te, parlane con i tuoi colleghi. Hai solo bisogno di cambiare un po’ i tuoi approcci abituali e sviluppare nuove abitudini.

Segnala ciò che fai (e non fai)

Non ricordo quante volte ho intrapreso con entusiasmo un compito, pensando di poterlo fare in un giorno, per poi finirlo in una settimana. Con l'esperienza ho meno probabilità di trovarmi in situazioni del genere, ma a volte sono ancora troppo ottimista nelle mie valutazioni. Ci sono diverse ragioni per questa stima del tempo:
  • il management richiede che una nuova funzionalità venga completata rapidamente perché la scadenza è vicina;
  • Voglio fare bella figura rispetto ai miei colleghi d'ufficio;
  • molte cose semplicemente non funzionano come previsto;
  • e tanti tanti altri...
In generale, è molto probabile che anche la stima del tempo sia eccessivamente ottimistica. Come risolvere questo problema? Puoi gestire le aspettative mentre procedi! Parla costantemente di ciò che stai facendo e comunica sempre ciò che ti trattiene. Non intendo dire che sia necessario emettere un aggiornamento sullo stato dell'attività ogni 15 minuti. Assicurati solo che le persone interessate sappiano a che punto del processo ti trovi. È meglio comunicarlo all'inizio e alla fine della giornata lavorativa. Se il tuo capo o team/responsabile di progetto si aspetta risultati da te, riferiscigli quotidianamente: “Sto lavorando su questo e quest’altro. Mi sono imbattuto in questo e quel problema. Ecco le opzioni per risolverlo." In questo modo, tutti gli interessati sapranno dei tuoi progressi. Nessuno ti biasimerà se improvvisamente incontri un problema, purché mantieni le persone informate. Un ulteriore vantaggio: segnalando lo stato attuale di un'attività, puoi ascoltare dagli altri consigli o soluzioni al problema. Prendi l'abitudine di aggiornare regolarmente i tuoi stakeholder sui risultati del tuo lavoro.

Avvia un blog

Probabilmente non sono la prima persona da cui senti questo consiglio, ma lo dico comunque: blog! Non è necessario che il tuo blog sia pubblico. Potrebbero trattarsi di un paio di pagine sul wiki della tua azienda o di una raccolta di repository GitHub con esempi di codice e alcune righe di testo esplicativo. Perché è necessario? Perché quando scrivi qualcosa per insegnare agli altri (anche se quegli “altri” sono il tuo sé futuro), è un ottimo modo per imparare e crescere professionalmente. Scrivi come sei riuscito a risolvere un problema difficile. O su come funziona un nuovo framework, il cui rilascio state aspettando da molto tempo. Puoi anche tenere un diario di ciò che hai fatto durante la settimana. A proposito, questo ti aiuterà a sviluppare l'abitudine di comunicare ciò su cui stai lavorando attualmente. Ho iniziato a scrivere sul blog più volte. All'inizio, ovviamente, è molto difficile mantenere la motivazione e costringersi a scrivere, rendendosi conto che quasi nessuno legge i tuoi post. È abbastanza strano scrivere nel vuoto. Per questo motivo ho abbandonato i miei blog. E tre anni fa ho iniziato il mio prossimo blog . Ho scritto senza pubblico per sei mesi. E poi ho scoperto di non avere lettori perché il mio file robots.txt non permetteva ai motori di ricerca di indicizzare il blog! Per farla breve, ho modificato le impostazioni in robots.txt e le persone hanno iniziato a leggere i miei articoli. I lettori non erano molti, ma mi davano comunque uno stimolo a non fermarmi. A poco a poco ho migliorato le mie capacità di scrittura e ora il mio blog conta fino a 200mila visualizzazioni al mese. E tutto ciò è dovuto al fatto che una volta ho deciso di iniziare a scrivere su nuovi framework e problemi che sono riuscito a risolvere. E l'ho fatto per poter tornare ai miei appunti quando ne avevo bisogno, e per niente perché volevo riunire un vasto pubblico. All'inizio il blog può sembrare un compito noioso, ma col tempo, se non ti fermi, inizierà a darti soddisfazione. Se inizi a scrivere con il desiderio di imparare e insegnare, non solo imparerai molto, ma diventerai anche interessante per molte persone.

Procurati un quaderno

Solo di recente sono diventato un grande fan dei notebook. Non sotto forma di programmi, ma veri e propri, cartacei. Ovunque vada, porto con me un blocco note e una penna. In questo modo ho la possibilità di annotare ciò che mi viene in mente in ogni momento. Prendo appunti mentre ascolto il discorso di qualcuno, quando aspetto l'autobus o quando penso a cosa preparare per cena. Utilizzo anche un blocco note per creare un elenco di libri che voglio leggere, strutture che voglio imparare, funzionalità che voglio aggiungere ai miei progetti personali. E, cosa ancora più importante, prendo appunti mentre leggo i libri perché mi aiuta a ricordare meglio ciò che ho imparato. Scrivo tutto quello che mi viene in mente. E se per qualche motivo non riesco a scrivere qualcosa, mi sento così in ansia che non riesco nemmeno a dormire. Il punto è che non mi fido della mia memoria. Se hai una buona memoria e ricordi perfettamente tutto ciò a cui hai pensato una settimana fa, probabilmente non avrai bisogno di un quaderno. Ma se hai difficoltà a ricordare, come faccio io, prendere appunti su un quaderno cambierà in modo significativo la tua vita in meglio. Per assicurarti che il tuo taccuino sia il più utile possibile, hai bisogno di un approccio sistematico. Devi assicurarti che qualunque cosa scrivi sul tuo quaderno non andrà persa. Separa i primi due fogli del tuo quaderno in un sommario in modo da poter trovare facilmente le informazioni di cui hai bisogno in seguito. Prendi l'abitudine di rivedere regolarmente i tuoi appunti. Prendiamo, ad esempio, gli appunti presi durante la lettura di un libro. Quando finisco di leggere un libro, guardo i miei appunti e ne scrivo una recensione sul mio blog. Sebbene quasi nessuno legga questo testo, il processo stesso di scrittura di una recensione ti costringe a pensare a ciò che leggi e, di conseguenza, a ricordarlo meglio.

Documenta le tue vittorie

I quaderni sono necessari anche quando si sviluppa l'abitudine di documentare i propri risultati. Come ho già detto, la mia memoria è pessima. Certo, riesco a ricordare cosa ho mangiato ieri a pranzo, ma quando sono concentrato su un compito complesso, la potenza della mia memoria diminuisce notevolmente. Ecco perché ho la regola di scrivere i miei risultati alla fine di ogni giornata. Non parliamo di gesta eccezionali, ma semplicemente di piccole vittorie. Ad esempio, correggere un bug, fare un altro passo verso la creazione di una nuova funzionalità, ecc. Annoto anche le vittorie personali, come il completamento del mio allenamento mattutino. La sera faccio semplicemente un elenco di ciò che ho fatto durante la giornata e scrivo tutto su un quaderno. Puoi inserire tali voci su un tablet o utilizzare un programma speciale, se è più conveniente per te. Nel tempo, ci sono più risultati. Puoi anche contrassegnare in qualche modo quelli più importanti in modo da poterli ritrovare facilmente in seguito. Ad esempio, prima di prepararti per una revisione delle prestazioni, esamini il tuo elenco, trovi i risultati rilevanti e li elenchi in un elenco separato. Ciò renderà la recensione molto migliore. Un elenco di risultati è utile anche per comunicare ciò che hai fatto.

Trova il tempo per i compiti importanti

Alla fine della giornata, spesso mi sento come se non avessi realizzato nulla oggi. E mentre documentare le tue vittorie (o almeno le attività completate) è importante, la cosa più importante è completare tali attività. Succede che un incontro lascia il posto a un altro e all'improvviso arriva la fine della giornata lavorativa. Dopo un incontro con i colleghi, vorresti continuare a lavorare sul tuo compito, ma proprio quando hai tempo per riscaldarti, inizia una nuova videoconferenza. E dopo devi “riscaldarti” di nuovo, perché hai già perso il contesto. Ciò riduce la tua produttività. Se ho imparato qualcosa sull'essere produttivi, è che è importante riservare tempo per compiti importanti. Se non prendi l'abitudine di dedicare tempo a compiti importanti, ci sono buone probabilità che non riuscirai mai a lavorarci. Il tuo tempo sarà consumato dalle normali attività quotidiane. È possibile gestire il proprio tempo in vari modi e, a dire il vero, salto da un approccio all'altro ogni due mesi. Ma il punto rimane lo stesso: per le attività che devi assolutamente completare, devi riservare una parte di tempo nel tuo programma. Dedico un'ora al mattino, prima del lavoro, alla scrittura di articoli per il blog (o altri siti). Riservo anche un'ora la sera (quando i bambini già dormono) per lavorare su un progetto personale. Al momento ho una bacheca Trello con una colonna per ogni giorno della settimana in cui elenco le attività che voglio affrontare al mattino e alla sera. Una volta alla settimana aggiorno questa bacheca e scrivo lì ciò che devo realizzare nella prossima settimana. In questo modo non devo perdere tempo prezioso pensando a cosa fare dopo. Inoltre, ogni giorno dedico due ore al giorno al lavoro che richiede una concentrazione speciale, in modo che i miei colleghi non cerchino di programmare riunioni durante questo periodo. Tutto ciò mi aiuta ad affrontare i compiti pianificati per la giornata. In generale, non è così importante come gestisci esattamente il tempo. La cosa principale è farlo in linea di principio e crearne un'abitudine. Altrimenti, le tue giornate saranno consumate da cose che non sono molto importanti per te.

Se sei bloccato, prenditi una pausa

Gli sviluppatori molto spesso raggiungono un vicolo cieco. E queste situazioni sono terribilmente fastidiose. In questi casi, tutti spesso consigliano di prendersi una pausa dal lavoro. Ma a volte è molto difficile seguire tali raccomandazioni, perché “la decisione è già vicina, non posso fermarmi adesso”. E se faccio una pausa in questo momento, dopo dovrò nuovamente "intervenire" nell'essenza della questione. Perché perdere tempo volontariamente? Ma il fatto è che quando sei bloccato nel lavoro, ti impedisce di pensare lucidamente. Pensi che sia molto stupido rimanere bloccato con un problema del genere. Dopotutto, i tuoi colleghi potrebbero probabilmente gestirlo facilmente (un'altra opzione è che ricevano sempre compiti più facili). Allo stesso tempo, non pensi a come risolvere effettivamente il problema. Prenditi una pausa e lavora su qualcos'altro per un po'. O (ancora meglio) torniamo su questo problema domani. Prendere le distanze dal problema ti permetterà di vedere soluzioni che prima sfuggivano alla tua vista. Forse non ti è ancora successo, ma ti assicuro: molto spesso la soluzione giusta viene in mente da sola. Se non hai tempo extra, puoi utilizzare il metodo Pomodoro, dividendo l'attività in segmenti da 30 minuti con una breve pausa intermedia. Dopo ogni passaggio, mi chiedo se sono in modalità soluzione o se sono bloccato e dovrei fare qualcos'altro. Il Metodo Pomodoro ha l’ulteriore vantaggio di utilizzare la fine di ogni passaggio come stimolo per altre abitudini. Ad esempio, per prendere l'abitudine di alzarsi da tavola e stirarsi, bere acqua. Questo a volte viene chiamato pila di abitudini, perché in un certo senso le metti una sopra l'altra e di conseguenza ottieni un buon effetto.

Non c'è bisogno di cercare una bacchetta magica

Una volta ho scritto un libro su un certo stile di architettura software e ricevo regolarmente e-mail con domande del tipo “Mi piace molto questo stile e voglio applicarlo a tutti i miei progetti! Come farlo?" E sai cosa rispondo? Non esiste uno stile architettonico adatto a risolvere tutti i problemi. Quando hai un piccolo progetto, crei una semplice API CRUD. E se hai un modello complesso, costruisci un'architettura esagonale più complessa. E quando crei microservizi in ogni singolo contesto, utilizzi uno tra centinaia di stili architettonici. Non esiste una struttura universale che possa essere utilizzata per qualsiasi progetto. Proprio come non esiste un unico linguaggio di programmazione o stile di codifica. Non cercare di trovare una bacchetta magica. Lei non esiste. Avere la propria opinione è positivo quando ci sono argomenti validi dietro la propria opinione. "Questo è il miglior stile architettonico" e "lo faccio sempre" non sono argomenti degni di nota. Immagina solo che ci sia uno sviluppatore nel tuo team che ha sempre le sue preferenze e che ha sempre la schiuma alla bocca per dimostrare che ha ragione, “perché è meglio”. Ti stancherai molto rapidamente. Non essere quel tipo di sviluppatore.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION