From 6d353133e6a2739a63f3c4a940dc7ec169df2f1d Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Tue, 2 Apr 2024 19:50:27 +0200 Subject: [PATCH 01/18] feat: creata introduzione per il capitolo carriera-junior --- docs/it/carriera-junior.md | 98 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 docs/it/carriera-junior.md diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md new file mode 100644 index 00000000..ffd22b3e --- /dev/null +++ b/docs/it/carriera-junior.md @@ -0,0 +1,98 @@ +# Carriera - Junior + +## Introduzione + +All'interno di questo libro sono stati affrontati in diverse forme molti dei tecnicismi che fanno parte del mestiere di chi sviluppa, l'obiettivo di questo libro peró non é parlare di devs solamente come artigiani/e del software ma anche in modo piú generale come risorse umane. + +Sono presenti infatti diversi capitoli pubblicati o in stesura che parlano del modo in cui formarsi, il significato di questa professione o i percorsi possibili di carriera e che quindi affrontano l'aspetto piú "personale" e "lavorativo" di questo mestiere. + +L'obiettivo di questo capitolo é descrivere per noi cosa significa in linea generale essere Junior Developer, esplorare le pratiche giornaliere per poter crescere e collaborare in modo sano in un team e infine il percorso per crescere di livello e non solo, il fine é raccontare anche quanto questa fase della carriera possa essere complessa oltre che delicata e fondamentale per il futuro, a seconda di come viene affrontata. + +## L'identikit di Junior Dev + +Come possiamo identificare un/a Junior Developer? Spoiler: non é semplice. + +A seconda dei panni che si stanno indossando (es. dev, recruiter, team leader, coach...) questo ruolo puó assumere molteplici forme e declinazioni che aumentano esponenzialmente a seconda delle tipologie e delle dimensioni delle aziende, oppure se della categoria di consulenza o di prodotto e anche ad esempio se si é impiegati in ambito front-end o back-end. + +Anche affidandoci ad internet per trovare una definizione le sfumature che emergono sono diverse, potremmo classificare chi sviluppa in base all'etá (ad oggi non é piú di tanto un indice di esperienza), in base agli studi e da quanto tempo siano stati completati o anche in base agli anni di esperienza in una determina azienda o in generale di carriera. + +Per creare un piano comune che ci permetta di esplorare facilmente l'argomento e fissare quello che per noi é il fulcro del capitolo, la definizione di Junior Dev per noi é la seguente: + +> Una persona di una qualsiasi etá, proveniente da qualsivoglia ambito di studi e che ha seguito un percorso di carriera di ogni tipo che peró é in grado di leggere ed interpretare i requisiti di un possibile artefatto software o di una sua parte e ha le competenze tecniche per riprodurlo, non in completa autonomia. + +Per noi la chiave di volta é questa, non una delimitazione basata su aspetti come i titoli di studio, gli anni di esperienza o di lavoro ma un'identificazione tramite la capacitá di scrivere software, con una particolare attenzione al livello di autonomia. + +Se volessimo schematizzare e fare qualche esempio a sostegno di questa tesi: + +| Tesi | Antitesi | +| ---------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| "Ho 10 anni di carriera alle spalle quindi non sono piú un/a Junior Dev" | Il tuo apprendimento é stato efficace in questi anni? Sei autonoma/o nel tuo ambito? In quali ambiti hai lavorato? Come possiamo misurare la qualitá del tuo lavoro sapendo solo che hai 10 anni di carriera alle spalle? Potresti essere stagnante da tempo e non essere aggiornato/a. | +| "Ho una laurea o un dottorato in Ingegneria o in Informatica" | Che tipo di competenze hai assorbito durante il percorso di studi? Come le hai applicate nel tuo lavoro? Sei autonomo/a grazie al tuo percorso di studi? | +| "Come esperienza lavorativa hai solamente un anno nella Azienda Esempio Srl, sarai certamente Junior Dev!" | Potresti invece aver praticato in autonomia in side-projects o potresti aver contribuito a progetti FOSS le tue abilitá nello scrivere codice. | +| "Ho 40 anni, non posso essere classificata come Junior Dev " | L'etá é solamente un numero, non fornisce informazioni sul tuo background o il percorso aziendale che hai compiuto. | +| "Con una laurea in Psicologia non puoi che essere un/a Junior Dev" | Alcuni background contribuiscono a migliorare le tue soft-skills e soprattutto ti forniscono un punto di vista diverso e come per l'esempio dell'esperienza lavorativa, potresti aver programmato nel tempo libero per anni, come passione e aver appreso abbastanza. | + +È importante peró fare una precisazione, fermo restando che una persona puó sviluppare e apprendere per passione tutte le capacitá di programmare che vuole, lavorare in team é differente e lo é soprattutto perché si lavora all'interno di un'azienda, con le sue regole, i suoi tools e le sue pratiche. + +Sicuramente ci sono fattori che non possono mancare in un/a dev con molta esperienza, come i test, l'attenzione alla security o le performance ottimali di un applicativo insieme alla sua architettura, che sono tutti aspetti piú complessi da assorbire in autonomia come Junior Dev, anche se la passione e la voglia di imparare possono portarti ovunque. + +Potresti essere contributor di progetti FOSS da anni o potresti aver lavorato per molto in un'azienda ma arrivata/o in un'azienda nuova é facile trovarsi spaesati nonostante l'esperienza, ricadendo quindi nella figura di "Junior" in un certo senso, a prescindere dalla sfida da affrontare. + +Magari in qualche modo hai curato in autonomia o in un team gli aspetti piú complessi citati sopra come security e performance ad esempio, iniziando da zero in una nuova realtá aziendale peró tutto potrebbe sembrarti diverso e nuovo e come ribadito in diversi capitoli di questo nostro libro open, noi devs non finiamo mai di imparare, ricordandoci che chiunque potrebbe avere qualcosa da insegnarci, anche chi ha iniziato da poco. + +Questo cosa puó significare? + +Probabilmente che gli Junior Devs che sono dentro di noi, se pratichiamo un apprendimento continuo e costante e che segue la natura mutevole di questa professione, forse non se ne vanno mai via del tutto (e magari é anche meglio cosí). + +## "L'occasione fa del Dev un Senior" + +Stabilito un punto fisso come definizione di Junior Dev, possiamo proseguire nell'esplorare questa figura analizzandola dal punto di vista della carriera, immaginandola come la prima fase di un percorso lavorativo. + +In primis é bene stabilire che ogni sviluppatore a seconda delle esperienze, ha i suoi tempi e di conseguenza non esiste un limite di tempo giá stablito entro cui dovrai evolvere come dev e nel titolo abbiamo deliberatamente ripreso un vecchio proverbio per introdurre un concetto per noi fondamentale: nessuno, se non te stess\* puó far avanzare la tua carriera in termini di competenze. + +Con questa espressione intendiamo evidenziare che di "occasioni" se ne presenteranno molte: la spiegazione di un concetto da parte dei colleghi, affiancamenti ad un senior, contenuti grautiti online (per il momento lasciamo perdere la formazione a pagamento), serate spese a sperimentare in autonomia oppure un nuovo progetto in azienda dove poter toccare con mano un nuovo aspetto mai affrontato. + +Sta solamente a te decidere di riconoscere di non sapere e non limitarti a "non lo so" ma ponendoti nella posizione di dire "non so, ma posso imparare" che non significa che l'unica dimensione formativa sia quella del "learn-by-doing", ma é un buon inizio cosí come é un inizio anche solo osservare altri mentre fanno, porre delle domande e in seguito magari sperimentare in un ciclo continuo di apprendimento, mattoncino per mattoncino. + +Al concetto di "occasioni" peró é bene aggiungere anche i casi "limite" che nel bene nel male come vedremo rimangono comunque momenti per imparare ma andiamo per fasi. + +In caso non ti fosse mai capitato sappi che é facile uscire dal "recinto" del ruolo di Junior Dev in termini di responsabilitá, soprattutto in aziende o team di piccole dimensioni, un collega é malato o si é licenziato, un progetto fuori tempo che si accavalla ad altri ed é un attimo trovarsi a gestire aspetti di un progetto che normalmente non dovremmo gestire noi e in linea di massima, non dovrebbe gestire una figura Junior. + +Beh per fortuna che almeno in questi casi il compenso economico aumenta... sbagliato, non é cosí che funziona. + +Potremmo dipingere il mondo come un bellissimo posto pieno di arcobaleni e di RAL commisurate alle responsabilitá e ci sono sicuramente un sacco di aziende validissime e dalla struttura solida dove questi scenari sono ben lontani dalla norma, ma é comune che possano presentarsi ed é comune trovarsi in situazioni dove non si é abbastanza formati. + +Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilitá per cui non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente, é bene che tu sia preparat\*. + +Cosa possiamo fare per affrontare queste occasioni? + +Possiamo lamentarci, alzare le mani e sedersi immobili ad aspettare aiuto, oppure possiamo vedere queste situazioni, come detto in precedenza, come occasioni. + +Potresti iniziare a scorrere la codebase, indagare su internet, raccogliere piú informazioni possibili, fare piccoli tentativi in codebase separate e magari ad esempio in caso di bug riprodurre le casistiche per delineare con piú precisione il problema e poi, successivamente, confrontarti con altri devs e se non hai modo di farlo, beh, puoi solo provare in autonomia. + +In linea di massima finché non ci sono perdite di dati in produzione, interruzioni di servizio e perdite di codice importante, possiamo agire ed é quello lo spazio dove possiamo muoverci per aumentare le nostre abilitá di coding con una certa confidenza. + +Ribadiamo che queste situazioni non dovrebbero comunque essere la norma, non senza supervisione e non senza gli adeguati riferimenti in caso di problemi e in caso tu ti trovassi in questa posizione, questi sono tutti campanelli d'allarme per un'azienda che non considera la salute mentale dei suoi dipendenti e l'efficacia del proprio team. + +Quello a cui dovremmo mirare é arrivare ad avere un sottile limite entro cui é salutare esplorare "terre sconosciute" per imparare, senza alcun rischio e forse non avrai sempre una RAL commisurata alle responsabilitá, ma avrai nuove abilitá da esercitare. + +Se decidiamo di non cogliere nessuna delle occasione che arrivano, abbiamo il rovescio della medaglia: essere stagni nella propria posizione. + +Questo per noi é un altro dei fondamenti dell'essere buoni Junior, non fossilizzarsi che in linea di massima é un termine generale per indicare che non dovrai porti dei limiti nell'apprendere, nel definire quando qualcosa é fuori dalla tua sfera d'interesse o delle tue responsabilitá e soprattutto, fatto un "gradino" (ad esempio appreso un nuovo framework) é bene pensare al prossimo da superare, ritornando al concetto di apprendimento continuo. + +Anche in questo caso peró dobbiamo avvisarti, qui c'é un ulteriore punto fondamentale che é bene ricordare come Junior Dev ma é una costante nella carriera dei devs: attenzione alle tecnologie nuove. + +Spesso ti capiterá di veder persone che gridano che il framework, il linguaggio o la tecnologia che stai usando stanno morendo e che é bene imparare la nuovissima tecnologia di cui invece sono dei sostenitori o a cui hanno contribuito. +In realtá potremmo vedere molti di questi esempi grazie all'IA, dello stampo "Inutile imparare a programmare ora!" ma la realtá dei fatti é che tutto va filtrato e analizzato singolarmente e l'aspetto fondamentale di una tecnologia da valutare é la sua robustezza e non c'é giudice piú capace del tempo, la tua stella polare dovrebbe essere la giusta flessibilitá accompagnata dalla soliditá e la sicurezza di aver scritto (o aver tentato il piú possibile) di scrivere codice di qualitá. + +In poche parole, equilibrio tra questi aspetti: innovazione, adattabilitá, ottimizzazione, sicurezza e robustezza. + +Non spingere la tua mente in uno stato mentale di stress o di FOMO, la paura di "perdersi qualcosa", solo perché non hai appreso l'ultima tecnologia e a sostegno di questa tesi ti segnaliamo che ci sono sistemi centrali per l'umanitá che navigano con tecnologie inventati decenni fa o con codice a basso livello. + +Prendi le novitá cosí come vengono, se ti interessano informati e magari provale ma fai attenzione ad integrarla ovunque e concentrati sul non dimenticare i fondamenti e la forma mentale in favore di ció che arrivato ieri piuttosto che un mese fa. + +Imparare, sperimentare e testare nuovi strumenti richiede tempo e sicuramente la frizione nell'assorbire una nuova tecnologia fa parte delle occasioni sopracitate ma é anche vero che forse un training di due settimane sul nuovo framework é poco sensato per ottenere semplicemente due millisecondi risparmiati durante il render di una pagina web, forse hai modi migliori di trascorrere il tuo tempo... magari contribuire all'open source :) + +Faccenda complessa vero? + +Come puoi vedere non vogliamo indorarti la pillola, la fase di carriera da Junior é parecchio delicata e composta di molteplici fattori da considerare e ancora non abbiamo esplorato cosa dovrebbe fare o non fare un Junior Dev per lavorare in modo ottimale, ci sono mille sfaccettature perché dopotutto in questa fase starai gettando le basi della tua carriera, quindi in realtá l'unico consiglio che possiamo darti é di non demordere, ora hai piú chiaro quanto puó essere complesso iniziare a sviluppare nel mondo di oggi. From 80a715359cbfd8885fc7d11d7971eb12255e2d03 Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Tue, 23 Apr 2024 20:51:36 +0200 Subject: [PATCH 02/18] Update docs/it/carriera-junior.md Co-authored-by: Simone Gentili --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index ffd22b3e..1b023b58 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -18,7 +18,7 @@ Anche affidandoci ad internet per trovare una definizione le sfumature che emerg Per creare un piano comune che ci permetta di esplorare facilmente l'argomento e fissare quello che per noi é il fulcro del capitolo, la definizione di Junior Dev per noi é la seguente: -> Una persona di una qualsiasi etá, proveniente da qualsivoglia ambito di studi e che ha seguito un percorso di carriera di ogni tipo che peró é in grado di leggere ed interpretare i requisiti di un possibile artefatto software o di una sua parte e ha le competenze tecniche per riprodurlo, non in completa autonomia. +> Una persona di una qualsiasi etá, proveniente da qualsivoglia ambito di studi e che ha seguito un percorso di carriera di un qualsiasi tipo tipo che peró é in grado di leggere ed interpretare i requisiti di un possibile artefatto software o di una sua parte e ha le competenze tecniche per riprodurlo, non in completa autonomia. Per noi la chiave di volta é questa, non una delimitazione basata su aspetti come i titoli di studio, gli anni di esperienza o di lavoro ma un'identificazione tramite la capacitá di scrivere software, con una particolare attenzione al livello di autonomia. From 0c760886cc0a8ef9cce9a9ec30173b078340b1d3 Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Tue, 23 Apr 2024 20:52:20 +0200 Subject: [PATCH 03/18] Update docs/it/carriera-junior.md Co-authored-by: Simone Gentili --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 1b023b58..a0d92b93 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -62,7 +62,7 @@ Beh per fortuna che almeno in questi casi il compenso economico aumenta... sbagl Potremmo dipingere il mondo come un bellissimo posto pieno di arcobaleni e di RAL commisurate alle responsabilitá e ci sono sicuramente un sacco di aziende validissime e dalla struttura solida dove questi scenari sono ben lontani dalla norma, ma é comune che possano presentarsi ed é comune trovarsi in situazioni dove non si é abbastanza formati. -Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilitá per cui non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente, é bene che tu sia preparat\*. +Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilitá per le quali non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente, é bene che tu acquisisca una adeguata preparazione. Cosa possiamo fare per affrontare queste occasioni? From 0036f4a2022878d81a8170997610b96086c164af Mon Sep 17 00:00:00 2001 From: Angelo Cassano Date: Thu, 25 Apr 2024 20:45:06 +0200 Subject: [PATCH 04/18] feat: carriera junior - aggiunta sezione Come crescere professionalmente --- docs/it/carriera-junior.md | 67 +++++++++++++++++++++++++------------- 1 file changed, 45 insertions(+), 22 deletions(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index a0d92b93..9b57118f 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -4,7 +4,7 @@ All'interno di questo libro sono stati affrontati in diverse forme molti dei tecnicismi che fanno parte del mestiere di chi sviluppa, l'obiettivo di questo libro peró non é parlare di devs solamente come artigiani/e del software ma anche in modo piú generale come risorse umane. -Sono presenti infatti diversi capitoli pubblicati o in stesura che parlano del modo in cui formarsi, il significato di questa professione o i percorsi possibili di carriera e che quindi affrontano l'aspetto piú "personale" e "lavorativo" di questo mestiere. +Sono presenti infatti diversi capitoli pubblicati o in stesura che parlano del modo in cui formarsi, il significato di questa professione o i percorsi possibili di carriera e che quindi affrontano l'aspetto piú "personale" e "lavorativo"di questo mestiere. L'obiettivo di questo capitolo é descrivere per noi cosa significa in linea generale essere Junior Developer, esplorare le pratiche giornaliere per poter crescere e collaborare in modo sano in un team e infine il percorso per crescere di livello e non solo, il fine é raccontare anche quanto questa fase della carriera possa essere complessa oltre che delicata e fondamentale per il futuro, a seconda di come viene affrontata. @@ -14,31 +14,31 @@ Come possiamo identificare un/a Junior Developer? Spoiler: non é semplice. A seconda dei panni che si stanno indossando (es. dev, recruiter, team leader, coach...) questo ruolo puó assumere molteplici forme e declinazioni che aumentano esponenzialmente a seconda delle tipologie e delle dimensioni delle aziende, oppure se della categoria di consulenza o di prodotto e anche ad esempio se si é impiegati in ambito front-end o back-end. -Anche affidandoci ad internet per trovare una definizione le sfumature che emergono sono diverse, potremmo classificare chi sviluppa in base all'etá (ad oggi non é piú di tanto un indice di esperienza), in base agli studi e da quanto tempo siano stati completati o anche in base agli anni di esperienza in una determina azienda o in generale di carriera. +Anche affidandoci ad internet per trovare una definizione le sfumature che emergono sono diverse, potremmo classificare chi sviluppa in base all'età (ad oggi non é piú di tanto un indice di esperienza), in base agli studi e da quanto tempo siano stati completati o anche in base agli anni di esperienza in una determinata azienda o in generale di carriera. Per creare un piano comune che ci permetta di esplorare facilmente l'argomento e fissare quello che per noi é il fulcro del capitolo, la definizione di Junior Dev per noi é la seguente: -> Una persona di una qualsiasi etá, proveniente da qualsivoglia ambito di studi e che ha seguito un percorso di carriera di un qualsiasi tipo tipo che peró é in grado di leggere ed interpretare i requisiti di un possibile artefatto software o di una sua parte e ha le competenze tecniche per riprodurlo, non in completa autonomia. +> Una persona di una qualsiasi età, proveniente da qualsivoglia ambito di studi e che ha seguito un percorso di carriera di un qualsiasi tipo che peró é in grado di leggere ed interpretare i requisiti di un possibile artefatto software o di una sua parte e ha le competenze tecniche per riprodurlo, non in completa autonomia. -Per noi la chiave di volta é questa, non una delimitazione basata su aspetti come i titoli di studio, gli anni di esperienza o di lavoro ma un'identificazione tramite la capacitá di scrivere software, con una particolare attenzione al livello di autonomia. +Per noi la chiave di volta é questa, non una delimitazione basata su aspetti come i titoli di studio, gli anni di esperienza o di lavoro ma un'identificazione tramite la capacità di scrivere software, con una particolare attenzione al livello di autonomia. Se volessimo schematizzare e fare qualche esempio a sostegno di questa tesi: | Tesi | Antitesi | | ---------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| "Ho 10 anni di carriera alle spalle quindi non sono piú un/a Junior Dev" | Il tuo apprendimento é stato efficace in questi anni? Sei autonoma/o nel tuo ambito? In quali ambiti hai lavorato? Come possiamo misurare la qualitá del tuo lavoro sapendo solo che hai 10 anni di carriera alle spalle? Potresti essere stagnante da tempo e non essere aggiornato/a. | +| "Ho 10 anni di carriera alle spalle quindi non sono piú un/a Junior Dev" | Il tuo apprendimento é stato efficace in questi anni? Sei autonoma/o nel tuo ambito? In quali ambiti hai lavorato? Come possiamo misurare la qualità del tuo lavoro sapendo solo che hai 10 anni di carriera alle spalle? Potresti essere stagnante da tempo e non essere aggiornato/a. | | "Ho una laurea o un dottorato in Ingegneria o in Informatica" | Che tipo di competenze hai assorbito durante il percorso di studi? Come le hai applicate nel tuo lavoro? Sei autonomo/a grazie al tuo percorso di studi? | -| "Come esperienza lavorativa hai solamente un anno nella Azienda Esempio Srl, sarai certamente Junior Dev!" | Potresti invece aver praticato in autonomia in side-projects o potresti aver contribuito a progetti FOSS le tue abilitá nello scrivere codice. | -| "Ho 40 anni, non posso essere classificata come Junior Dev " | L'etá é solamente un numero, non fornisce informazioni sul tuo background o il percorso aziendale che hai compiuto. | +| "Come esperienza lavorativa hai solamente un anno nella Azienda Esempio Srl, sarai certamente Junior Dev!" | Potresti invece aver praticato in autonomia in side-projects o potresti aver contribuito a progetti FOSS le tue abilità nello scrivere codice. | +| "Ho 40 anni, non posso essere classificata come Junior Dev " | L'età é solamente un numero, non fornisce informazioni sul tuo background o il percorso aziendale che hai compiuto. | | "Con una laurea in Psicologia non puoi che essere un/a Junior Dev" | Alcuni background contribuiscono a migliorare le tue soft-skills e soprattutto ti forniscono un punto di vista diverso e come per l'esempio dell'esperienza lavorativa, potresti aver programmato nel tempo libero per anni, come passione e aver appreso abbastanza. | -È importante peró fare una precisazione, fermo restando che una persona puó sviluppare e apprendere per passione tutte le capacitá di programmare che vuole, lavorare in team é differente e lo é soprattutto perché si lavora all'interno di un'azienda, con le sue regole, i suoi tools e le sue pratiche. +È importante peró fare una precisazione, fermo restando che una persona puó sviluppare e apprendere per passione tutte le capacità di programmare che vuole, lavorare in team é differente e lo é soprattutto perché si lavora all'interno di un'azienda, con le sue regole, i suoi tools e le sue pratiche. Sicuramente ci sono fattori che non possono mancare in un/a dev con molta esperienza, come i test, l'attenzione alla security o le performance ottimali di un applicativo insieme alla sua architettura, che sono tutti aspetti piú complessi da assorbire in autonomia come Junior Dev, anche se la passione e la voglia di imparare possono portarti ovunque. Potresti essere contributor di progetti FOSS da anni o potresti aver lavorato per molto in un'azienda ma arrivata/o in un'azienda nuova é facile trovarsi spaesati nonostante l'esperienza, ricadendo quindi nella figura di "Junior" in un certo senso, a prescindere dalla sfida da affrontare. -Magari in qualche modo hai curato in autonomia o in un team gli aspetti piú complessi citati sopra come security e performance ad esempio, iniziando da zero in una nuova realtá aziendale peró tutto potrebbe sembrarti diverso e nuovo e come ribadito in diversi capitoli di questo nostro libro open, noi devs non finiamo mai di imparare, ricordandoci che chiunque potrebbe avere qualcosa da insegnarci, anche chi ha iniziato da poco. +Magari in qualche modo hai curato in autonomia o in un team gli aspetti piú complessi citati sopra come security e performance ad esempio, iniziando da zero in una nuova realtà aziendale peró tutto potrebbe sembrarti diverso e nuovo e come ribadito in diversi capitoli di questo nostro libro open, noi devs non finiamo mai di imparare, ricordandoci che chiunque potrebbe avere qualcosa da insegnarci, anche chi ha iniziato da poco. Questo cosa puó significare? @@ -48,7 +48,7 @@ Probabilmente che gli Junior Devs che sono dentro di noi, se pratichiamo un appr Stabilito un punto fisso come definizione di Junior Dev, possiamo proseguire nell'esplorare questa figura analizzandola dal punto di vista della carriera, immaginandola come la prima fase di un percorso lavorativo. -In primis é bene stabilire che ogni sviluppatore a seconda delle esperienze, ha i suoi tempi e di conseguenza non esiste un limite di tempo giá stablito entro cui dovrai evolvere come dev e nel titolo abbiamo deliberatamente ripreso un vecchio proverbio per introdurre un concetto per noi fondamentale: nessuno, se non te stess\* puó far avanzare la tua carriera in termini di competenze. +In primis é bene stabilire che ogni sviluppatore a seconda delle esperienze, ha i suoi tempi e di conseguenza non esiste un limite di tempo già stabilito entro cui dovrai evolvere come dev e nel titolo abbiamo deliberatamente ripreso un vecchio proverbio per introdurre un concetto per noi fondamentale: nessuno, se non te stess\* puó far avanzare la tua carriera in termini di competenze. Con questa espressione intendiamo evidenziare che di "occasioni" se ne presenteranno molte: la spiegazione di un concetto da parte dei colleghi, affiancamenti ad un senior, contenuti grautiti online (per il momento lasciamo perdere la formazione a pagamento), serate spese a sperimentare in autonomia oppure un nuovo progetto in azienda dove poter toccare con mano un nuovo aspetto mai affrontato. @@ -56,13 +56,13 @@ Sta solamente a te decidere di riconoscere di non sapere e non limitarti a "non Al concetto di "occasioni" peró é bene aggiungere anche i casi "limite" che nel bene nel male come vedremo rimangono comunque momenti per imparare ma andiamo per fasi. -In caso non ti fosse mai capitato sappi che é facile uscire dal "recinto" del ruolo di Junior Dev in termini di responsabilitá, soprattutto in aziende o team di piccole dimensioni, un collega é malato o si é licenziato, un progetto fuori tempo che si accavalla ad altri ed é un attimo trovarsi a gestire aspetti di un progetto che normalmente non dovremmo gestire noi e in linea di massima, non dovrebbe gestire una figura Junior. +In caso non ti fosse mai capitato sappi che é facile uscire dal "recinto" del ruolo di Junior Dev in termini di responsabilità, soprattutto in aziende o team di piccole dimensioni, un collega é malato o si é licenziato, un progetto fuori tempo che si accavalla ad altri ed é un attimo trovarsi a gestire aspetti di un progetto che normalmente non dovremmo gestire noi e in linea di massima, non dovrebbe gestire una figura Junior. Beh per fortuna che almeno in questi casi il compenso economico aumenta... sbagliato, non é cosí che funziona. -Potremmo dipingere il mondo come un bellissimo posto pieno di arcobaleni e di RAL commisurate alle responsabilitá e ci sono sicuramente un sacco di aziende validissime e dalla struttura solida dove questi scenari sono ben lontani dalla norma, ma é comune che possano presentarsi ed é comune trovarsi in situazioni dove non si é abbastanza formati. +Potremmo dipingere il mondo come un bellissimo posto pieno di arcobaleni e di RAL commisurate alle responsabilità e ci sono sicuramente un sacco di aziende validissime e dalla struttura solida dove questi scenari sono ben lontani dalla norma, ma é comune che possano presentarsi ed é comune trovarsi in situazioni dove non si é abbastanza formati. -Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilitá per le quali non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente, é bene che tu acquisisca una adeguata preparazione. +Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilità per le quali non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente, é bene che tu acquisisca una adeguata preparazione. Cosa possiamo fare per affrontare queste occasioni? @@ -70,29 +70,52 @@ Possiamo lamentarci, alzare le mani e sedersi immobili ad aspettare aiuto, oppur Potresti iniziare a scorrere la codebase, indagare su internet, raccogliere piú informazioni possibili, fare piccoli tentativi in codebase separate e magari ad esempio in caso di bug riprodurre le casistiche per delineare con piú precisione il problema e poi, successivamente, confrontarti con altri devs e se non hai modo di farlo, beh, puoi solo provare in autonomia. -In linea di massima finché non ci sono perdite di dati in produzione, interruzioni di servizio e perdite di codice importante, possiamo agire ed é quello lo spazio dove possiamo muoverci per aumentare le nostre abilitá di coding con una certa confidenza. +In linea di massima finché non ci sono perdite di dati in produzione, interruzioni di servizio e perdite di codice importante, possiamo agire ed é quello lo spazio dove possiamo muoverci per aumentare le nostre abilità di coding con una certa confidenza. Ribadiamo che queste situazioni non dovrebbero comunque essere la norma, non senza supervisione e non senza gli adeguati riferimenti in caso di problemi e in caso tu ti trovassi in questa posizione, questi sono tutti campanelli d'allarme per un'azienda che non considera la salute mentale dei suoi dipendenti e l'efficacia del proprio team. -Quello a cui dovremmo mirare é arrivare ad avere un sottile limite entro cui é salutare esplorare "terre sconosciute" per imparare, senza alcun rischio e forse non avrai sempre una RAL commisurata alle responsabilitá, ma avrai nuove abilitá da esercitare. +Quello a cui dovremmo mirare é arrivare ad avere un sottile limite entro cui é salutare esplorare "terre sconosciute" per imparare, senza alcun rischio e forse non avrai sempre una RAL commisurata alle responsabilità, ma avrai nuove abilità da esercitare. Se decidiamo di non cogliere nessuna delle occasione che arrivano, abbiamo il rovescio della medaglia: essere stagni nella propria posizione. -Questo per noi é un altro dei fondamenti dell'essere buoni Junior, non fossilizzarsi che in linea di massima é un termine generale per indicare che non dovrai porti dei limiti nell'apprendere, nel definire quando qualcosa é fuori dalla tua sfera d'interesse o delle tue responsabilitá e soprattutto, fatto un "gradino" (ad esempio appreso un nuovo framework) é bene pensare al prossimo da superare, ritornando al concetto di apprendimento continuo. +Questo per noi é un altro dei fondamenti dell'essere buoni Junior, non fossilizzarsi che in linea di massima é un termine generale per indicare che non dovrai porti dei limiti nell'apprendere, nel definire quando qualcosa é fuori dalla tua sfera d'interesse o delle tue responsabilità e soprattutto, fatto un "gradino" (ad esempio appreso un nuovo framework) é bene pensare al prossimo da superare, ritornando al concetto di apprendimento continuo. Anche in questo caso peró dobbiamo avvisarti, qui c'é un ulteriore punto fondamentale che é bene ricordare come Junior Dev ma é una costante nella carriera dei devs: attenzione alle tecnologie nuove. -Spesso ti capiterá di veder persone che gridano che il framework, il linguaggio o la tecnologia che stai usando stanno morendo e che é bene imparare la nuovissima tecnologia di cui invece sono dei sostenitori o a cui hanno contribuito. -In realtá potremmo vedere molti di questi esempi grazie all'IA, dello stampo "Inutile imparare a programmare ora!" ma la realtá dei fatti é che tutto va filtrato e analizzato singolarmente e l'aspetto fondamentale di una tecnologia da valutare é la sua robustezza e non c'é giudice piú capace del tempo, la tua stella polare dovrebbe essere la giusta flessibilitá accompagnata dalla soliditá e la sicurezza di aver scritto (o aver tentato il piú possibile) di scrivere codice di qualitá. +Spesso ti capiterà di veder persone che gridano che il framework, il linguaggio o la tecnologia che stai usando stanno morendo e che é bene imparare la nuovissima tecnologia di cui invece sono dei sostenitori o a cui hanno contribuito. +In realtà potremmo vedere molti di questi esempi grazie all'IA, dello stampo "Inutile imparare a programmare ora!" ma la realtà dei fatti é che tutto va filtrato e analizzato singolarmente e l'aspetto fondamentale di una tecnologia da valutare é la sua robustezza e non c'é giudice piú capace del tempo, la tua stella polare dovrebbe essere la giusta flessibilità accompagnata dalla solidità e la sicurezza di aver scritto (o aver tentato il piú possibile) di scrivere codice di qualità. -In poche parole, equilibrio tra questi aspetti: innovazione, adattabilitá, ottimizzazione, sicurezza e robustezza. +In poche parole, equilibrio tra questi aspetti: innovazione, adattabilità, ottimizzazione, sicurezza e robustezza. -Non spingere la tua mente in uno stato mentale di stress o di FOMO, la paura di "perdersi qualcosa", solo perché non hai appreso l'ultima tecnologia e a sostegno di questa tesi ti segnaliamo che ci sono sistemi centrali per l'umanitá che navigano con tecnologie inventati decenni fa o con codice a basso livello. +Non spingere la tua mente in uno stato mentale di stress o di FOMO, la paura di "perdersi qualcosa", solo perché non hai appreso l'ultima tecnologia e a sostegno di questa tesi ti segnaliamo che ci sono sistemi centrali per l'umanità che navigano con tecnologie inventati decenni fa o con codice a basso livello. -Prendi le novitá cosí come vengono, se ti interessano informati e magari provale ma fai attenzione ad integrarla ovunque e concentrati sul non dimenticare i fondamenti e la forma mentale in favore di ció che arrivato ieri piuttosto che un mese fa. +Prendi le novità cosí come vengono, se ti interessano informati e magari provale ma fai attenzione ad integrarla ovunque e concentrati sul non dimenticare i fondamenti e la forma mentale in favore di ció che arrivato ieri piuttosto che un mese fa. Imparare, sperimentare e testare nuovi strumenti richiede tempo e sicuramente la frizione nell'assorbire una nuova tecnologia fa parte delle occasioni sopracitate ma é anche vero che forse un training di due settimane sul nuovo framework é poco sensato per ottenere semplicemente due millisecondi risparmiati durante il render di una pagina web, forse hai modi migliori di trascorrere il tuo tempo... magari contribuire all'open source :) Faccenda complessa vero? -Come puoi vedere non vogliamo indorarti la pillola, la fase di carriera da Junior é parecchio delicata e composta di molteplici fattori da considerare e ancora non abbiamo esplorato cosa dovrebbe fare o non fare un Junior Dev per lavorare in modo ottimale, ci sono mille sfaccettature perché dopotutto in questa fase starai gettando le basi della tua carriera, quindi in realtá l'unico consiglio che possiamo darti é di non demordere, ora hai piú chiaro quanto puó essere complesso iniziare a sviluppare nel mondo di oggi. +Come puoi vedere non vogliamo indorarti la pillola, la fase di carriera da Junior é parecchio delicata e composta di molteplici fattori da considerare e ancora non abbiamo esplorato cosa dovrebbe fare o non fare un Junior Dev per lavorare in modo ottimale, ci sono mille sfaccettature perché dopotutto in questa fase starai gettando le basi della tua carriera, quindi in realtà l'unico consiglio che possiamo darti é di non demordere, ora hai piú chiaro quanto puó essere complesso iniziare a sviluppare nel mondo di oggi. + +## Come crescere professionalmente + +Partiamo dal presupposto che spesso ad essere identificati professionalmente come Junior troviamo tutta una fetta di popolazione che, per definizione, Junior non è. Dedicare un capitolo di questo libro ad ogni " livello" professionale sarebbe impensabile, ed è per questo motivo che abbiamo deciso di inglobare nella definizione di Junior anche la popolazione entry level degli sviluppatori. +Per questo motivo, il percorso di crescita professionale che andremo ad analizzare in questo capitolo potrà essere seguito sia da chi si sta affacciando per la prima volta al mondo del lavoro, sia da chi ha già alle spalle qualche anno di esperienza. +La chiave di volta per la crescita professionale nel mondo dello sviluppo software è la proattività. Essere proattivi significa non aspettare che le cose accadano, ma fare in modo che accadano. Questo concetto è particolarmente importante per chi si trova nella fase iniziale della propria carriera, in quanto è proprio in questo momento che si gettano le basi per il proprio futuro professionale. +I primi anni della carriera, così come i primi anni di vita, sono quelli in cui si impara di più. È in questa fase che si acquisiscono le competenze tecniche e non tecniche che saranno fondamentali per il proprio futuro professionale. È in questo momento che si impara a lavorare in team, a risolvere i problemi, a comunicare con gli altri, a gestire il tempo e le risorse a propria disposizione. + +Per gli entry level, coloro i quali hanno appena avviato la propria carriera professionale, è importante scegliere la prima azienda nel modo giusto. Spesso si tende a sottovalutare l'importanza di questa decisione, ma è proprio da qui che si parte per costruire il proprio futuro professionale. È importante scegliere un'azienda che offra un ambiente di lavoro stimolante, che permetta di crescere professionalmente e che dia la possibilità di mettersi alla prova. In questa fase è molto importante riconsiderare le proprie priorità a breve termine per puntare quasi esclusivamente su quelle a lungo termine. +Per anni, soprattutto a causa di influenze dettate dai tempi passati, siamo stati abituati a pensare al luogo di lavoro come un posto in cui scambiare il proprio tempo per denaro. La retorica degli ultimi cinquant'anni ci ha portato a credere che il lavoro fosse un obbligo, un dovere, una necessità. Ma la realtà è ben diversa. Il lavoro è una scelta, una scelta che facciamo ogni giorno, una scelta che ci permette di esprimere noi stessi, di realizzarci, di crescere. Ecco perché è importante scegliere con cura il luogo in cui lavorare, perché è da qui che parte tutto. +In generale, durante la scelta di un posto di lavoro, mettiamo sul piatto della bilancia diversi aspetti, e tendiamo ad attribuire un peso a ognuno di essi. La retribuzione, e aggiungerei la flessibilità sulla modalità di lavoro, spesso giocano un ruolo fondamentale nello spostare l'ago della bilancia. Ma è importante non dimenticare che ci sono altri aspetti che possono fare la differenza, soprattutto se stiamo per varcare per la prima volta la soglia di un'azienda. Un lavoro non è per sempre, i nostri gusti, le nostre abitudini, i nostri modi di fare possono cambiare, e con essi anche le nostre priorità. + +Nei primi tre mesi di carriera il tuo obiettivo principale dovrebbe essere quello di farti conoscere e conoscere l'azienda nella quale sei dentro. Questo periodo di solito coincide con il periodo di prova, e quindi è importante capire se siete fatti per stare insieme. Non aver paura di fuggire se il tuo sesto senso ti dice che non è il posto giusto per te. Non è un fallimento, è solo un'altra tappa del tuo percorso. E ricorda, non è mai troppo tardi per cambiare strada. In questo momento l'obiettivo principale è imparare, imparare, imparare. Non preoccuparti troppo di fare errori, è normale, è umano. +Nei primi sei mesi di carriera dovrai diventare un detective, devi cercare di acquisire quante più informazioni possibili sia su come lavora l'azienda, e sia sul dominio applicativo della stessa. Ci sono realtà dove il dominio applicativo è molto complesso, e richiede tempo per essere assimilato. Non aver paura di chiedere, non aver paura di fare domande, non aver paura di sbagliare. Ricorda, sei lì per imparare, non per dimostrare quanto vali. In questa fase dovresti riuscire a identificare il capobranco del tuo team, colui o colei che ha più esperienza, e che può aiutarti a crescere. Ecco, ti ci devi attaccare come una cozza al suo scoglio. +Nei tuoi primi nove mesi di carriera dovresti dimenticare totalmente il tuo stipendio. Questo non significa che non dovrai preoccuparti di come pagare l'affitto o la spesa, ma che non dovresti permettere allo stesso di diventare un'etichetta per il tuo livello di professionalità. Non lavorare mai gratis, piuttosto meglio farsi assegnare un rimborso spese, il lavoro, seppur non di esperienza, va sempre ricompensato. Evita di accettare lavori superpagati ma senza prospettive o che non ti soddisfano, la gratificazione economica dura poco e soprattutto non è considerata un investimento a lungo termine. +Durante il primo anno di carriera ti ritroverai a svolgere task sia semplici che leggermente più complessi. Da junior, è molto probabile che il tuo lavoro sarà spesso di supporto, e che ti troverai a lavorare su task che non richiedono particolari competenze tecniche. Questo non significa che il tuo lavoro non sia importante, anzi. Il tuo lavoro è fondamentale per il buon funzionamento del team, e per la riuscita del progetto. Non sottovalutare mai il tuo ruolo, e non permettere a nessuno di farlo. Se ti trovi in un ambiente in cui il tuo lavoro non è riconosciuto, è il momento di cambiare aria. Ricorda, il tuo lavoro è importante, e tu sei importante. +In questo periodo, spesso e volentieri ti capiterà di svolgere attività nelle quali non ti senti a tuo agio, o che non ti piacciono, o peggio, che per un motivo o per l'altro, non riuscirai a risolvere. Qui la contemporanea presenza e assenza di informazione giocheranno un ruolo fondamentale nello sviluppo delle tue abilità di problem solving. Cerca di attivare la modalità esplorativa nel tuo cervello, poniti domande, e soprattutto falle agli altri. È importante imparare a porre le domande in modo da mantenere attiva la modalità esplorativa. Cerca di desistere dal chiedere la soluzione: un cervello in fase di stress positivo è un cervello che impara. +Un'altra importante fase che dovrai imparare a sfruttare al meglio per massimizzare l'apprendimento è quella di pair programming e di code review. Cerca insistentemente di lavorare a stretto contatto con i tuoi colleghi, e cerca di farti revisionare il codice il più possibile. Questo ti permetterà di imparare nuove tecniche, nuovi pattern, e soprattutto ti permetterà di capire come lavorano gli altri. Ricorda, il pair programming e le code review sono due attività fondamentali per la crescita professionale di un developer, e non dovrebbero mai essere trascurate. Cerca di mettere da parte l'idea che il giudizio degli altri possa essere negativo sulla tua persona, e cerca di accettare le critiche come un'opportunità di crescita. Ricorda, il tuo obiettivo è imparare, non dimostrare quanto vali. + +Dopo un po' di tempo passato a lavorare in azienda, molto probabilmente individuerai una certa predilezione verso determinati processi e a maturare un certo livello di competenza verso alcune aree del dominio applicativo. Le attività di pair programming si riducono allo stretto necessario, e le sessioni di code review non impegnano troppo tempo al tuo reviewer nel suggerirti dei cambiamenti. Inizierai ad avere responsabilità diverse, e probabilmente ti troverai a dover gestire task più complessi e a dover prendere decisioni più importanti. Complimenti! Questi sono buoni indicatori che la tua professionalità sta crescendo, e che stai maturando come sviluppatore. +Quasi sicuramente le tue competenze tecniche saranno migliorate, imparerai a conoscere più nel dettaglio un linguaggio di programmazione, a saper utilizzare meglio il framework di riferimento nella tua azienda, e soprattutto a saper risolvere attività più lunghe e corpose nel minor tempo possibile utilizzando pattern e dogmi dell'ingegneria del software. + +WIP From 62fd081a8062426b3b92601fb9db0725b89940c8 Mon Sep 17 00:00:00 2001 From: Angelo Cassano Date: Wed, 18 Sep 2024 17:30:23 +0200 Subject: [PATCH 05/18] feat: carriera junior - completata sezione Come crescere professionalmente --- docs/it/carriera-junior.md | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 9b57118f..2125e7d8 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -99,23 +99,34 @@ Come puoi vedere non vogliamo indorarti la pillola, la fase di carriera da Junio ## Come crescere professionalmente -Partiamo dal presupposto che spesso ad essere identificati professionalmente come Junior troviamo tutta una fetta di popolazione che, per definizione, Junior non è. Dedicare un capitolo di questo libro ad ogni " livello" professionale sarebbe impensabile, ed è per questo motivo che abbiamo deciso di inglobare nella definizione di Junior anche la popolazione entry level degli sviluppatori. +Partiamo dal presupposto che spesso ad essere identificati professionalmente come Junior troviamo tutta una fetta di popolazione che, per definizione, Junior non è. Dedicare un capitolo di questo libro ad ogni "livello" professionale sarebbe impensabile, ed è per questo motivo che abbiamo deciso di inglobare nella definizione di Junior anche gli sviluppatori entry level. Per questo motivo, il percorso di crescita professionale che andremo ad analizzare in questo capitolo potrà essere seguito sia da chi si sta affacciando per la prima volta al mondo del lavoro, sia da chi ha già alle spalle qualche anno di esperienza. La chiave di volta per la crescita professionale nel mondo dello sviluppo software è la proattività. Essere proattivi significa non aspettare che le cose accadano, ma fare in modo che accadano. Questo concetto è particolarmente importante per chi si trova nella fase iniziale della propria carriera, in quanto è proprio in questo momento che si gettano le basi per il proprio futuro professionale. I primi anni della carriera, così come i primi anni di vita, sono quelli in cui si impara di più. È in questa fase che si acquisiscono le competenze tecniche e non tecniche che saranno fondamentali per il proprio futuro professionale. È in questo momento che si impara a lavorare in team, a risolvere i problemi, a comunicare con gli altri, a gestire il tempo e le risorse a propria disposizione. Per gli entry level, coloro i quali hanno appena avviato la propria carriera professionale, è importante scegliere la prima azienda nel modo giusto. Spesso si tende a sottovalutare l'importanza di questa decisione, ma è proprio da qui che si parte per costruire il proprio futuro professionale. È importante scegliere un'azienda che offra un ambiente di lavoro stimolante, che permetta di crescere professionalmente e che dia la possibilità di mettersi alla prova. In questa fase è molto importante riconsiderare le proprie priorità a breve termine per puntare quasi esclusivamente su quelle a lungo termine. -Per anni, soprattutto a causa di influenze dettate dai tempi passati, siamo stati abituati a pensare al luogo di lavoro come un posto in cui scambiare il proprio tempo per denaro. La retorica degli ultimi cinquant'anni ci ha portato a credere che il lavoro fosse un obbligo, un dovere, una necessità. Ma la realtà è ben diversa. Il lavoro è una scelta, una scelta che facciamo ogni giorno, una scelta che ci permette di esprimere noi stessi, di realizzarci, di crescere. Ecco perché è importante scegliere con cura il luogo in cui lavorare, perché è da qui che parte tutto. +Per anni, soprattutto a causa di influenze dettate dai tempi passati, siamo stati abituati a pensare al luogo di lavoro come ad un posto in cui scambiare il proprio tempo per denaro. La retorica degli ultimi cinquant'anni ci ha portato a credere che il lavoro fosse un obbligo, un dovere, una necessità. Ma la realtà è ben diversa. Il lavoro è una scelta, una scelta che facciamo ogni giorno e che ci permette di esprimere noi stessi, di realizzarci, di crescere. Ecco perché è importante scegliere con cura il luogo in cui lavorare, perché è da qui che parte tutto. In generale, durante la scelta di un posto di lavoro, mettiamo sul piatto della bilancia diversi aspetti, e tendiamo ad attribuire un peso a ognuno di essi. La retribuzione, e aggiungerei la flessibilità sulla modalità di lavoro, spesso giocano un ruolo fondamentale nello spostare l'ago della bilancia. Ma è importante non dimenticare che ci sono altri aspetti che possono fare la differenza, soprattutto se stiamo per varcare per la prima volta la soglia di un'azienda. Un lavoro non è per sempre, i nostri gusti, le nostre abitudini, i nostri modi di fare possono cambiare, e con essi anche le nostre priorità. Nei primi tre mesi di carriera il tuo obiettivo principale dovrebbe essere quello di farti conoscere e conoscere l'azienda nella quale sei dentro. Questo periodo di solito coincide con il periodo di prova, e quindi è importante capire se siete fatti per stare insieme. Non aver paura di fuggire se il tuo sesto senso ti dice che non è il posto giusto per te. Non è un fallimento, è solo un'altra tappa del tuo percorso. E ricorda, non è mai troppo tardi per cambiare strada. In questo momento l'obiettivo principale è imparare, imparare, imparare. Non preoccuparti troppo di fare errori, è normale, è umano. -Nei primi sei mesi di carriera dovrai diventare un detective, devi cercare di acquisire quante più informazioni possibili sia su come lavora l'azienda, e sia sul dominio applicativo della stessa. Ci sono realtà dove il dominio applicativo è molto complesso, e richiede tempo per essere assimilato. Non aver paura di chiedere, non aver paura di fare domande, non aver paura di sbagliare. Ricorda, sei lì per imparare, non per dimostrare quanto vali. In questa fase dovresti riuscire a identificare il capobranco del tuo team, colui o colei che ha più esperienza, e che può aiutarti a crescere. Ecco, ti ci devi attaccare come una cozza al suo scoglio. +Nei primi sei mesi di carriera dovrai diventare un detective, dovresti cercare di acquisire quante più informazioni possibili sia su come lavora l'azienda, e sia sul dominio applicativo della stessa. Ci sono realtà dove il dominio applicativo è molto complesso, e richiede tempo per essere assimilato. Non aver paura di chiedere, non aver paura di fare domande, non aver paura di sbagliare. Ricorda, sei lì per imparare, non per dimostrare quanto vali. In questa fase dovresti riuscire a identificare il capobranco del tuo team, colui o colei che ha più esperienza, e che può aiutarti a crescere. Ecco, ti ci dovresti attaccare come una cozza al suo scoglio. Nei tuoi primi nove mesi di carriera dovresti dimenticare totalmente il tuo stipendio. Questo non significa che non dovrai preoccuparti di come pagare l'affitto o la spesa, ma che non dovresti permettere allo stesso di diventare un'etichetta per il tuo livello di professionalità. Non lavorare mai gratis, piuttosto meglio farsi assegnare un rimborso spese, il lavoro, seppur non di esperienza, va sempre ricompensato. Evita di accettare lavori superpagati ma senza prospettive o che non ti soddisfano, la gratificazione economica dura poco e soprattutto non è considerata un investimento a lungo termine. Durante il primo anno di carriera ti ritroverai a svolgere task sia semplici che leggermente più complessi. Da junior, è molto probabile che il tuo lavoro sarà spesso di supporto, e che ti troverai a lavorare su task che non richiedono particolari competenze tecniche. Questo non significa che il tuo lavoro non sia importante, anzi. Il tuo lavoro è fondamentale per il buon funzionamento del team, e per la riuscita del progetto. Non sottovalutare mai il tuo ruolo, e non permettere a nessuno di farlo. Se ti trovi in un ambiente in cui il tuo lavoro non è riconosciuto, è il momento di cambiare aria. Ricorda, il tuo lavoro è importante, e tu sei importante. -In questo periodo, spesso e volentieri ti capiterà di svolgere attività nelle quali non ti senti a tuo agio, o che non ti piacciono, o peggio, che per un motivo o per l'altro, non riuscirai a risolvere. Qui la contemporanea presenza e assenza di informazione giocheranno un ruolo fondamentale nello sviluppo delle tue abilità di problem solving. Cerca di attivare la modalità esplorativa nel tuo cervello, poniti domande, e soprattutto falle agli altri. È importante imparare a porre le domande in modo da mantenere attiva la modalità esplorativa. Cerca di desistere dal chiedere la soluzione: un cervello in fase di stress positivo è un cervello che impara. -Un'altra importante fase che dovrai imparare a sfruttare al meglio per massimizzare l'apprendimento è quella di pair programming e di code review. Cerca insistentemente di lavorare a stretto contatto con i tuoi colleghi, e cerca di farti revisionare il codice il più possibile. Questo ti permetterà di imparare nuove tecniche, nuovi pattern, e soprattutto ti permetterà di capire come lavorano gli altri. Ricorda, il pair programming e le code review sono due attività fondamentali per la crescita professionale di un developer, e non dovrebbero mai essere trascurate. Cerca di mettere da parte l'idea che il giudizio degli altri possa essere negativo sulla tua persona, e cerca di accettare le critiche come un'opportunità di crescita. Ricorda, il tuo obiettivo è imparare, non dimostrare quanto vali. +In questo periodo, spesso e volentieri ti capiterà di svolgere attività nelle quali non ti senti a tuo agio, o che non ti piacciono, o peggio, che per un motivo o per l'altro, non riuscirai a risolvere. Qui la contemporanea presenza e assenza di informazione giocheranno un ruolo fondamentale nello sviluppo delle tue abilità di problem solving. Cerca di attivare la modalità esplorativa nel tuo cervello, poniti domande, e soprattutto falle agli altri. È importante imparare a porre le domande in modo da mantenere attiva la modalità esplorativa. Cerca di desistere dal chiedere di fornirti la soluzione: un cervello in fase di stress positivo è un cervello che impara. +Un altro importante momento che dovrai imparare a sfruttare al meglio per massimizzare l'apprendimento è quello di pair programming e di code review. Cerca insistentemente di lavorare a stretto contatto con i tuoi colleghi, e cerca di farti revisionare il codice il più possibile. Questo ti permetterà di imparare nuove tecniche, nuovi pattern, e soprattutto ti permetterà di capire come lavorano gli altri. Ricorda, il pair programming e le code review sono due attività fondamentali per la crescita professionale di un developer, e non dovrebbero mai essere trascurate. Cerca di mettere da parte l'idea che il giudizio degli altri possa essere negativo sulla tua persona, e cerca di accettare le critiche come un'opportunità di crescita. Ricorda, il tuo obiettivo è imparare, non dimostrare quanto vali. -Dopo un po' di tempo passato a lavorare in azienda, molto probabilmente individuerai una certa predilezione verso determinati processi e a maturare un certo livello di competenza verso alcune aree del dominio applicativo. Le attività di pair programming si riducono allo stretto necessario, e le sessioni di code review non impegnano troppo tempo al tuo reviewer nel suggerirti dei cambiamenti. Inizierai ad avere responsabilità diverse, e probabilmente ti troverai a dover gestire task più complessi e a dover prendere decisioni più importanti. Complimenti! Questi sono buoni indicatori che la tua professionalità sta crescendo, e che stai maturando come sviluppatore. +Dopo un po' di tempo passato a lavorare in azienda, molto probabilmente individuerai una certa predilezione verso determinati processi e maturerai un certo livello di competenza verso alcune aree del dominio applicativo. Le attività di pair programming si riducono allo stretto necessario, e le sessioni di code review non impegnano troppo tempo al tuo reviewer nel suggerirti dei cambiamenti. Inizierai ad avere responsabilità diverse, e probabilmente ti troverai a dover gestire task più complessi e a dover prendere decisioni più importanti. Complimenti! Questi sono buoni indicatori che la tua professionalità sta crescendo, e che stai maturando come sviluppatore. Quasi sicuramente le tue competenze tecniche saranno migliorate, imparerai a conoscere più nel dettaglio un linguaggio di programmazione, a saper utilizzare meglio il framework di riferimento nella tua azienda, e soprattutto a saper risolvere attività più lunghe e corpose nel minor tempo possibile utilizzando pattern e dogmi dell'ingegneria del software. +Sta accadendo qualcosa di meraviglioso e probabilmente neanche te ne sei accorto: stai diventando un middle developer. Questo è un momento molto importante nella tua carriera, perché è qui che inizierai a capire quali sono le tue reali competenze, quali sono le aree in cui dovresti migliorare, e quelle in cui vuoi specializzarti. È qui che inizierai a capire chi sei, e chi vuoi diventare. +Probabilmente sono passati due anni da quando hai iniziato a lavorare in azienda, sei sempre meno dipendente dai tuoi colleghi e colleghe che hanno più esperienza di te e inizi a prendere decisioni in autonomia. Partecipi attivamente alla vita del team di lavoro, proponi soluzioni e discuti della fattibilità delle tue idee e delle idee dei membri del tuo team. Inizi a capire che il lavoro di squadra è fondamentale per la riuscita di un progetto, e che la tua professionalità è strettamente legata a quella dei tuoi colleghi. Inizi a capire che il tuo lavoro non è solo il tuo lavoro, ma è il lavoro di tutto il team. + +E adesso che si fa? Adesso che sei un middle developer, è probabile che il tuo responsabile diretto ti premi con una promozione: più responsabilità, task via via sempre più complessi ma alla portata delle tue competenze, e soprattutto un migliore trattamento economico. Ma attenzione, non è detto che questo accada: non è detto che tu debba essere promosso per forza, tuttavia è plausibile che tu possa ambire a una promozione. In ogni caso, è importante che tu continui a lavorare sodo, a metterti in gioco, a cercare di migliorare sempre di più. La tua crescita professionale non dovrebbe mai fermarsi, e non dovrebbe mai essere condizionata da un titolo o da un compenso. La tua crescita professionale deve essere un obiettivo personale, un obiettivo che ti permetta di esprimere al meglio le tue potenzialità, e di realizzarti come professionista. +Se dentro di te senti una voce che ti comunica che "hai fatto la differenza", è il caso di organizzare una sessione con il tuo superiore per negoziare una promozione o per fissare degli obiettivi da raggiungere per ottenerla a stretto giro. Se invece non senti questa voce, è il caso di fare un passo indietro e di riflettere su cosa ti manca per sentirti realizzato come professionista. +A volte può capitare che il lavoro non sia più stimolante, e che tu senta il bisogno di cambiare aria. Questo è normale, e non è un fallimento. È solo un'altra tappa del tuo percorso professionale. Se senti che il tuo lavoro non ti soddisfa più, è il momento di cambiare. Non aver paura di fare un passo indietro, di tornare sui tuoi passi, di cambiare strada. La tua crescita professionale è un percorso personale, e solo tu puoi decidere quale strada prendere. +In questo caso puoi ricominciare a fare colloqui, ed è in questo particolare momento che riuscirai a ricevere feedback con molta più frequenza rispetto a quando sei in azienda. Fare colloqui è un ottimo strumento per avere un parere esterno sul tuo livello di competenza, e per capire quali sono le aree in cui potresti migliorare. + +E dopo? Dopo lo sai solo tu. Non esiste il manuale della carriera perfetta. Ogni percorso professionale è diverso e degno di essere vissuto. L'importante è non smettere mai di crescere, di imparare, di mettersi in gioco. L'importante è non smettere mai di essere curiosi, di voler sapere di più, di voler fare di più. L'importante è non smettere mai di essere un junior, di voler imparare, di voler crescere. L'importante è non smettere mai di essere te stesso, di voler essere la migliore versione di te stesso. L'importante è non smettere mai di essere un developer. + +## La sindrome della pappa pronta (o da eccesso di informazione) WIP From 1035fd134bad36780c0a0ccc11e623b6bebadd3f Mon Sep 17 00:00:00 2001 From: Angelo Cassano Date: Wed, 18 Sep 2024 18:09:05 +0200 Subject: [PATCH 06/18] feat: carriera junior - completata sezione La sindrome della pappa pronta --- docs/it/carriera-junior.md | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 2125e7d8..2fa5ec76 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -125,8 +125,26 @@ Se dentro di te senti una voce che ti comunica che "hai fatto la differenza", è A volte può capitare che il lavoro non sia più stimolante, e che tu senta il bisogno di cambiare aria. Questo è normale, e non è un fallimento. È solo un'altra tappa del tuo percorso professionale. Se senti che il tuo lavoro non ti soddisfa più, è il momento di cambiare. Non aver paura di fare un passo indietro, di tornare sui tuoi passi, di cambiare strada. La tua crescita professionale è un percorso personale, e solo tu puoi decidere quale strada prendere. In questo caso puoi ricominciare a fare colloqui, ed è in questo particolare momento che riuscirai a ricevere feedback con molta più frequenza rispetto a quando sei in azienda. Fare colloqui è un ottimo strumento per avere un parere esterno sul tuo livello di competenza, e per capire quali sono le aree in cui potresti migliorare. -E dopo? Dopo lo sai solo tu. Non esiste il manuale della carriera perfetta. Ogni percorso professionale è diverso e degno di essere vissuto. L'importante è non smettere mai di crescere, di imparare, di mettersi in gioco. L'importante è non smettere mai di essere curiosi, di voler sapere di più, di voler fare di più. L'importante è non smettere mai di essere un junior, di voler imparare, di voler crescere. L'importante è non smettere mai di essere te stesso, di voler essere la migliore versione di te stesso. L'importante è non smettere mai di essere un developer. +E dopo? Dopo lo sai solo tu. Non esiste il manuale della carriera perfetta. Ogni percorso professionale è diverso e degno di essere vissuto. L'importante è non smettere mai di crescere, di imparare, di mettersi in gioco. L'importante è non smettere mai di essere curiosi, di voler sapere di più, di voler fare di più. L'importante è non smettere mai di essere un junior. L'importante è non smettere mai di essere te stesso, di voler essere la migliore versione di te stesso. L'importante è non smettere mai di essere un developer. -## La sindrome della pappa pronta (o da eccesso di informazione) +## La sindrome della pappa pronta -WIP +"Ciò che dobbiamo imparare a fare, lo impariamo facendolo." (Aristotele) + +Credo che questa frase di Aristotele sia una delle più belle e vere che io abbia mai letto. Eppure, nonostante la sua verità, spesso ci troviamo a cercare la soluzione ad un problema senza dedicare la giusta quantità di attenzione al perché. Così come il titolo di uno dei più famosi libri dello scrittore e saggista Simon Sinek (Partire dal Perché) ci suggerisce, è importante capire il motivo per cui stiamo facendo qualcosa, prima di passare al come e al cosa. +Questo comportamento, che potremmo definire come "sindrome della pappa pronta" o "da eccesso di informazione", è molto diffuso tra i giovani sviluppatori, e spesso è la causa principale di molti problemi che si presentano durante la fase di crescita professionale. + +Viviamo in un mondo in cui l'informazione è ovunque, e spesso ci troviamo a dover fare i conti con un eccesso di nozioni che ci confondono e ci distraggono. La nostra soglia dell'attenzione è sempre più bassa, e spesso ci troviamo a saltare da un argomento all'altro senza approfondire nulla. Inoltre, con il diffondersi delle intelligenze artificiali generative, non potremo far altro che continuare ad impigrirci, a delegare sempre di più il pensiero critico e la risoluzione dei problemi a macchine sempre più potenti e sempre più intelligenti. +Intendiamoci, non sono assolutamente contrario ai vantaggi che tutti questi strumenti possono portare all'interno della nostra vita quotidiana e professionale, ma credo che sia importante non dimenticare che la nostra mente è la nostra risorsa più preziosa, e che dobbiamo fare in modo di mantenerla sempre attiva e sempre pronta ad affrontare le sfide che ci si presentano. +Ecco perché è importante imparare a fare le cose, e non solo a leggere o a guardare qualcun altro farle. + +Se vuoi ambire ad una carriera professionale di successo, devi imparare a lavorare con il pensiero critico sempre attivo e a porti sempre delle domande, sia quando ti si presentano dei problemi e sia quando ti vengono proposte delle soluzioni. +Uno degli strumenti più potenti che ogni sviluppatore ha a disposizione è la community. La community è un luogo in cui puoi trovare risposte ai tuoi dubbi, soluzioni ai tuoi problemi, e soprattutto, persone con cui condividere le tue esperienze e le tue conoscenze. +Se c'è una cosa che dovresti fare fin da subito, è non prendere mai per oro colato quello che ti viene detto, ma cercare sempre di capire il perché di una cosa, e di metterla in discussione. Solo così potrai crescere professionalmente, e diventare un developer migliore. + +Fra le community di sviluppatori più utilizzate e conosciute ci sono sicuramente Stack Overflow, GitHub, Reddit, e molti altri. Molti sviluppatori di primo pelo si affidano a queste piattaforme per cercare risposte alle loro domande, e spesso e volentieri quando le trovano, si limitano a copia-incollare la soluzione o lo snippet di codice della risposta più votata, senza concedersi il tempo di capire il perché di quella soluzione, e di metterla in discussione. +Questo modus operandi è molto pericoloso, perché ti porta a non imparare nulla, a non crescere professionalmente, e soprattutto ad impigrire la tua mente. Molti sviluppatori, specie se con poca esperienza, sono piuttosto insicuri delle proprie capacità, e peccano della giusta maturità nell'accettare i propri limiti sulla propria conoscenza. +Spesso e volentieri questo atteggiamento viene messo in atto per impressionare il team di recruiting quando si cerca un nuovo lavoro, ed ha lo stesso valore di quando si copia il compito del compagno di banco a scuola. Ha davvero senso fare una cosa del genere? Come saremo in grado di affrontare un colloquio di lavoro se non siamo in grado di rispondere alle domande che ci vengono poste? E se non siamo in grado di rispondere, come possiamo sperare di ottenere quel lavoro? + +La soluzione a questo problema è molto semplice: basta dedicare il giusto tempo a capire il perché di una cosa, e a metterla in discussione. L'imparare facendo (in inglese altresì noto come learning-by-doing) è uno dei modi migliori per acquisire nuove competenze, e per crescere professionalmente. +Se sei un junior developer, non temere di star perdendo tempo. Impara a destinare una buona quantità di tempo alla tua formazione prima di pensare al risultato finale. Così come detto nella sezione "Come crescere professionalmente", in questo momento della tua carriera è molto più importante puntare ai risultati che potresti ottenere a lungo termine, e l'apprendimento è uno di questi. From f729699cf0babe7531283645cdea3b923e35e1bb Mon Sep 17 00:00:00 2001 From: Angelo Cassano Date: Wed, 18 Sep 2024 23:35:08 +0200 Subject: [PATCH 07/18] Apply suggestions from code review Co-authored-by: Michael Di Prisco --- docs/it/carriera-junior.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 2fa5ec76..9232a1b0 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -108,12 +108,12 @@ Per gli entry level, coloro i quali hanno appena avviato la propria carriera pro Per anni, soprattutto a causa di influenze dettate dai tempi passati, siamo stati abituati a pensare al luogo di lavoro come ad un posto in cui scambiare il proprio tempo per denaro. La retorica degli ultimi cinquant'anni ci ha portato a credere che il lavoro fosse un obbligo, un dovere, una necessità. Ma la realtà è ben diversa. Il lavoro è una scelta, una scelta che facciamo ogni giorno e che ci permette di esprimere noi stessi, di realizzarci, di crescere. Ecco perché è importante scegliere con cura il luogo in cui lavorare, perché è da qui che parte tutto. In generale, durante la scelta di un posto di lavoro, mettiamo sul piatto della bilancia diversi aspetti, e tendiamo ad attribuire un peso a ognuno di essi. La retribuzione, e aggiungerei la flessibilità sulla modalità di lavoro, spesso giocano un ruolo fondamentale nello spostare l'ago della bilancia. Ma è importante non dimenticare che ci sono altri aspetti che possono fare la differenza, soprattutto se stiamo per varcare per la prima volta la soglia di un'azienda. Un lavoro non è per sempre, i nostri gusti, le nostre abitudini, i nostri modi di fare possono cambiare, e con essi anche le nostre priorità. -Nei primi tre mesi di carriera il tuo obiettivo principale dovrebbe essere quello di farti conoscere e conoscere l'azienda nella quale sei dentro. Questo periodo di solito coincide con il periodo di prova, e quindi è importante capire se siete fatti per stare insieme. Non aver paura di fuggire se il tuo sesto senso ti dice che non è il posto giusto per te. Non è un fallimento, è solo un'altra tappa del tuo percorso. E ricorda, non è mai troppo tardi per cambiare strada. In questo momento l'obiettivo principale è imparare, imparare, imparare. Non preoccuparti troppo di fare errori, è normale, è umano. -Nei primi sei mesi di carriera dovrai diventare un detective, dovresti cercare di acquisire quante più informazioni possibili sia su come lavora l'azienda, e sia sul dominio applicativo della stessa. Ci sono realtà dove il dominio applicativo è molto complesso, e richiede tempo per essere assimilato. Non aver paura di chiedere, non aver paura di fare domande, non aver paura di sbagliare. Ricorda, sei lì per imparare, non per dimostrare quanto vali. In questa fase dovresti riuscire a identificare il capobranco del tuo team, colui o colei che ha più esperienza, e che può aiutarti a crescere. Ecco, ti ci dovresti attaccare come una cozza al suo scoglio. +Nei primi tre mesi di carriera il tuo obiettivo principale dovrebbe essere quello di farti conoscere e conoscere l'azienda nella quale ti trovi. Questo periodo di solito coincide con il periodo di prova, e quindi è importante capire se siete fatti per stare insieme. Non aver paura di fuggire se il tuo sesto senso ti dice che non è il posto giusto per te. Non è un fallimento, è solo un'altra tappa del tuo percorso. E ricorda, non è mai troppo tardi per cambiare strada. In questo momento l'obiettivo principale è imparare, imparare, imparare. Non preoccuparti troppo di fare errori, è normale, è umano. +Nei primi sei mesi di carriera dovrai diventare un detective, cercando di acquisire quante più informazioni possibili sia su come lavora l'azienda, e sia sul dominio applicativo della stessa. Ci sono realtà dove il dominio applicativo è molto complesso, e richiede tempo per essere assimilato. Non aver paura di chiedere, non aver paura di fare domande, non aver paura di sbagliare. Ricorda, sei lì per imparare, non per dimostrare quanto vali. In questa fase dovresti riuscire a identificare il capobranco del tuo team, colui o colei che ha più esperienza, e che può aiutarti a crescere. Ecco, ti ci dovresti attaccare come una cozza al suo scoglio. Nei tuoi primi nove mesi di carriera dovresti dimenticare totalmente il tuo stipendio. Questo non significa che non dovrai preoccuparti di come pagare l'affitto o la spesa, ma che non dovresti permettere allo stesso di diventare un'etichetta per il tuo livello di professionalità. Non lavorare mai gratis, piuttosto meglio farsi assegnare un rimborso spese, il lavoro, seppur non di esperienza, va sempre ricompensato. Evita di accettare lavori superpagati ma senza prospettive o che non ti soddisfano, la gratificazione economica dura poco e soprattutto non è considerata un investimento a lungo termine. Durante il primo anno di carriera ti ritroverai a svolgere task sia semplici che leggermente più complessi. Da junior, è molto probabile che il tuo lavoro sarà spesso di supporto, e che ti troverai a lavorare su task che non richiedono particolari competenze tecniche. Questo non significa che il tuo lavoro non sia importante, anzi. Il tuo lavoro è fondamentale per il buon funzionamento del team, e per la riuscita del progetto. Non sottovalutare mai il tuo ruolo, e non permettere a nessuno di farlo. Se ti trovi in un ambiente in cui il tuo lavoro non è riconosciuto, è il momento di cambiare aria. Ricorda, il tuo lavoro è importante, e tu sei importante. In questo periodo, spesso e volentieri ti capiterà di svolgere attività nelle quali non ti senti a tuo agio, o che non ti piacciono, o peggio, che per un motivo o per l'altro, non riuscirai a risolvere. Qui la contemporanea presenza e assenza di informazione giocheranno un ruolo fondamentale nello sviluppo delle tue abilità di problem solving. Cerca di attivare la modalità esplorativa nel tuo cervello, poniti domande, e soprattutto falle agli altri. È importante imparare a porre le domande in modo da mantenere attiva la modalità esplorativa. Cerca di desistere dal chiedere di fornirti la soluzione: un cervello in fase di stress positivo è un cervello che impara. -Un altro importante momento che dovrai imparare a sfruttare al meglio per massimizzare l'apprendimento è quello di pair programming e di code review. Cerca insistentemente di lavorare a stretto contatto con i tuoi colleghi, e cerca di farti revisionare il codice il più possibile. Questo ti permetterà di imparare nuove tecniche, nuovi pattern, e soprattutto ti permetterà di capire come lavorano gli altri. Ricorda, il pair programming e le code review sono due attività fondamentali per la crescita professionale di un developer, e non dovrebbero mai essere trascurate. Cerca di mettere da parte l'idea che il giudizio degli altri possa essere negativo sulla tua persona, e cerca di accettare le critiche come un'opportunità di crescita. Ricorda, il tuo obiettivo è imparare, non dimostrare quanto vali. +Un altro importante momento che dovrai imparare a sfruttare al meglio per massimizzare l'apprendimento è quello di pair programming e di code review. Cerca insistentemente di lavorare a stretto contatto con i tuoi colleghi, e fai revisionare il tuo codice ogni volta che puoi. Questo ti permetterà di imparare nuove tecniche, nuovi pattern, e soprattutto ti permetterà di capire come lavorano gli altri. Ricorda, il pair programming e le code review sono due attività fondamentali per la crescita professionale di un developer, e non dovrebbero mai essere trascurate. Cerca di mettere da parte l'idea che il giudizio degli altri possa essere negativo sulla tua persona, e cerca di accettare le critiche come un'opportunità di crescita. Ricorda, il tuo obiettivo è imparare, non dimostrare quanto vali. Dopo un po' di tempo passato a lavorare in azienda, molto probabilmente individuerai una certa predilezione verso determinati processi e maturerai un certo livello di competenza verso alcune aree del dominio applicativo. Le attività di pair programming si riducono allo stretto necessario, e le sessioni di code review non impegnano troppo tempo al tuo reviewer nel suggerirti dei cambiamenti. Inizierai ad avere responsabilità diverse, e probabilmente ti troverai a dover gestire task più complessi e a dover prendere decisioni più importanti. Complimenti! Questi sono buoni indicatori che la tua professionalità sta crescendo, e che stai maturando come sviluppatore. Quasi sicuramente le tue competenze tecniche saranno migliorate, imparerai a conoscere più nel dettaglio un linguaggio di programmazione, a saper utilizzare meglio il framework di riferimento nella tua azienda, e soprattutto a saper risolvere attività più lunghe e corpose nel minor tempo possibile utilizzando pattern e dogmi dell'ingegneria del software. @@ -142,7 +142,7 @@ Se vuoi ambire ad una carriera professionale di successo, devi imparare a lavora Uno degli strumenti più potenti che ogni sviluppatore ha a disposizione è la community. La community è un luogo in cui puoi trovare risposte ai tuoi dubbi, soluzioni ai tuoi problemi, e soprattutto, persone con cui condividere le tue esperienze e le tue conoscenze. Se c'è una cosa che dovresti fare fin da subito, è non prendere mai per oro colato quello che ti viene detto, ma cercare sempre di capire il perché di una cosa, e di metterla in discussione. Solo così potrai crescere professionalmente, e diventare un developer migliore. -Fra le community di sviluppatori più utilizzate e conosciute ci sono sicuramente Stack Overflow, GitHub, Reddit, e molti altri. Molti sviluppatori di primo pelo si affidano a queste piattaforme per cercare risposte alle loro domande, e spesso e volentieri quando le trovano, si limitano a copia-incollare la soluzione o lo snippet di codice della risposta più votata, senza concedersi il tempo di capire il perché di quella soluzione, e di metterla in discussione. +Fra le community di sviluppatori più utilizzate e conosciute ci sono sicuramente Stack Overflow, GitHub, Reddit, e molte altre. Chi si trova alle prime armi si affida a queste piattaforme per cercare risposte alle proprie domande, e spesso e volentieri quando le trova, si limita a copia-incollare la soluzione o lo _snippet_ di codice della risposta più votata, senza concedersi il tempo di capire il perché di quella soluzione, e di metterla in discussione. Questo modus operandi è molto pericoloso, perché ti porta a non imparare nulla, a non crescere professionalmente, e soprattutto ad impigrire la tua mente. Molti sviluppatori, specie se con poca esperienza, sono piuttosto insicuri delle proprie capacità, e peccano della giusta maturità nell'accettare i propri limiti sulla propria conoscenza. Spesso e volentieri questo atteggiamento viene messo in atto per impressionare il team di recruiting quando si cerca un nuovo lavoro, ed ha lo stesso valore di quando si copia il compito del compagno di banco a scuola. Ha davvero senso fare una cosa del genere? Come saremo in grado di affrontare un colloquio di lavoro se non siamo in grado di rispondere alle domande che ci vengono poste? E se non siamo in grado di rispondere, come possiamo sperare di ottenere quel lavoro? From c8ba49c275356ad909ceb14e90462b3b448b0a0d Mon Sep 17 00:00:00 2001 From: Angelo Cassano Date: Thu, 19 Sep 2024 10:04:04 +0200 Subject: [PATCH 08/18] fix: carriera junior - corretti accenti --- docs/it/carriera-junior.md | 68 +++++++++++++++++++------------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 9232a1b0..ef732bdc 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -2,100 +2,100 @@ ## Introduzione -All'interno di questo libro sono stati affrontati in diverse forme molti dei tecnicismi che fanno parte del mestiere di chi sviluppa, l'obiettivo di questo libro peró non é parlare di devs solamente come artigiani/e del software ma anche in modo piú generale come risorse umane. +All'interno di questo libro sono stati affrontati in diverse forme molti dei tecnicismi che fanno parte del mestiere di chi sviluppa, l'obiettivo di questo libro però non è parlare di devs solamente come artigiani/e del software ma anche in modo più generale come risorse umane. -Sono presenti infatti diversi capitoli pubblicati o in stesura che parlano del modo in cui formarsi, il significato di questa professione o i percorsi possibili di carriera e che quindi affrontano l'aspetto piú "personale" e "lavorativo"di questo mestiere. +Sono presenti infatti diversi capitoli pubblicati o in stesura che parlano del modo in cui formarsi, il significato di questa professione o i percorsi possibili di carriera e che quindi affrontano l'aspetto più "personale" e "lavorativo" di questo mestiere. -L'obiettivo di questo capitolo é descrivere per noi cosa significa in linea generale essere Junior Developer, esplorare le pratiche giornaliere per poter crescere e collaborare in modo sano in un team e infine il percorso per crescere di livello e non solo, il fine é raccontare anche quanto questa fase della carriera possa essere complessa oltre che delicata e fondamentale per il futuro, a seconda di come viene affrontata. +L'obiettivo di questo capitolo è descrivere per noi cosa significa in linea generale essere Junior Developer, esplorare le pratiche giornaliere per poter crescere e collaborare in modo sano in un team e infine il percorso per crescere di livello e non solo, il fine è raccontare anche quanto questa fase della carriera possa essere complessa oltre che delicata e fondamentale per il futuro, a seconda di come viene affrontata. ## L'identikit di Junior Dev -Come possiamo identificare un/a Junior Developer? Spoiler: non é semplice. +Come possiamo identificare un/a Junior Developer? Spoiler: non è semplice. -A seconda dei panni che si stanno indossando (es. dev, recruiter, team leader, coach...) questo ruolo puó assumere molteplici forme e declinazioni che aumentano esponenzialmente a seconda delle tipologie e delle dimensioni delle aziende, oppure se della categoria di consulenza o di prodotto e anche ad esempio se si é impiegati in ambito front-end o back-end. +A seconda dei panni che si stanno indossando (es. dev, recruiter, team leader, coach...) questo ruolo può assumere molteplici forme e declinazioni che aumentano esponenzialmente a seconda delle tipologie e delle dimensioni delle aziende, oppure se della categoria di consulenza o di prodotto e anche ad esempio se si è impiegati in ambito front-end o back-end. -Anche affidandoci ad internet per trovare una definizione le sfumature che emergono sono diverse, potremmo classificare chi sviluppa in base all'età (ad oggi non é piú di tanto un indice di esperienza), in base agli studi e da quanto tempo siano stati completati o anche in base agli anni di esperienza in una determinata azienda o in generale di carriera. +Anche affidandoci ad internet per trovare una definizione le sfumature che emergono sono diverse, potremmo classificare chi sviluppa in base all'età (ad oggi non è più di tanto un indice di esperienza), in base agli studi e da quanto tempo siano stati completati o anche in base agli anni di esperienza in una determinata azienda o in generale di carriera. -Per creare un piano comune che ci permetta di esplorare facilmente l'argomento e fissare quello che per noi é il fulcro del capitolo, la definizione di Junior Dev per noi é la seguente: +Per creare un piano comune che ci permetta di esplorare facilmente l'argomento e fissare quello che per noi è il fulcro del capitolo, la definizione di Junior Dev per noi è la seguente: -> Una persona di una qualsiasi età, proveniente da qualsivoglia ambito di studi e che ha seguito un percorso di carriera di un qualsiasi tipo che peró é in grado di leggere ed interpretare i requisiti di un possibile artefatto software o di una sua parte e ha le competenze tecniche per riprodurlo, non in completa autonomia. +> Una persona di una qualsiasi età, proveniente da qualsivoglia ambito di studi e che ha seguito un percorso di carriera di un qualsiasi tipo che però è in grado di leggere ed interpretare i requisiti di un possibile artefatto software o di una sua parte e ha le competenze tecniche per riprodurlo, non in completa autonomia. -Per noi la chiave di volta é questa, non una delimitazione basata su aspetti come i titoli di studio, gli anni di esperienza o di lavoro ma un'identificazione tramite la capacità di scrivere software, con una particolare attenzione al livello di autonomia. +Per noi la chiave di volta è questa, non una delimitazione basata su aspetti come i titoli di studio, gli anni di esperienza o di lavoro ma un'identificazione tramite la capacità di scrivere software, con una particolare attenzione al livello di autonomia. Se volessimo schematizzare e fare qualche esempio a sostegno di questa tesi: | Tesi | Antitesi | | ---------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| "Ho 10 anni di carriera alle spalle quindi non sono piú un/a Junior Dev" | Il tuo apprendimento é stato efficace in questi anni? Sei autonoma/o nel tuo ambito? In quali ambiti hai lavorato? Come possiamo misurare la qualità del tuo lavoro sapendo solo che hai 10 anni di carriera alle spalle? Potresti essere stagnante da tempo e non essere aggiornato/a. | +| "Ho 10 anni di carriera alle spalle quindi non sono più un/a Junior Dev" | Il tuo apprendimento è stato efficace in questi anni? Sei autonoma/o nel tuo ambito? In quali ambiti hai lavorato? Come possiamo misurare la qualità del tuo lavoro sapendo solo che hai 10 anni di carriera alle spalle? Potresti essere stagnante da tempo e non essere aggiornato/a. | | "Ho una laurea o un dottorato in Ingegneria o in Informatica" | Che tipo di competenze hai assorbito durante il percorso di studi? Come le hai applicate nel tuo lavoro? Sei autonomo/a grazie al tuo percorso di studi? | | "Come esperienza lavorativa hai solamente un anno nella Azienda Esempio Srl, sarai certamente Junior Dev!" | Potresti invece aver praticato in autonomia in side-projects o potresti aver contribuito a progetti FOSS le tue abilità nello scrivere codice. | -| "Ho 40 anni, non posso essere classificata come Junior Dev " | L'età é solamente un numero, non fornisce informazioni sul tuo background o il percorso aziendale che hai compiuto. | +| "Ho 40 anni, non posso essere classificata come Junior Dev " | L'età è solamente un numero, non fornisce informazioni sul tuo background o il percorso aziendale che hai compiuto. | | "Con una laurea in Psicologia non puoi che essere un/a Junior Dev" | Alcuni background contribuiscono a migliorare le tue soft-skills e soprattutto ti forniscono un punto di vista diverso e come per l'esempio dell'esperienza lavorativa, potresti aver programmato nel tempo libero per anni, come passione e aver appreso abbastanza. | -È importante peró fare una precisazione, fermo restando che una persona puó sviluppare e apprendere per passione tutte le capacità di programmare che vuole, lavorare in team é differente e lo é soprattutto perché si lavora all'interno di un'azienda, con le sue regole, i suoi tools e le sue pratiche. +È importante però fare una precisazione, fermo restando che una persona può sviluppare e apprendere per passione tutte le capacità di programmare che vuole, lavorare in team è differente e lo è soprattutto perché si lavora all'interno di un'azienda, con le sue regole, i suoi tools e le sue pratiche. -Sicuramente ci sono fattori che non possono mancare in un/a dev con molta esperienza, come i test, l'attenzione alla security o le performance ottimali di un applicativo insieme alla sua architettura, che sono tutti aspetti piú complessi da assorbire in autonomia come Junior Dev, anche se la passione e la voglia di imparare possono portarti ovunque. +Sicuramente ci sono fattori che non possono mancare in un/a dev con molta esperienza, come i test, l'attenzione alla security o le performance ottimali di un applicativo insieme alla sua architettura, che sono tutti aspetti più complessi da assorbire in autonomia come Junior Dev, anche se la passione e la voglia di imparare possono portarti ovunque. -Potresti essere contributor di progetti FOSS da anni o potresti aver lavorato per molto in un'azienda ma arrivata/o in un'azienda nuova é facile trovarsi spaesati nonostante l'esperienza, ricadendo quindi nella figura di "Junior" in un certo senso, a prescindere dalla sfida da affrontare. +Potresti essere contributor di progetti FOSS da anni o potresti aver lavorato per molto in un'azienda ma arrivata/o in un'azienda nuova è facile trovarsi spaesati nonostante l'esperienza, ricadendo quindi nella figura di "Junior" in un certo senso, a prescindere dalla sfida da affrontare. -Magari in qualche modo hai curato in autonomia o in un team gli aspetti piú complessi citati sopra come security e performance ad esempio, iniziando da zero in una nuova realtà aziendale peró tutto potrebbe sembrarti diverso e nuovo e come ribadito in diversi capitoli di questo nostro libro open, noi devs non finiamo mai di imparare, ricordandoci che chiunque potrebbe avere qualcosa da insegnarci, anche chi ha iniziato da poco. +Magari in qualche modo hai curato in autonomia o in un team gli aspetti più complessi citati sopra come security e performance ad esempio, iniziando da zero in una nuova realtà aziendale però tutto potrebbe sembrarti diverso e nuovo e come ribadito in diversi capitoli di questo nostro libro open, noi devs non finiamo mai di imparare, ricordandoci che chiunque potrebbe avere qualcosa da insegnarci, anche chi ha iniziato da poco. -Questo cosa puó significare? +Questo cosa può significare? -Probabilmente che gli Junior Devs che sono dentro di noi, se pratichiamo un apprendimento continuo e costante e che segue la natura mutevole di questa professione, forse non se ne vanno mai via del tutto (e magari é anche meglio cosí). +Probabilmente che gli Junior Devs che sono dentro di noi, se pratichiamo un apprendimento continuo e costante e che segue la natura mutevole di questa professione, forse non se ne vanno mai via del tutto (e magari è anche meglio cosí). ## "L'occasione fa del Dev un Senior" Stabilito un punto fisso come definizione di Junior Dev, possiamo proseguire nell'esplorare questa figura analizzandola dal punto di vista della carriera, immaginandola come la prima fase di un percorso lavorativo. -In primis é bene stabilire che ogni sviluppatore a seconda delle esperienze, ha i suoi tempi e di conseguenza non esiste un limite di tempo già stabilito entro cui dovrai evolvere come dev e nel titolo abbiamo deliberatamente ripreso un vecchio proverbio per introdurre un concetto per noi fondamentale: nessuno, se non te stess\* puó far avanzare la tua carriera in termini di competenze. +In primis è bene stabilire che ogni sviluppatore a seconda delle esperienze, ha i suoi tempi e di conseguenza non esiste un limite di tempo già stabilito entro cui dovrai evolvere come dev e nel titolo abbiamo deliberatamente ripreso un vecchio proverbio per introdurre un concetto per noi fondamentale: nessuno, se non te stess\* può far avanzare la tua carriera in termini di competenze. Con questa espressione intendiamo evidenziare che di "occasioni" se ne presenteranno molte: la spiegazione di un concetto da parte dei colleghi, affiancamenti ad un senior, contenuti grautiti online (per il momento lasciamo perdere la formazione a pagamento), serate spese a sperimentare in autonomia oppure un nuovo progetto in azienda dove poter toccare con mano un nuovo aspetto mai affrontato. -Sta solamente a te decidere di riconoscere di non sapere e non limitarti a "non lo so" ma ponendoti nella posizione di dire "non so, ma posso imparare" che non significa che l'unica dimensione formativa sia quella del "learn-by-doing", ma é un buon inizio cosí come é un inizio anche solo osservare altri mentre fanno, porre delle domande e in seguito magari sperimentare in un ciclo continuo di apprendimento, mattoncino per mattoncino. +Sta solamente a te decidere di riconoscere di non sapere e non limitarti a "non lo so" ma ponendoti nella posizione di dire "non so, ma posso imparare" che non significa che l'unica dimensione formativa sia quella del "learn-by-doing", ma è un buon inizio cosí come è un inizio anche solo osservare altri mentre fanno, porre delle domande e in seguito magari sperimentare in un ciclo continuo di apprendimento, mattoncino per mattoncino. -Al concetto di "occasioni" peró é bene aggiungere anche i casi "limite" che nel bene nel male come vedremo rimangono comunque momenti per imparare ma andiamo per fasi. +Al concetto di "occasioni" però è bene aggiungere anche i casi "limite" che nel bene nel male come vedremo rimangono comunque momenti per imparare ma andiamo per fasi. -In caso non ti fosse mai capitato sappi che é facile uscire dal "recinto" del ruolo di Junior Dev in termini di responsabilità, soprattutto in aziende o team di piccole dimensioni, un collega é malato o si é licenziato, un progetto fuori tempo che si accavalla ad altri ed é un attimo trovarsi a gestire aspetti di un progetto che normalmente non dovremmo gestire noi e in linea di massima, non dovrebbe gestire una figura Junior. +In caso non ti fosse mai capitato sappi che è facile uscire dal "recinto" del ruolo di Junior Dev in termini di responsabilità, soprattutto in aziende o team di piccole dimensioni, un collega è malato o si è licenziato, un progetto fuori tempo che si accavalla ad altri ed è un attimo trovarsi a gestire aspetti di un progetto che normalmente non dovremmo gestire noi e in linea di massima, non dovrebbe gestire una figura Junior. -Beh per fortuna che almeno in questi casi il compenso economico aumenta... sbagliato, non é cosí che funziona. +Beh per fortuna che almeno in questi casi il compenso economico aumenta... sbagliato, non è cosí che funziona. -Potremmo dipingere il mondo come un bellissimo posto pieno di arcobaleni e di RAL commisurate alle responsabilità e ci sono sicuramente un sacco di aziende validissime e dalla struttura solida dove questi scenari sono ben lontani dalla norma, ma é comune che possano presentarsi ed é comune trovarsi in situazioni dove non si é abbastanza formati. +Potremmo dipingere il mondo come un bellissimo posto pieno di arcobaleni e di RAL commisurate alle responsabilità e ci sono sicuramente un sacco di aziende validissime e dalla struttura solida dove questi scenari sono ben lontani dalla norma, ma è comune che possano presentarsi ed è comune trovarsi in situazioni dove non si è abbastanza formati. -Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilità per le quali non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente, é bene che tu acquisisca una adeguata preparazione. +Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilità per le quali non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente, è bene che tu acquisisca una adeguata preparazione. Cosa possiamo fare per affrontare queste occasioni? Possiamo lamentarci, alzare le mani e sedersi immobili ad aspettare aiuto, oppure possiamo vedere queste situazioni, come detto in precedenza, come occasioni. -Potresti iniziare a scorrere la codebase, indagare su internet, raccogliere piú informazioni possibili, fare piccoli tentativi in codebase separate e magari ad esempio in caso di bug riprodurre le casistiche per delineare con piú precisione il problema e poi, successivamente, confrontarti con altri devs e se non hai modo di farlo, beh, puoi solo provare in autonomia. +Potresti iniziare a scorrere la codebase, indagare su internet, raccogliere più informazioni possibili, fare piccoli tentativi in codebase separate e magari ad esempio in caso di bug riprodurre le casistiche per delineare con più precisione il problema e poi, successivamente, confrontarti con altri devs e se non hai modo di farlo, beh, puoi solo provare in autonomia. -In linea di massima finché non ci sono perdite di dati in produzione, interruzioni di servizio e perdite di codice importante, possiamo agire ed é quello lo spazio dove possiamo muoverci per aumentare le nostre abilità di coding con una certa confidenza. +In linea di massima finché non ci sono perdite di dati in produzione, interruzioni di servizio e perdite di codice importante, possiamo agire ed è quello lo spazio dove possiamo muoverci per aumentare le nostre abilità di coding con una certa confidenza. Ribadiamo che queste situazioni non dovrebbero comunque essere la norma, non senza supervisione e non senza gli adeguati riferimenti in caso di problemi e in caso tu ti trovassi in questa posizione, questi sono tutti campanelli d'allarme per un'azienda che non considera la salute mentale dei suoi dipendenti e l'efficacia del proprio team. -Quello a cui dovremmo mirare é arrivare ad avere un sottile limite entro cui é salutare esplorare "terre sconosciute" per imparare, senza alcun rischio e forse non avrai sempre una RAL commisurata alle responsabilità, ma avrai nuove abilità da esercitare. +Quello a cui dovremmo mirare è arrivare ad avere un sottile limite entro cui è salutare esplorare "terre sconosciute" per imparare, senza alcun rischio e forse non avrai sempre una RAL commisurata alle responsabilità, ma avrai nuove abilità da esercitare. Se decidiamo di non cogliere nessuna delle occasione che arrivano, abbiamo il rovescio della medaglia: essere stagni nella propria posizione. -Questo per noi é un altro dei fondamenti dell'essere buoni Junior, non fossilizzarsi che in linea di massima é un termine generale per indicare che non dovrai porti dei limiti nell'apprendere, nel definire quando qualcosa é fuori dalla tua sfera d'interesse o delle tue responsabilità e soprattutto, fatto un "gradino" (ad esempio appreso un nuovo framework) é bene pensare al prossimo da superare, ritornando al concetto di apprendimento continuo. +Questo per noi è un altro dei fondamenti dell'essere buoni Junior, non fossilizzarsi che in linea di massima è un termine generale per indicare che non dovrai porti dei limiti nell'apprendere, nel definire quando qualcosa è fuori dalla tua sfera d'interesse o delle tue responsabilità e soprattutto, fatto un "gradino" (ad esempio appreso un nuovo framework) è bene pensare al prossimo da superare, ritornando al concetto di apprendimento continuo. -Anche in questo caso peró dobbiamo avvisarti, qui c'é un ulteriore punto fondamentale che é bene ricordare come Junior Dev ma é una costante nella carriera dei devs: attenzione alle tecnologie nuove. +Anche in questo caso però dobbiamo avvisarti, qui c'è un ulteriore punto fondamentale che è bene ricordare come Junior Dev ma è una costante nella carriera dei devs: attenzione alle tecnologie nuove. -Spesso ti capiterà di veder persone che gridano che il framework, il linguaggio o la tecnologia che stai usando stanno morendo e che é bene imparare la nuovissima tecnologia di cui invece sono dei sostenitori o a cui hanno contribuito. -In realtà potremmo vedere molti di questi esempi grazie all'IA, dello stampo "Inutile imparare a programmare ora!" ma la realtà dei fatti é che tutto va filtrato e analizzato singolarmente e l'aspetto fondamentale di una tecnologia da valutare é la sua robustezza e non c'é giudice piú capace del tempo, la tua stella polare dovrebbe essere la giusta flessibilità accompagnata dalla solidità e la sicurezza di aver scritto (o aver tentato il piú possibile) di scrivere codice di qualità. +Spesso ti capiterà di veder persone che gridano che il framework, il linguaggio o la tecnologia che stai usando stanno morendo e che è bene imparare la nuovissima tecnologia di cui invece sono dei sostenitori o a cui hanno contribuito. +In realtà potremmo vedere molti di questi esempi grazie all'IA, dello stampo "Inutile imparare a programmare ora!" ma la realtà dei fatti è che tutto va filtrato e analizzato singolarmente e l'aspetto fondamentale di una tecnologia da valutare è la sua robustezza e non c'è giudice più capace del tempo, la tua stella polare dovrebbe essere la giusta flessibilità accompagnata dalla solidità e la sicurezza di aver scritto (o aver tentato il più possibile) di scrivere codice di qualità. In poche parole, equilibrio tra questi aspetti: innovazione, adattabilità, ottimizzazione, sicurezza e robustezza. Non spingere la tua mente in uno stato mentale di stress o di FOMO, la paura di "perdersi qualcosa", solo perché non hai appreso l'ultima tecnologia e a sostegno di questa tesi ti segnaliamo che ci sono sistemi centrali per l'umanità che navigano con tecnologie inventati decenni fa o con codice a basso livello. -Prendi le novità cosí come vengono, se ti interessano informati e magari provale ma fai attenzione ad integrarla ovunque e concentrati sul non dimenticare i fondamenti e la forma mentale in favore di ció che arrivato ieri piuttosto che un mese fa. +Prendi le novità cosí come vengono, se ti interessano informati e magari provale ma fai attenzione ad integrarla ovunque e concentrati sul non dimenticare i fondamenti e la forma mentale in favore di ciò che arrivato ieri piuttosto che un mese fa. -Imparare, sperimentare e testare nuovi strumenti richiede tempo e sicuramente la frizione nell'assorbire una nuova tecnologia fa parte delle occasioni sopracitate ma é anche vero che forse un training di due settimane sul nuovo framework é poco sensato per ottenere semplicemente due millisecondi risparmiati durante il render di una pagina web, forse hai modi migliori di trascorrere il tuo tempo... magari contribuire all'open source :) +Imparare, sperimentare e testare nuovi strumenti richiede tempo e sicuramente la frizione nell'assorbire una nuova tecnologia fa parte delle occasioni sopracitate ma è anche vero che forse un training di due settimane sul nuovo framework è poco sensato per ottenere semplicemente due millisecondi risparmiati durante il render di una pagina web, forse hai modi migliori di trascorrere il tuo tempo... magari contribuire all'open source :) Faccenda complessa vero? -Come puoi vedere non vogliamo indorarti la pillola, la fase di carriera da Junior é parecchio delicata e composta di molteplici fattori da considerare e ancora non abbiamo esplorato cosa dovrebbe fare o non fare un Junior Dev per lavorare in modo ottimale, ci sono mille sfaccettature perché dopotutto in questa fase starai gettando le basi della tua carriera, quindi in realtà l'unico consiglio che possiamo darti é di non demordere, ora hai piú chiaro quanto puó essere complesso iniziare a sviluppare nel mondo di oggi. +Come puoi vedere non vogliamo indorarti la pillola, la fase di carriera da Junior è parecchio delicata e composta di molteplici fattori da considerare e ancora non abbiamo esplorato cosa dovrebbe fare o non fare un Junior Dev per lavorare in modo ottimale, ci sono mille sfaccettature perché dopotutto in questa fase starai gettando le basi della tua carriera, quindi in realtà l'unico consiglio che possiamo darti è di non demordere, ora hai più chiaro quanto può essere complesso iniziare a sviluppare nel mondo di oggi. ## Come crescere professionalmente From 494c109b367a45f271453cbbf5a2781c20e5e230 Mon Sep 17 00:00:00 2001 From: Angelo Cassano Date: Thu, 19 Sep 2024 19:02:59 +0200 Subject: [PATCH 09/18] Apply suggestions from code review Co-authored-by: Serena Sensini --- docs/it/carriera-junior.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index ef732bdc..d61666d1 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -99,17 +99,17 @@ Come puoi vedere non vogliamo indorarti la pillola, la fase di carriera da Junio ## Come crescere professionalmente -Partiamo dal presupposto che spesso ad essere identificati professionalmente come Junior troviamo tutta una fetta di popolazione che, per definizione, Junior non è. Dedicare un capitolo di questo libro ad ogni "livello" professionale sarebbe impensabile, ed è per questo motivo che abbiamo deciso di inglobare nella definizione di Junior anche gli sviluppatori entry level. +Partiamo dal presupposto che spesso ad essere identificati professionalmente come Junior troviamo tutta una fetta di popolazione che, per definizione, Junior non è. Dedicare un capitolo di questo libro ad ogni "livello" professionale sarebbe impensabile, ed è per questo motivo che abbiamo deciso di inglobare nella definizione di Junior anche chi sviluppa come entry level. Per questo motivo, il percorso di crescita professionale che andremo ad analizzare in questo capitolo potrà essere seguito sia da chi si sta affacciando per la prima volta al mondo del lavoro, sia da chi ha già alle spalle qualche anno di esperienza. La chiave di volta per la crescita professionale nel mondo dello sviluppo software è la proattività. Essere proattivi significa non aspettare che le cose accadano, ma fare in modo che accadano. Questo concetto è particolarmente importante per chi si trova nella fase iniziale della propria carriera, in quanto è proprio in questo momento che si gettano le basi per il proprio futuro professionale. I primi anni della carriera, così come i primi anni di vita, sono quelli in cui si impara di più. È in questa fase che si acquisiscono le competenze tecniche e non tecniche che saranno fondamentali per il proprio futuro professionale. È in questo momento che si impara a lavorare in team, a risolvere i problemi, a comunicare con gli altri, a gestire il tempo e le risorse a propria disposizione. -Per gli entry level, coloro i quali hanno appena avviato la propria carriera professionale, è importante scegliere la prima azienda nel modo giusto. Spesso si tende a sottovalutare l'importanza di questa decisione, ma è proprio da qui che si parte per costruire il proprio futuro professionale. È importante scegliere un'azienda che offra un ambiente di lavoro stimolante, che permetta di crescere professionalmente e che dia la possibilità di mettersi alla prova. In questa fase è molto importante riconsiderare le proprie priorità a breve termine per puntare quasi esclusivamente su quelle a lungo termine. +Per tutte quelle persone che hanno appena avviato la propria carriera professionale, è importante scegliere la prima azienda nel modo giusto. Spesso si tende a sottovalutare l'importanza di questa decisione, ma è proprio da qui che si parte per costruire il proprio futuro professionale. È importante scegliere un'azienda che offra un ambiente di lavoro stimolante, che permetta di crescere professionalmente e che dia la possibilità di mettersi alla prova. In questa fase è molto importante riconsiderare le proprie priorità a breve termine per puntare quasi esclusivamente su quelle a lungo termine. Per anni, soprattutto a causa di influenze dettate dai tempi passati, siamo stati abituati a pensare al luogo di lavoro come ad un posto in cui scambiare il proprio tempo per denaro. La retorica degli ultimi cinquant'anni ci ha portato a credere che il lavoro fosse un obbligo, un dovere, una necessità. Ma la realtà è ben diversa. Il lavoro è una scelta, una scelta che facciamo ogni giorno e che ci permette di esprimere noi stessi, di realizzarci, di crescere. Ecco perché è importante scegliere con cura il luogo in cui lavorare, perché è da qui che parte tutto. -In generale, durante la scelta di un posto di lavoro, mettiamo sul piatto della bilancia diversi aspetti, e tendiamo ad attribuire un peso a ognuno di essi. La retribuzione, e aggiungerei la flessibilità sulla modalità di lavoro, spesso giocano un ruolo fondamentale nello spostare l'ago della bilancia. Ma è importante non dimenticare che ci sono altri aspetti che possono fare la differenza, soprattutto se stiamo per varcare per la prima volta la soglia di un'azienda. Un lavoro non è per sempre, i nostri gusti, le nostre abitudini, i nostri modi di fare possono cambiare, e con essi anche le nostre priorità. +In generale, durante la scelta di un posto di lavoro, mettiamo sul piatto della bilancia diversi aspetti, e tendiamo ad attribuire un peso a ognuno di essi. La retribuzione, e anche la flessibilità sulla modalità di lavoro, spesso giocano un ruolo fondamentale nello spostare l'ago della bilancia, ma è importante non dimenticare che ci sono altri aspetti che possono fare la differenza, soprattutto se stiamo per varcare per la prima volta la soglia di un'azienda. Un lavoro non è per sempre, i nostri gusti, le nostre abitudini, i nostri modi di fare possono cambiare, e con essi anche le nostre priorità. Nei primi tre mesi di carriera il tuo obiettivo principale dovrebbe essere quello di farti conoscere e conoscere l'azienda nella quale ti trovi. Questo periodo di solito coincide con il periodo di prova, e quindi è importante capire se siete fatti per stare insieme. Non aver paura di fuggire se il tuo sesto senso ti dice che non è il posto giusto per te. Non è un fallimento, è solo un'altra tappa del tuo percorso. E ricorda, non è mai troppo tardi per cambiare strada. In questo momento l'obiettivo principale è imparare, imparare, imparare. Non preoccuparti troppo di fare errori, è normale, è umano. -Nei primi sei mesi di carriera dovrai diventare un detective, cercando di acquisire quante più informazioni possibili sia su come lavora l'azienda, e sia sul dominio applicativo della stessa. Ci sono realtà dove il dominio applicativo è molto complesso, e richiede tempo per essere assimilato. Non aver paura di chiedere, non aver paura di fare domande, non aver paura di sbagliare. Ricorda, sei lì per imparare, non per dimostrare quanto vali. In questa fase dovresti riuscire a identificare il capobranco del tuo team, colui o colei che ha più esperienza, e che può aiutarti a crescere. Ecco, ti ci dovresti attaccare come una cozza al suo scoglio. +Nei primi sei mesi di carriera dovrai diventare un/a detective, cercando di acquisire quante più informazioni possibili sia su come lavora l'azienda, e sia sul dominio applicativo della stessa. Ci sono realtà dove il dominio applicativo è molto complesso, e richiede tempo per essere assimilato. Non aver paura di chiedere, non aver paura di fare domande, non aver paura di sbagliare. Ricorda, sei lì per imparare, non solo per dimostrare quanto vali. In questa fase dovresti riuscire a identificare il capobranco del tuo team, colui o colei che ha più esperienza, e che può aiutarti a crescere. Ecco, ti ci dovresti attaccare come una cozza al suo scoglio. Nei tuoi primi nove mesi di carriera dovresti dimenticare totalmente il tuo stipendio. Questo non significa che non dovrai preoccuparti di come pagare l'affitto o la spesa, ma che non dovresti permettere allo stesso di diventare un'etichetta per il tuo livello di professionalità. Non lavorare mai gratis, piuttosto meglio farsi assegnare un rimborso spese, il lavoro, seppur non di esperienza, va sempre ricompensato. Evita di accettare lavori superpagati ma senza prospettive o che non ti soddisfano, la gratificazione economica dura poco e soprattutto non è considerata un investimento a lungo termine. Durante il primo anno di carriera ti ritroverai a svolgere task sia semplici che leggermente più complessi. Da junior, è molto probabile che il tuo lavoro sarà spesso di supporto, e che ti troverai a lavorare su task che non richiedono particolari competenze tecniche. Questo non significa che il tuo lavoro non sia importante, anzi. Il tuo lavoro è fondamentale per il buon funzionamento del team, e per la riuscita del progetto. Non sottovalutare mai il tuo ruolo, e non permettere a nessuno di farlo. Se ti trovi in un ambiente in cui il tuo lavoro non è riconosciuto, è il momento di cambiare aria. Ricorda, il tuo lavoro è importante, e tu sei importante. In questo periodo, spesso e volentieri ti capiterà di svolgere attività nelle quali non ti senti a tuo agio, o che non ti piacciono, o peggio, che per un motivo o per l'altro, non riuscirai a risolvere. Qui la contemporanea presenza e assenza di informazione giocheranno un ruolo fondamentale nello sviluppo delle tue abilità di problem solving. Cerca di attivare la modalità esplorativa nel tuo cervello, poniti domande, e soprattutto falle agli altri. È importante imparare a porre le domande in modo da mantenere attiva la modalità esplorativa. Cerca di desistere dal chiedere di fornirti la soluzione: un cervello in fase di stress positivo è un cervello che impara. @@ -120,7 +120,7 @@ Quasi sicuramente le tue competenze tecniche saranno migliorate, imparerai a con Sta accadendo qualcosa di meraviglioso e probabilmente neanche te ne sei accorto: stai diventando un middle developer. Questo è un momento molto importante nella tua carriera, perché è qui che inizierai a capire quali sono le tue reali competenze, quali sono le aree in cui dovresti migliorare, e quelle in cui vuoi specializzarti. È qui che inizierai a capire chi sei, e chi vuoi diventare. Probabilmente sono passati due anni da quando hai iniziato a lavorare in azienda, sei sempre meno dipendente dai tuoi colleghi e colleghe che hanno più esperienza di te e inizi a prendere decisioni in autonomia. Partecipi attivamente alla vita del team di lavoro, proponi soluzioni e discuti della fattibilità delle tue idee e delle idee dei membri del tuo team. Inizi a capire che il lavoro di squadra è fondamentale per la riuscita di un progetto, e che la tua professionalità è strettamente legata a quella dei tuoi colleghi. Inizi a capire che il tuo lavoro non è solo il tuo lavoro, ma è il lavoro di tutto il team. -E adesso che si fa? Adesso che sei un middle developer, è probabile che il tuo responsabile diretto ti premi con una promozione: più responsabilità, task via via sempre più complessi ma alla portata delle tue competenze, e soprattutto un migliore trattamento economico. Ma attenzione, non è detto che questo accada: non è detto che tu debba essere promosso per forza, tuttavia è plausibile che tu possa ambire a una promozione. In ogni caso, è importante che tu continui a lavorare sodo, a metterti in gioco, a cercare di migliorare sempre di più. La tua crescita professionale non dovrebbe mai fermarsi, e non dovrebbe mai essere condizionata da un titolo o da un compenso. La tua crescita professionale deve essere un obiettivo personale, un obiettivo che ti permetta di esprimere al meglio le tue potenzialità, e di realizzarti come professionista. +E adesso che si fa? Adesso che sei un/a middle developer, è probabile che la persona che ti fa da responsabile diretta ti premi con una promozione: più responsabilità, task via via sempre più complessi ma alla portata delle tue competenze, e soprattutto un migliore trattamento economico. Ma attenzione, non è detto che questo accada: non è detto che tu debba essere promosso/a per forza, tuttavia è plausibile che tu possa ambire a una promozione. In ogni caso, è importante che tu continui a lavorare sodo, a metterti in gioco, a cercare di migliorare sempre di più. La tua crescita professionale non dovrebbe mai fermarsi, e non dovrebbe mai essere condizionata da un titolo o da un compenso. La tua crescita professionale deve essere un obiettivo personale, un obiettivo che ti permetta di esprimere al meglio le tue potenzialità, e di realizzarti come professionista. Se dentro di te senti una voce che ti comunica che "hai fatto la differenza", è il caso di organizzare una sessione con il tuo superiore per negoziare una promozione o per fissare degli obiettivi da raggiungere per ottenerla a stretto giro. Se invece non senti questa voce, è il caso di fare un passo indietro e di riflettere su cosa ti manca per sentirti realizzato come professionista. A volte può capitare che il lavoro non sia più stimolante, e che tu senta il bisogno di cambiare aria. Questo è normale, e non è un fallimento. È solo un'altra tappa del tuo percorso professionale. Se senti che il tuo lavoro non ti soddisfa più, è il momento di cambiare. Non aver paura di fare un passo indietro, di tornare sui tuoi passi, di cambiare strada. La tua crescita professionale è un percorso personale, e solo tu puoi decidere quale strada prendere. In questo caso puoi ricominciare a fare colloqui, ed è in questo particolare momento che riuscirai a ricevere feedback con molta più frequenza rispetto a quando sei in azienda. Fare colloqui è un ottimo strumento per avere un parere esterno sul tuo livello di competenza, e per capire quali sono le aree in cui potresti migliorare. @@ -131,20 +131,20 @@ E dopo? Dopo lo sai solo tu. Non esiste il manuale della carriera perfetta. Ogni "Ciò che dobbiamo imparare a fare, lo impariamo facendolo." (Aristotele) -Credo che questa frase di Aristotele sia una delle più belle e vere che io abbia mai letto. Eppure, nonostante la sua verità, spesso ci troviamo a cercare la soluzione ad un problema senza dedicare la giusta quantità di attenzione al perché. Così come il titolo di uno dei più famosi libri dello scrittore e saggista Simon Sinek (Partire dal Perché) ci suggerisce, è importante capire il motivo per cui stiamo facendo qualcosa, prima di passare al come e al cosa. -Questo comportamento, che potremmo definire come "sindrome della pappa pronta" o "da eccesso di informazione", è molto diffuso tra i giovani sviluppatori, e spesso è la causa principale di molti problemi che si presentano durante la fase di crescita professionale. +Questa frase di Aristotele riporta una grande e bella verità: eppure, nonostante abbia un significato manifesto, spesso ci troviamo a cercare la soluzione ad un problema senza dedicare la giusta quantità di attenzione al perché. Così come il titolo di uno dei più famosi libri dello scrittore e saggista Simon Sinek ("Partire dal Perché") ci suggerisce, è importante capire il motivo per cui stiamo facendo qualcosa, prima di passare al come e al cosa. +Questo comportamento, che potremmo definire come "sindrome della pappa pronta" o "da eccesso di informazione", è molto diffuso tra chi è giovane nel settore dello sviluppo, e spesso è la causa principale di molti problemi che si presentano durante la fase di crescita professionale. Viviamo in un mondo in cui l'informazione è ovunque, e spesso ci troviamo a dover fare i conti con un eccesso di nozioni che ci confondono e ci distraggono. La nostra soglia dell'attenzione è sempre più bassa, e spesso ci troviamo a saltare da un argomento all'altro senza approfondire nulla. Inoltre, con il diffondersi delle intelligenze artificiali generative, non potremo far altro che continuare ad impigrirci, a delegare sempre di più il pensiero critico e la risoluzione dei problemi a macchine sempre più potenti e sempre più intelligenti. Intendiamoci, non sono assolutamente contrario ai vantaggi che tutti questi strumenti possono portare all'interno della nostra vita quotidiana e professionale, ma credo che sia importante non dimenticare che la nostra mente è la nostra risorsa più preziosa, e che dobbiamo fare in modo di mantenerla sempre attiva e sempre pronta ad affrontare le sfide che ci si presentano. Ecco perché è importante imparare a fare le cose, e non solo a leggere o a guardare qualcun altro farle. Se vuoi ambire ad una carriera professionale di successo, devi imparare a lavorare con il pensiero critico sempre attivo e a porti sempre delle domande, sia quando ti si presentano dei problemi e sia quando ti vengono proposte delle soluzioni. -Uno degli strumenti più potenti che ogni sviluppatore ha a disposizione è la community. La community è un luogo in cui puoi trovare risposte ai tuoi dubbi, soluzioni ai tuoi problemi, e soprattutto, persone con cui condividere le tue esperienze e le tue conoscenze. -Se c'è una cosa che dovresti fare fin da subito, è non prendere mai per oro colato quello che ti viene detto, ma cercare sempre di capire il perché di una cosa, e di metterla in discussione. Solo così potrai crescere professionalmente, e diventare un developer migliore. +Uno degli strumenti più potenti che ogni dev ha a disposizione è la community. La community è un luogo in cui puoi trovare risposte ai tuoi dubbi, soluzioni ai tuoi problemi, e soprattutto, persone con cui condividere le tue esperienze e le tue conoscenze. +Se c'è una cosa che dovresti fare fin da subito è non prendere mai per oro colato quello che ti viene detto, ma cercare sempre di capire il perché di una cosa, e di metterla in discussione. Solo così potrai crescere professionalmente, e diventare un/a developer migliore. -Fra le community di sviluppatori più utilizzate e conosciute ci sono sicuramente Stack Overflow, GitHub, Reddit, e molte altre. Chi si trova alle prime armi si affida a queste piattaforme per cercare risposte alle proprie domande, e spesso e volentieri quando le trova, si limita a copia-incollare la soluzione o lo _snippet_ di codice della risposta più votata, senza concedersi il tempo di capire il perché di quella soluzione, e di metterla in discussione. -Questo modus operandi è molto pericoloso, perché ti porta a non imparare nulla, a non crescere professionalmente, e soprattutto ad impigrire la tua mente. Molti sviluppatori, specie se con poca esperienza, sono piuttosto insicuri delle proprie capacità, e peccano della giusta maturità nell'accettare i propri limiti sulla propria conoscenza. +Fra le community di dev più utilizzate e conosciute ci sono sicuramente Stack Overflow, GitHub, Reddit, e molte altre. Chi si trova alle prime armi si affida a queste piattaforme per cercare risposte alle proprie domande, e spesso e volentieri quando le trova, si limita a copia-incollare la soluzione o lo _snippet_ di codice della risposta più votata, senza concedersi il tempo di capire il perché di quella soluzione, e di metterla in discussione. +Questo modus operandi è molto pericoloso, perché ti porta a non imparare nulla, a non crescere professionalmente, e soprattutto ad impigrire la tua mente. Chi sviluppa, specie se con poca esperienza, potrebbe essere piuttosto insicuro/a delle proprie capacità, e peccare della giusta maturità nell'accettare i propri limiti sulla propria conoscenza. Spesso e volentieri questo atteggiamento viene messo in atto per impressionare il team di recruiting quando si cerca un nuovo lavoro, ed ha lo stesso valore di quando si copia il compito del compagno di banco a scuola. Ha davvero senso fare una cosa del genere? Come saremo in grado di affrontare un colloquio di lavoro se non siamo in grado di rispondere alle domande che ci vengono poste? E se non siamo in grado di rispondere, come possiamo sperare di ottenere quel lavoro? La soluzione a questo problema è molto semplice: basta dedicare il giusto tempo a capire il perché di una cosa, e a metterla in discussione. L'imparare facendo (in inglese altresì noto come learning-by-doing) è uno dei modi migliori per acquisire nuove competenze, e per crescere professionalmente. -Se sei un junior developer, non temere di star perdendo tempo. Impara a destinare una buona quantità di tempo alla tua formazione prima di pensare al risultato finale. Così come detto nella sezione "Come crescere professionalmente", in questo momento della tua carriera è molto più importante puntare ai risultati che potresti ottenere a lungo termine, e l'apprendimento è uno di questi. +Se sei un/a junior developer, non temere di star perdendo tempo. Impara a destinare una buona quantità di tempo alla tua formazione prima di pensare al risultato finale. Così come detto nella sezione "Come crescere professionalmente", in questo momento della tua carriera è molto più importante puntare ai risultati che potresti ottenere a lungo termine, e l'apprendimento è uno di questi. From d1ed72d8e6653a7368bc593d7c8e4c8cb126271d Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Thu, 19 Sep 2024 20:01:56 +0200 Subject: [PATCH 10/18] Update docs/it/carriera-junior.md Co-authored-by: Serena Sensini --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index d61666d1..53d64253 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -38,7 +38,7 @@ Sicuramente ci sono fattori che non possono mancare in un/a dev con molta esperi Potresti essere contributor di progetti FOSS da anni o potresti aver lavorato per molto in un'azienda ma arrivata/o in un'azienda nuova è facile trovarsi spaesati nonostante l'esperienza, ricadendo quindi nella figura di "Junior" in un certo senso, a prescindere dalla sfida da affrontare. -Magari in qualche modo hai curato in autonomia o in un team gli aspetti più complessi citati sopra come security e performance ad esempio, iniziando da zero in una nuova realtà aziendale però tutto potrebbe sembrarti diverso e nuovo e come ribadito in diversi capitoli di questo nostro libro open, noi devs non finiamo mai di imparare, ricordandoci che chiunque potrebbe avere qualcosa da insegnarci, anche chi ha iniziato da poco. +Magari in qualche modo hai curato in autonomia o in un team gli aspetti più complessi citati sopra -come security e performance, ad esempio-, iniziando da zero in una nuova realtà aziendale però tutto potrebbe sembrarti diverso e nuovo e come ribadito in diversi capitoli di questo nostro libro open, noi devs non finiamo mai di imparare, ricordandoci che chiunque potrebbe avere qualcosa da insegnarci, anche chi ha iniziato da poco. Questo cosa può significare? From 9a9d82dc4d14e01995ff801489e9f2ee076ad9ac Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Thu, 19 Sep 2024 20:02:49 +0200 Subject: [PATCH 11/18] Update docs/it/carriera-junior.md Co-authored-by: Serena Sensini --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 53d64253..7b371e3b 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -42,7 +42,7 @@ Magari in qualche modo hai curato in autonomia o in un team gli aspetti più com Questo cosa può significare? -Probabilmente che gli Junior Devs che sono dentro di noi, se pratichiamo un apprendimento continuo e costante e che segue la natura mutevole di questa professione, forse non se ne vanno mai via del tutto (e magari è anche meglio cosí). +Non si smette mai di essere Junior Dev, anche se pratichiamo un apprendimento continuo e costante e che segue la natura mutevole di questa professione, e forse è anche meglio cosí. ## "L'occasione fa del Dev un Senior" From acc1555e788fe278e0de6f1aeaade47adfd5613c Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Thu, 19 Sep 2024 20:03:10 +0200 Subject: [PATCH 12/18] Update docs/it/carriera-junior.md Co-authored-by: Serena Sensini --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 7b371e3b..e28a89f7 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -48,7 +48,7 @@ Non si smette mai di essere Junior Dev, anche se pratichiamo un apprendimento co Stabilito un punto fisso come definizione di Junior Dev, possiamo proseguire nell'esplorare questa figura analizzandola dal punto di vista della carriera, immaginandola come la prima fase di un percorso lavorativo. -In primis è bene stabilire che ogni sviluppatore a seconda delle esperienze, ha i suoi tempi e di conseguenza non esiste un limite di tempo già stabilito entro cui dovrai evolvere come dev e nel titolo abbiamo deliberatamente ripreso un vecchio proverbio per introdurre un concetto per noi fondamentale: nessuno, se non te stess\* può far avanzare la tua carriera in termini di competenze. +In primis è bene stabilire che ogni persona che lavora nello sviluppo, a seconda delle esperienze, ha i suoi tempi e di conseguenza non esiste un limite di tempo già stabilito entro cui dovrai evolvere come dev e nel titolo abbiamo deliberatamente ripreso un vecchio proverbio per introdurre un concetto per noi fondamentale: nessuno, se non te stess\* può far avanzare la tua carriera in termini di competenze. Con questa espressione intendiamo evidenziare che di "occasioni" se ne presenteranno molte: la spiegazione di un concetto da parte dei colleghi, affiancamenti ad un senior, contenuti grautiti online (per il momento lasciamo perdere la formazione a pagamento), serate spese a sperimentare in autonomia oppure un nuovo progetto in azienda dove poter toccare con mano un nuovo aspetto mai affrontato. From 83fd9674cb153dfeea770ac5aa9cef698b5aaa15 Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Thu, 19 Sep 2024 20:03:31 +0200 Subject: [PATCH 13/18] Update docs/it/carriera-junior.md Co-authored-by: Serena Sensini --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index e28a89f7..6ae6e425 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -62,7 +62,7 @@ Beh per fortuna che almeno in questi casi il compenso economico aumenta... sbagl Potremmo dipingere il mondo come un bellissimo posto pieno di arcobaleni e di RAL commisurate alle responsabilità e ci sono sicuramente un sacco di aziende validissime e dalla struttura solida dove questi scenari sono ben lontani dalla norma, ma è comune che possano presentarsi ed è comune trovarsi in situazioni dove non si è abbastanza formati. -Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilità per le quali non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente, è bene che tu acquisisca una adeguata preparazione. +Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilità per le quali non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente realtà di questo tipo, è bene che tu acquisisca una adeguata preparazione. Cosa possiamo fare per affrontare queste occasioni? From 596f2a8db570b9b88d82f18c53671ad26674921c Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Thu, 19 Sep 2024 20:03:40 +0200 Subject: [PATCH 14/18] Update docs/it/carriera-junior.md Co-authored-by: Serena Sensini --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 6ae6e425..7bddda1e 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -64,7 +64,7 @@ Potremmo dipingere il mondo come un bellissimo posto pieno di arcobaleni e di RA Con queste righe non vogliamo assolutamente promuovere una cultura tossica del lavoro ne incoraggiare ad accettare situazioni "scomode" di questo stampo che si ripetono nel tempo e soprattutto non vogliamo spingerti a gestire situazioni di grande responsabilità per le quali non hai le skills, ma siccome ci sono e ci saranno sempre probabilmente realtà di questo tipo, è bene che tu acquisisca una adeguata preparazione. -Cosa possiamo fare per affrontare queste occasioni? +Cosa possiamo fare per affrontare queste situazioni? Possiamo lamentarci, alzare le mani e sedersi immobili ad aspettare aiuto, oppure possiamo vedere queste situazioni, come detto in precedenza, come occasioni. From 1e6eab55a1eb79a2818c746d3797542526d515f7 Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Sat, 21 Sep 2024 10:45:23 +0200 Subject: [PATCH 15/18] Update docs/it/carriera-junior.md Co-authored-by: Nicola Erario --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 7bddda1e..b81cdde2 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -2,7 +2,7 @@ ## Introduzione -All'interno di questo libro sono stati affrontati in diverse forme molti dei tecnicismi che fanno parte del mestiere di chi sviluppa, l'obiettivo di questo libro però non è parlare di devs solamente come artigiani/e del software ma anche in modo più generale come risorse umane. +All'interno di questo libro sono stati affrontati in diverse forme molti dei tecnicismi che fanno parte del mestiere di chi sviluppa; l'obiettivo di questo libro, però, non è parlare di devs visti solamente come artigiani/e del software, bensì in modo più generale: come risorse umane. Sono presenti infatti diversi capitoli pubblicati o in stesura che parlano del modo in cui formarsi, il significato di questa professione o i percorsi possibili di carriera e che quindi affrontano l'aspetto più "personale" e "lavorativo" di questo mestiere. From 0d288610a15dcdd5b4a1c1edee906bcc4f7ce4f2 Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Sat, 21 Sep 2024 10:45:56 +0200 Subject: [PATCH 16/18] Update docs/it/carriera-junior.md Co-authored-by: Nicola Erario --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index b81cdde2..3d416b59 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -4,7 +4,7 @@ All'interno di questo libro sono stati affrontati in diverse forme molti dei tecnicismi che fanno parte del mestiere di chi sviluppa; l'obiettivo di questo libro, però, non è parlare di devs visti solamente come artigiani/e del software, bensì in modo più generale: come risorse umane. -Sono presenti infatti diversi capitoli pubblicati o in stesura che parlano del modo in cui formarsi, il significato di questa professione o i percorsi possibili di carriera e che quindi affrontano l'aspetto più "personale" e "lavorativo" di questo mestiere. +Sono presenti infatti diversi capitoli, pubblicati o in stesura, che parlano del modo in cui formarsi, del significato di questa professione o dei percorsi possibili di carriera, e che affrontano quindi l'aspetto più "personale" e "lavorativo" di questo mestiere. L'obiettivo di questo capitolo è descrivere per noi cosa significa in linea generale essere Junior Developer, esplorare le pratiche giornaliere per poter crescere e collaborare in modo sano in un team e infine il percorso per crescere di livello e non solo, il fine è raccontare anche quanto questa fase della carriera possa essere complessa oltre che delicata e fondamentale per il futuro, a seconda di come viene affrontata. From 8664785dd76f37361e7c3c7c574e55e4b3591c16 Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Sat, 21 Sep 2024 10:46:34 +0200 Subject: [PATCH 17/18] Update docs/it/carriera-junior.md Co-authored-by: Nicola Erario --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 3d416b59..445f0c98 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -14,7 +14,7 @@ Come possiamo identificare un/a Junior Developer? Spoiler: non è semplice. A seconda dei panni che si stanno indossando (es. dev, recruiter, team leader, coach...) questo ruolo può assumere molteplici forme e declinazioni che aumentano esponenzialmente a seconda delle tipologie e delle dimensioni delle aziende, oppure se della categoria di consulenza o di prodotto e anche ad esempio se si è impiegati in ambito front-end o back-end. -Anche affidandoci ad internet per trovare una definizione le sfumature che emergono sono diverse, potremmo classificare chi sviluppa in base all'età (ad oggi non è più di tanto un indice di esperienza), in base agli studi e da quanto tempo siano stati completati o anche in base agli anni di esperienza in una determinata azienda o in generale di carriera. +Anche affidandoci ad internet per trovare una definizione, le sfumature che emergono sono diverse; potremmo classificare chi sviluppa in base all'età (ad oggi non è più di tanto un indice di esperienza), in base agli studi e da quanto tempo siano stati completati o anche in base agli anni di esperienza in una determinata azienda o in generale di carriera. Per creare un piano comune che ci permetta di esplorare facilmente l'argomento e fissare quello che per noi è il fulcro del capitolo, la definizione di Junior Dev per noi è la seguente: From a9bc6a0d242c79ff2a7c4d0963c887202a31ff23 Mon Sep 17 00:00:00 2001 From: Brian Atzori <43118219+BrianAtzori@users.noreply.github.com> Date: Sat, 21 Sep 2024 10:48:18 +0200 Subject: [PATCH 18/18] Update docs/it/carriera-junior.md Co-authored-by: Nicola Erario --- docs/it/carriera-junior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/it/carriera-junior.md b/docs/it/carriera-junior.md index 445f0c98..b194a5ee 100644 --- a/docs/it/carriera-junior.md +++ b/docs/it/carriera-junior.md @@ -36,7 +36,7 @@ Se volessimo schematizzare e fare qualche esempio a sostegno di questa tesi: Sicuramente ci sono fattori che non possono mancare in un/a dev con molta esperienza, come i test, l'attenzione alla security o le performance ottimali di un applicativo insieme alla sua architettura, che sono tutti aspetti più complessi da assorbire in autonomia come Junior Dev, anche se la passione e la voglia di imparare possono portarti ovunque. -Potresti essere contributor di progetti FOSS da anni o potresti aver lavorato per molto in un'azienda ma arrivata/o in un'azienda nuova è facile trovarsi spaesati nonostante l'esperienza, ricadendo quindi nella figura di "Junior" in un certo senso, a prescindere dalla sfida da affrontare. +Potresti essere contributor di progetti FOSS da anni o potresti aver lavorato per molto in un'azienda ma, arrivata/o in un'azienda nuova, è facile trovarsi spaesati nonostante l'esperienza, ricadendo quindi nella figura di "Junior" in un certo senso, a prescindere dalla sfida da affrontare. Magari in qualche modo hai curato in autonomia o in un team gli aspetti più complessi citati sopra -come security e performance, ad esempio-, iniziando da zero in una nuova realtà aziendale però tutto potrebbe sembrarti diverso e nuovo e come ribadito in diversi capitoli di questo nostro libro open, noi devs non finiamo mai di imparare, ricordandoci che chiunque potrebbe avere qualcosa da insegnarci, anche chi ha iniziato da poco.