Mid/Senior Back End Developer - remote

AICOF Srl
Posted 3 years ago

Sei uno sviluppatore con almeno 3 anni di esperienza nello sviluppo di soluzioni tecnologicamente complesse basate su Java e hai maturato la tua esperienza in realtàstrutturate.

Hai una profonda conoscenza di architetture web, tecnologie di database, ambienti cloud, container, microservizi, e metodologie agili e inoltre hai familiaritàcon le pratiche di continuous integration and continuous delivery.

Sei principalmente uno sviluppatore di back-end, non pensi mai che ciòche sviluppi sia fine a se stesso perchèsei consapevole che èparte di qualcosa di piùcomplesso.

Sei in grado di apprezzare le sottili differenze tra le diverse scelte tecnologiche ma alla fine sei un pragmatico. Il tuo codice è, in primo luogo, leggibile.

Pensi in maniera critica, non hai paura di essere smentito e consideri il confronto fondamentale per crescere. Se sei in difficoltàsei in grado di fare un passo indietro e analizzare il problema da un altro punto di vista, anche con l'aiuto dei tuoi colleghi se necessario.

Sai che ogni errore rappresenta un'opportunitàper crescere. Sai insegnare ai piùjunior senza supponenza o prepotenza.

Responsabilitàprincipali

  • Dovrai conoscere nel dettaglio l'architettura delle applicazioni che sviluppiamo, identificare eventuali problemi di scalabilità, integritào manutenibilitàe proporre le opportune azioni correttive
  • Dovrai produrre codice di qualitàcon il giusto grado di copertura. Rivedere il codice in modo costruttivo, condividere frequentemente la tua esperienza di programmazione e le tue best-practice.
  • Sarai un mentore dei colleghi piùgiovani, dovrai contribuire a una discussione razionale, informata e civile quando sorgono controversie tecniche.
  • Condividere in modo trasparente e continuo le tue conoscenze con i tuoi colleghi e con l'azienda.
  • Dovrai sviluppare lo strato di back-end di applicazioni web, inclusi modelli di database e API, garantendo sicurezza, protezione e integritàdei dati
  • Dovrai mantenere l'integritàe l'organizzazione del codice e fornire un'adeguata copertura del test
  • Parteciperai ad attivitàdi progettazione di architetture e di soluzioni web complesse e ad alte prestazioni
  • Sarai chiamato a presentare e difendere scelte architetturali, progettuali e tecniche

Requisiti generali

  • Esperienza nello sviluppo di applicazioni web enterprise, mission-critical ed altamente scalabili
  • Esperienza nella realizzazione di progetti complessi nel rispetto delle esigenze dei clienti e di scadenze ben definite
  • Capacitàdi dare prioritàai compiti e rispettare le scadenze
  • Capacitàdi supportare e far crescere i colleghi.
  • Desiderio di apprendere nuove tecnologie e processi.
  • Spiccate capacitàdi analisi e problem solving
  • Laurea in informatica, ingegneria o materie scientifiche rappresentano un requisito preferenziale

Requisiti tecnici obbligatori

  • Ottima conoscenza dei principali paradigmi della programmazione e capacitàdi applicarli per la risoluzione di qualsiasi problema.
  • Conoscenza avanzata di JAVA e del framework Spring
  • Ottima capacitàdi sviluppo API REST e conoscenza dei relativi tools
  • Conoscenza delle piattaforme di persistenza dei dati e loro applicazione.
  • Conoscenza profonda di container e architetture a microservizi ed esperienza con Docker e Kubernetes
  • Ottima conoscenza di sistemi distribuiti di controllo di versione (Git and Gitlab) e di Maven
  • Esperienza nelle pratiche di continuous integration and delivery (CI/CD)
  • Ottima conoscenza di database relazionali e sull'utilizzo del linguaggio SQL

Requisiti tecnici facoltativi

  • Conoscenza del framework Angular o React
  • Esperienza con il TDD
  • Familiaritàcon i container Docker
  • Conoscenza di sistemi di Message Broker
  • Conoscenza di JPA per la gestione della persistenza
  • Esperienza con il lavoro remoto
  • Familiaritàcon metodologie di sviluppo Agili