Voglio diventare... Front-end Developer

  • Di
  • 2024-03-12 - 10 minuti
banner

I percorsi affini sono come strade perpendicolari: prima o poi si incrociano. Oggi conosciamo Paola Poggini, Front-end developer @ Alpian.

Descriviti in 100 parole

Ciao, sono Paola e sono una Front-end developer con un percorso totalmente atipico e non lineare: sono cresciuta con un computer in mano, ma ci ho messo un po’ per trovare la mia strada, o meglio, per prendere coraggio e percorrerla.

Sono una sportiva, nerd incallita e amante degli aperitivi: passo dal computer, alla xbox, alla piscina, al surf skate e alle sedute del bar come se niente fosse.

Inoltre sono una persona molto curiosa e ambiziosa: quindi se mi ritrovate a sperimentare cose e a cercare di eccellere in esse, sapete il perché.

In cosa consistono i ruoli di Front-end Developer?

Parto subito col dire che chi sviluppa front-end non è quella persona che colora un paio di bottoni o sposta gli elementi in pagina di qualche pixel più in là.

Il ruolo di chi sviluppa front-end ha come compito principale quello di implementare il layout visivo di un sito web (o di un’applicazione), gestendo tutte le interazioni utente e creando degli elementi in pagina ( o nell’ app ) che siano interattivi.

Nel frattempo, deve tenere conto di:

  1. I vari browsers che l’utente utilizza: mettiamola così, ogni browser ha le sue regole, soprattutto le versioni vecchie!
  2. I vari “schermi” che l’utente utilizza: il layout visto da computer è diverso da uno visto da uno smartphone o da tablet.
  3. Dell’ accessibilità: deve garantire che il prodotto sia accessibile a una vasta gamma di utenti, in particolare a quelli con disabilità visiva.

Quindi sì, non coloriamo solamente bottoni e spostiamo elementi. Dunque, oltre a creare, quali sono le altre attività che uno sviluppatore front end svolge?

  • Revisione del codice: sia revisionare che farsi revisionare il codice è parte integrante e fondamentale di ogni sviluppatore.
  • Sessioni di pair programming: il creare una feature o risolvere dei problemi assieme ad un collega: dove non arrivo io, arriva lui e viceversa. Per farla in breve: uno dei due scrive codice (pilota) e l’altro osserva e fornisce feedback (osservatore).

Mentoring verso figure junior: credo sia fondamentale istruire e dare supporto a chi ha meno esperienza di te, dato che ti spinge anche a dover spiegare chiaramente dei concetti che davi per scontato. Inoltre, anche una figura junior può insegnarti qualcosa.

Per quanto riguarda la modalità di lavoro e di team varia da azienda in azienda, mi son sempre trovata a lavorare in team misti con sviluppatori backend e designers. Mi piace molto questo approccio perché si condividono idee e conoscenze del prodotto tra tutti i membri del team.

Qual è la soft skill più importante che devono possedere un Conversation Designer e un Knowledge Engineer?

Impossibile dirne una sola, ne citerà un po’ e in ordine sparso, quindi non vanno dalla più importante alla meno.

Ascolto, Comprensione e Comunicazione:

  • Fondamentali per comprendere appieno le richieste di creazione di un prodotto o di una feature.
  • La mancanza di queste abilità può ostacolare la collaborazione efficace con i colleghi e la trasmissione chiara delle proprie intenzioni.

Empatia:

  • Essenziale per creare un ambiente di lavoro sereno e di fiducia.
  • Favorisce una comunicazione aperta e la gestione delle dinamiche di team in modo positivo.

Pazienza:

  • Necessaria sia nei confronti dei colleghi (si ricollega all’empatia) che nel processo di sviluppo del codice.

Problem Solving:

  • Il cuore del nostro lavoro quotidiano, non aggiungo altro.

Collaborazione:

  • La capacità di collaborare contribuisce al successo del progetto, da soli non si raggiunge nulla.

Curiosità:

  • La curiosità non solo stimola la volontà di apprendere in modo continuo, ma spinge anche a esplorare in dettaglio un argomento, spaziando attraverso di esso.

La maggior parte di noi utilizza i social per parlare dei propri successi, ma la realtà è che siamo quel che siamo grazie al 90% dei nostri errori. Racconta il tuo più grande fallimento da quando lavori nel settore, che però ti ha reso ciò che sei.

Domanda che cade a fagiolo, dato che sono qui proprio grazie a un mio fallimento.

Partirei però da prima, ovvero dal fallimento pre-lavorativo: non aver mai iniziato l’università.

Di base, non ho un background scientifico (o informatico); sono uscita da un liceo linguistico perché “sei portata per le materie umanistiche, non per quelle scientifiche”, e perché sì, le lingue mi sono sempre piaciute, ma non è mai stata la mia vocazione.

Sono cresciuta con una tastiera tra le mani e ho trascorso parte della mia vita davanti a un PC, come potevano essere importanti le lingue?

Col senno di poi, meno male, dato che lavoro in parte in inglese e tra qualche mese ci lavorerò completamente, quindi non mi è andata manco malissimo.

Ma torniamo a noi: appena maggiorenne, mi sono messa a creare e smanettare coi template di ForumFree, praticamente HTML e CSS (Javascript poco).

Da lì ho capito che è quello che volevo veramente fare, dato che ci passavo letteralmente le ore e non mi stufavo mai. Ma come si diventa “creatori di siti web”?

Googlando e guardando un po’ in giro, ho visto che effettivamente una laurea in informatica potrebbe fare al caso mio. Ma sì dai, proviamoci, perché no? Non ho minimamente le basi di matematica, ma dettagli. Mi sono fatta il mese di prova, seguendo Analisi 1 e matematica discreta (quest’ultima paradossalmente la capivo già di più), ed è stata una doccia gelatissima: mi ha riportato alla mente quel famoso “non sei portata, fai altro”.

Io, testarda come sono, ho cercato di capire se c’era comunque un modo per entrare in questo settore senza il famoso pezzo di carta.

Così ho iniziato a frequentare corsi di programmazione web e nel frattempo ho studiato da autodidatta.

Ma, sindrome dell’impostore portami via, non mi sono sentita minimamente pronta al mondo del lavoro e di nuovo mi è ritornato in mente il pensiero del “non sei portata”. Decido dunque di iscrivermi ad un bootcamp, sperando che qualcuno mi prendesse per mano e mi desse una direzione, dato che non ho mai creduto di farcela da sola (col senno di poi sarei riuscita, ma autostima portami via 2.0).

Finisco il bootcamp e ricevo la mia prima offerta lavorativa: decido di puntare sul backend perché, effettivamente, da autodidatta e dai corsi che avevo fatto, mi sentivo molto più sicura su Php (e perché credevo fosse “la vera programmazione”), nonostante il mio “innamoramento” fosse nato proprio da tutt’altro.

Il mio fallimento inizia a prendere piede: come ho già detto sopra, non ho brillato di autostima in questi anni; il backend era una scelta di comodo, la mia prima esperienza lavorativa e l’azienda non era adatta a me (non eravamo adatti per entrambi). Sono entrata in una spirale negativa di “non sono capace, non merito di stare qua” e di “sono sicura che voglio fare questo lavoro?" E tutto ciò ha impattato clamorosamente le mie (non) prestazioni sul lavoro, e avendo un contratto a tempo determinato, mi lasciarono a casa al termine di esso.

Finita questa esperienza di lavoro e durante la ricerca del successivo, mi sono rimessa a (ri)studiare il front end.

Ed è inutile dire che ho detto “è veramente questo quello che voglio fare”. Fortunatamente, l’azienda successiva mi ha assunto come full stack, dandomi modo di lavorare sul front end. E’ inutile dire che i task front end erano quelli dove ci mettevo più passione, dedizione e divertimento.

Da lì ho iniziato una transizione verso di esso, culminata con un’offerta di lavoro totalmente frontend. E il resto è storia.

Ho maturato un pensiero in questi anni: i fallimenti accadono e accadranno sempre, è la tua attitudine a come li gestisci che fa tutto.

Come fare per diventare Front-end Developer?

Credo che la mia esperienza poco sopra parli da sola, dato che ho avuto tutto tranne che un percorso lineare.

Posso sicuramente affermare che attualmente il mercato (italiano) inizia ad essere saturo per le posizioni junior, quindi si fatica doppiamente per entrare nel settore e dunque c’è bisogno di farsi notare maggiormente.

Inizio col dire subito che devi avere una certa passione e curiosità per questo mondo, altrimenti è difficile emergere con persone che studiano e lavorano il doppio di te perché sono appassionate. Ma soprattutto, è un lavoro tosto e se non lo ami, rischi di gettare la spugna dopo pochi anni: alla fine creiamo software, non premiamo due tasti sulla tastiera e basta.

Infatti, non concordo con il messaggio che sta passando ultimamente in questo settore “vieni a fare chi sviluppa, scrivi codice e ti pagano miliardi”; per guadagnare molto, devi essere bravo, non basta saper sviluppare e, per di più, crei software, non scrivi solo codice.

Il software deve essere robusto e ben pensato, altrimenti, se inizi a buttare codice alla “basta che funzioni”, ti ritrovi ad avere un software/prodotto pieno di bug, difficile da mantenere e non comprensibile, ergo, soldi che vengono persi dall’azienda. Attenzione dunque a prendere sempre per oro quello che viene detto in giro.

Un’altra cosa che ho notato è che ci si concentra molto sul framework di turno e non sulle basi.

A tal proposito, ho creato un repository su Github per dare la possibilità a chi sta iniziando ora di farsi le ossa su HTML, CSS e Javascript.

Ci sono contenuti su tanti argomenti base (e non) da sapere e sicuramente, una volta capiti, si può spaziare tra i vari framework senza grossi problemi.

In conclusione, posso dire che per entrare in questo settore c’è bisogno di passione, curiosità e di martellare sui fondamentali. E di andare piano nello studio, dato che sono concetti densi e complessi che vanno assimilati nel tempo. E ovviamente, fare progetti su GitHub: ne bastano pochi e fatti bene.

Ah, non dimentichiamo il networking: LinkedIn, le varie community su internet e in loco o persone vicine a te. Mi è capitato di essere “consigliata” o di consigliare persone a me vicine nelle aziende in cui sono stata.

Parlando di successi, qual è il tuo prossimo obiettivo? Quale ruolo vorresti ricoprire entro i prossimi 3 anni?

A partire da Marzo, intraprenderò una nuova sfida come Senior Frontend Developer.

Il mio obiettivo è consolidare la mia posizione in questo ruolo, contribuendo in modo significativo e assumendomi sempre più responsabilità all’interno.

Vorrei anche continuare a fare mentoring, perché non solo trovo grande soddisfazione in questa attività ma credo fermamente nell’importanza della crescita delle risorse junior come un valore aggiunto, non come un ostacolo.

Guardando al futuro, ho degli obiettivi a lungo termine e non mi pongo limiti temporali ma vorrei raggiungere un giorno la posizione di Staff Front End Developer.

Altro obiettivo è quello della posizione da Tech Lead, sono consapevole che potrebbe allontanarmi dal codice, e al momento la mia unica certezza è la voglia di continuare a programmare nel futuro.

Conosci il tema gender gap in ambito STEM? Se sì, secondo te, come fare per superarlo?

Sì, penso sia dovuto a degli stereotipi di genere e al fatto che non si parli abbastanza di donne nell’ambito scientifico.

Non scherzo se vi dico che ho conosciuto Margaret Hamilton solo agli inizi della mia carriera e non prima.

E tante donne con cui ho avuto modo di parlare durante gli anni, o non la conoscevano affatto o l’hanno scoperta solo di recente.

Quindi, indubbiamente parlare di più di donne che hanno fatto la storia in ambito scientifico, creando modelli a cui le donne possono aspirare e con cui possono identificarsi.

Un altro aspetto che mi fa piacere e che noto con più frequenza è la creazione di corsi/laboratori di introduzione a delle materie STEM: ricordo che a Milano ci fu un laboratorio di introduzione alla programmazione per sole ragazze.

In conclusione, credo che offrirei dei modelli interamente femminili in ambito STEM, corsi/laboratori per ragazze e soprattutto, offrirei un corso di orientamento per il post scuola secondaria mirato a far conoscere le materie e i percorsi in questo ambito.

Contatti

Post correlati

Iscriviti al TheRedCode.it Corner

La tecnologia corre, e tu devi correre più veloce per rimanere sempre sul pezzo! 🚀

Riceverai una volta al mese (o anche meno) con codici sconto per partecipare agli eventi del settore, quiz per vincere dei gadget e i recap degli articoli più interessanti pubblicati sul blog

Ci sto!

Partners

Community, aziende e persone che supportano attivamente il blog

Logo di Codemotion
Logo di GrUSP
Logo di Python Milano
Logo di Schrodinger Hat
Logo di Python Biella Group
Logo di Fuzzy Brains
Logo di Django Girls
Logo di Improove
Logo del libro open source
Logo di NgRome

Vuoi diventare #tech content writer? 🖊️

Se vuoi raccontare la tua sul mondo #tech con dei post a tema o vuoi condividere la tua esperienza con la community, sei nel posto giusto! 😉

Manda una mail a collaborazioni[at]theredcode.it con la tua proposta e diventa la prossima penna del blog!

Ma sì, facciamolo!