- LocationMilan, Italy, Europe
-
IndustryTechnology
Il nostro cliente è un realtà di consulenza con un focus su progetti di digital transformation e l’enterprise architecture è uno dei principali elementi abilitanti questa trasformazione.
Il Software Architect partecipa alle varie fasi di un progetto di sviluppo, si relaziona con il Project Manager e il cliente stesso. Svolge analisi, progettazione di architetture e sviluppo software e interviene anche a supporto dello sviluppo del business
Nello specifico è responsabile di:
- Definizione dell’architettura software e di sistema di applicazioni a partire dalle esigenze del cliente
- Progettazione e sviluppo dei componenti secondo le best practice dell’ingegneria del software (adozione di design pattern, utilizzo di strumenti di software configuration management, attuazione di re-factoring, utilizzo di unit testing, etc)
- Definizione di stime dell’effort necessario alla realizzazione di applicazioni software
- Supporto nella traduzione dell’analisi di dominio e delle esigenze del cliente in requisiti
Appassionato dalle tecnologie e sempre alla ricerca di nuove sfide tecnologiche, il candidato deve avere i seguenti requisiti personali:
- Eccellente attenzione ai dettagli e proattività.
- Metodico e ben organizzato, con buona capacità di gestione del tempo
- Buone doti di comunicazione orale
- Volontà a mantenere un forte presidio operativo sui progetti in cui viene coinvolto (progettazione, sviluppo, coaching team, troubleshooting, etc)
- Capacità di gestione dello stress
- In grado di auto motivarsi e motivare gli altri.
Competenze specifiche:
- Framework J2SE e J2EE ed in particolare il framework Spring.
- Strumenti di Software Configuration Management e Dev-Ops
- Tecnologie Web client-side
- Elevate capacità di troubleshooting/debug di architetture software distribuite
- Conoscenza dei principi e dei principali design pattern utilizzati nelle architetture a Microservices ed in generale orientate ai servizi (SOA).
- Competenze nell’ambito di performance tuning di architetture software distribuite
- Esperienza nell’utilizzo di metodologie di sviluppo agili.