Tradizionalmente nel settore tecnologico gli sviluppatori sono divisi in quattro gradazioni in base ai loro livelli di qualifica: Junior, Middle, Senior e Team Lead. O cinque, se includi gli stagisti di codifica come i "soldati" di rango più basso del settore dello sviluppo software. Nell'articolo precedente abbiamo già spiegato cosa vuol dire essere uno sviluppatore Junior. Quindi iniziamo da dove abbiamo interrotto l'ultima volta e attraversiamo la fase successiva nella gradazione della carriera del programmatore, che è lo sviluppatore di medio livello.
“Questo ruolo è per le persone che possono contribuire a un progetto con solo una piccola quantità di supervisione. Si può fare affidamento su di loro per prendere le giuste decisioni nell'implementazione con membri più anziani del team che si occupano dell'architettura. Ci si aspetta che trasformino i ticket in soluzioni, forniscano stime sulle attività e aiutino a scomporre sezioni più ampie del lavoro. Possono essere impegnati in conversazioni con i clienti ma non ci si aspetta che li guidino", così William Hurley, sviluppatore esperto e architetto del software, ha riassunto il ruolo di un ingegnere del software di medio livello.

Chi è uno sviluppatore di medio livello?
Lo sviluppatore di medio livello è un programmatore relativamente esperto che ha già trascorso almeno 2-4 anni in questa professione. Questi anni avrebbero dovuto trasformare un nuovo programmatore inesperto e incerto in un forte programmatore completamente funzionale in grado di scrivere il proprio codice e trovare soluzioni senza la necessità di chiedere aiuto ai membri senior del team. Lo sviluppatore di medio livello in genere è un'unità centrale praticamente in qualsiasi "esercito" di sviluppo software, poiché i programmatori di medio livello sono quelli che svolgono la parte principale del lavoro di programmazione praticamente su qualsiasi progetto. A differenza degli sviluppatori Junior meno esperti, i programmatori di medio livello non hanno bisogno di molto aiuto o supervisione, sono in grado di fare tutto in autonomia e, avendo una chiara comprensione del codice e delle tecnologie utilizzate nel progetto, hanno maggiori responsabilità. Per esempio, se l'obiettivo principale di Junior è scrivere codice che funzioni, chiaro e semplice, il programmatore di medio livello deve anche pensare a cose come assicurarsi che il codice sia chiaramente comprensibile e scritto in linea con gli standard di qualità e i requisiti del progetto. In genere, la maggior parte del codice base di praticamente qualsiasi software è scritta da programmatori di medio livello. Naturalmente, come sempre quando si parla di professioni e specializzazioni nel settore tecnologico, vale la pena ricordare che i programmatori di medio livello (proprio come Junior o Senior dev) possono avere esperienze e responsabilità molto diverse a seconda dell'azienda in cui lavorano. “Dal punto di vista esterno, 3-5 anni di esperienza ti rendono un livello medio. Dall'interno di un'organizzazione, sei sul punto di fidarti della codifica, ma poca o nessuna interazione con il cliente e proprietà di progetti di piccole e medie dimensioni. Ho visto casi in cui gli sviluppatori di livello senior preferirebbero rimanere a livello medio perché in pratica stai programmando senza dover trattare con project manager e clienti "afferma Lewis Nakao, uno sviluppatore di software esperto e consulente per la carriera nella programmazione.Quali sono le responsabilità di uno sviluppatore di medio livello?
Ora parliamo più in dettaglio di alcune delle responsabilità più tipiche e comuni di uno sviluppatore di medio livello.- Scrivere e mantenere il codice.
- Analizzare e implementare le migliori pratiche di codifica nel codice del progetto.
- Analizzare i requisiti tecnici del progetto e adattare il codice in linea con essi.
- Identificare e sviluppare aree di revisione nei progetti in corso.
- Esecuzione e implementazione di test software.
- Sviluppo di procedure di garanzia della qualità per progetti software.
- Analizzare le esigenze degli utenti, nonché le esigenze dei progettisti, dei tester QA e di altri membri del team di sviluppo software.
- Sviluppo di procedure di garanzia della qualità.
- Coordinare gli sforzi e collaborare con altri sviluppatori, progettisti, analisti di sistema e aziendali, ecc.
- Documentare ogni parte del processo di sviluppo per ulteriori lavori e manutenzione.
Requisiti per uno sviluppatore di medio livello
Ecco un elenco dei requisiti più comuni e tipici per uno sviluppatore di medio livello che dovresti soddisfare per ottenere questo lavoro. Naturalmente, i requisiti variano a seconda delle politiche di assunzione dell'azienda, delle tecnologie utilizzate nel progetto e del linguaggio di programmazione dello sviluppatore. Ovviamente, ci concentreremo sui requisiti tipici per gli sviluppatori Java di medio livello.- Almeno due-tre anni come sviluppatore Java ed esperienza di lavoro su almeno diversi progetti software diversi.
- Conoscenza completa di come progettare, programmare, implementare e mantenere le applicazioni Java.
- Sapere come programmare sistemi ad alto volume e bassa latenza pensati per il grande ridimensionamento.
- Conoscenza solida dei framework per la creazione di progetti web (Maven, Gradle), framework per progetti aziendali (Spring, Hibernate, Spring Boot), strumenti per unit test (JUnit, Mockito), ecc.
- La capacità di contribuire in tutte le fasi del ciclo di vita dello sviluppo.
- La capacità di scrivere codice di alta qualità, efficiente e facilmente verificabile.
- Avere familiarità con la conduzione di analisi software, test e debug del codice Java.
- Esperienza nella gestione dello sviluppo di applicazioni Java e Java EE.
- In grado di elaborare approcci alternativi e implementare nuove tecnologie.
- Capacità di comunicare in modo chiaro e conciso con clienti sia tecnici che non tecnici.
GO TO FULL VERSION