Quindi vuoi diventare uno sviluppatore senior?


Non ho mai pensato seriamente allo sviluppo della mia carriera fino a un anno e mezzo fa. Altre persone mi hanno anche detto che era più difficile ottenere promozioni rimanendo nello stesso ambiente. Il modo più semplice è cambiare lavoro iniziando una nuova azienda come Senior.
Fortunatamente, sono stato in grado di diventarlo senza lasciare il mio lavoro. Il processo non è del tutto roseo e vorrei aver saputo alcune cose prima. Quindi ho voluto condividere la mia esperienza personale sulle qualità che ritengo più importanti per passare alla posizione di Senior Developer. Spero che alcuni di questi suggerimenti possano aiutarti lungo la strada...

Le basi

I principi di base si applicano generalmente all'essere un "buon sviluppatore" e non solo all'essere un Senior; ogni sviluppatore dovrebbe lavorare per migliorare le proprie capacità.

Scrivi il codice di qualità

  • Pulito e leggibile
  • manutenibile
  • Riutilizzabile e scalabile
  • documentato
  • Avere una solida base di conoscenze

Risoluzione del problema

  • Pensare in modo creativo: utilizzare l'esperienza accumulata per affrontare i problemi
  • Non aver paura di chiedere aiuto o di ammettere l'incertezza

Travailler in collaborazione

  • Essere in grado di lavorare con altre persone, interne o esterne al team. Ciò include designer, product manager e talvolta tutte le parti interessate del progetto.

Trova la tua specialità, padroneggiala

Nessuno può sapere tutto – scommetto che Einstein non sapeva come fare le torte a tema “Adventure Time” come me. (Beh, non può confutare...)
Ero uno sviluppatore full stack, lavorando su un'ampia varietà di tecnologie. Tuttavia, è stato uno dei motivi principali che mi ha fatto fallire durante il mio primo tentativo. Ho sentito dire che all'epoca ero "troppo normale" per il lavoro. Avere una vasta gamma di conoscenze professionali è molto importante, ma essere eccezionali su un punto particolare ti consentirà di distinguerti dalla massa.
Trova ciò che ti eccita di più e diventa un esperto in materia.

Non accontentarti del minimo

Molti sviluppatori si accontentano di fare esattamente ciò che gli viene chiesto di fare e di ottenere il minimo, il che porta a scrivere codice di base solo per soddisfare i requisiti. C'è un tempo per quello. In mezzo a una fretta con una scadenza complicata non c'è così tanta importanza da dare alla manutenzione, alla qualità o al miglioramento del codice. Ma nella vita di tutti i giorni, uno sviluppatore senior deve fare di più.

  • Una delle principali aspettative di questa posizione sarà l'assunzione di responsabilità e la capacità di influenzare un progetto su larga scala. Prendere decisioni come stack tecnico o architettura ed essere in grado di spiegare agli stakeholder del progetto cosa è possibile e cosa non lo è.

  • Prendi l'iniziativa e sii proattivo, sia sul progetto attuale che sui processi che lo circondano. Come il team può lavorare in modo più efficiente e cosa si può fare per aiutarlo a comprendere nuove tecnologie e strumenti.

Ma è importante trovare l'equilibrio. Lavorerai sodo e prenderai decisioni importanti, ma dovrai sempre coinvolgere te stesso nel lavoro di tutta la squadra e ci sono così poche ore in una giornata...

Aiutare gli altri

Quindi sì, sei fantastico, uno sviluppatore fragoroso (o una rockstar) ma far parte di una squadra è altrettanto importante. Ricorda che nell'ambito di un progetto aziendale, l'obiettivo principale è fornire risultati e la maggior parte dei progetti sono di grandi dimensioni. Non puoi farlo da solo.
Individuare i problemi alla fonte e guidare gli altri quando potrebbero aver bisogno in modo che emergano più forti non è solo un'opportunità per dimostrare le tue qualità. È anche un modo per ottenere il rispetto dei tuoi coetanei.
Sii qualcuno che ispiri i tuoi compagni di squadra e che sia disponibile ad aiutarli.

Apprendimento continuo

Anche oggi mi vedo imparare cose nuove ogni giorno che passa.
I tempi sono cambiati. La maggior parte delle conoscenze tecniche è disponibile gratuitamente sul web e nulla può impedirti di imparare. Nel mio settore in particolare, nuovi software/strumenti escono ogni giorno e ho perso il conto del numero di framework e plugin. Se non fai uno sforzo per rimanere aggiornato, presto rimarrai molto indietro.
Condividere le tue conoscenze in realtà ti fa imparare più velocemente. Ho iniziato a scrivere articoli tecnici alcune settimane fa e non crederesti quanto ho imparato in così poco tempo.
Sii aperto alle nuove tecnologie. Ciò non significa che devi usarli tutti, ma devi conoscere i loro punti di forza e di debolezza per capire come possono essere utili per te o per la squadra.

Infine, la cosa più importante da ricordare...

"Senior" è solo un titolo. Questo titolo non definisce chi sei o ti rende superiore agli altri.
Chiediti, è davvero questo quello che vuoi? Qual è il tuo motivo principale? Pensaci bene. Se decidi di cercare una promozione, valuta onestamente i tuoi punti di forza e di debolezza professionali, quindi scrivi alcuni modi per migliorare quei punti deboli e sfruttare al meglio ciò che sai.
Probabilmente ci siamo trovati tutti in una situazione in cui ci imbattiamo in persone che affermano a gran voce di essere sviluppatori senior e si sentono male quando si scopre che non hanno la mentalità o le capacità giuste. . Non essere quella persona.
Essere preparato. Quando arriverà il momento, sarai pronto!
Buona fortuna.
NDD: Traduzione dell'articolo anglofono di @koalamango da Guglielmo Barranco, consulente presso JS Repubblica
Articolo originale