Ingegnere Full Stack
Descrizione dell'offerta
Stiamo assumendo: Senior Full-Stack Engineer / Team Lead tecnico
Dettagli del ruolo
- Location: Remote / Ibrido
- Contratto: Full-time
- RAL: a partire da 45.000 €
Chi siamo
Stiamo riprogettando da zero una piattaforma per mappe geografiche e assistente Al conversazionale (stack attuale: .NET + React, Firebase/Firestore, integrazioni Al con Chatbase). Cerchiamo una figura senior che, oltre a sviluppare, sappia impostare l'architettura, le pratiche di lavoro e guidare tecnicamente un piccolo team di 2 sviluppatori junior, lavorando a stretto contatto con il CTO.
Cosa offriamo
- Ruolo da referente tecnico sul progetto, con spazio reale per impostare architettura, stack e processi.
- Possibilità di lavorare a stretto contatto con il CTO, influenzando direttamente il futuro del prodotto.
- Ambiente snello, senza burocrazia pesante, orientato a imparare e migliorare.
- Orari flessibili, lavoro remoto/ibrido, retribuzione commisurata all'esperienza.
️ Cosa farai
Architettura e visione tecnica
- Progettazione da zero dell'architettura dell'applicazione, con forte attenzione a semplicità, scalabilità e velocità di evoluzione.
- Scelta e validazione dello stack tecnologico in base ai requisiti di prodotto e alla crescita attesa.
- Definizione delle linee guida tecniche e architetturali: pattern, standard di codice, convenzioni, gestione errori, sicurezza e osservabilità.
- Bilanciamento continuo tra qualità tecnica e time-to-market.
Sviluppo backend
- Progettazione e sviluppo delle funzionalità core del prodotto, lavorando direttamente sul codice di produzione.
- Progettazione e implementazione di API, sistemi di autenticazione/autorizzazione, persistenza dati e integrazioni con servizi esterni.
- Particolare focus su testabilità e manutenibilità, con test automatizzati mirati al valore di business.
Sviluppo frontend
- Progettazione frontend, seguendo UX design fornito.
- Supporto all'implementazione frontend quando necessario, mantenendo coerenza architetturale.
- Contributo attivo alle decisioni di prodotto dal punto di vista tecnico.
Leadership tecnica in team piccoli
- Punto di riferimento tecnico per un team di sviluppatori junior.
- Code review e mentoring orientati alla crescita rapida del team.
- Supporto al CTO nelle decisioni tecniche chiave, esplicitando trade-off e rischi.
Qualità, DevOps e delivery
- Impostazione di pipeline CI/CD leggere ma affidabili per build, test e deploy.
- Definizione di un flusso Git pragmatico, adatto a team piccoli e iterazioni rapide.
- Introduzione di strumenti essenziali di qualità e monitoraggio, evitando over-engineering.
Must have - Competenze tecniche
- Almeno 5 anni di esperienza nello sviluppo software, preferibilmente in contesti web e/o SaaS, con responsabilità di progettazione e decisione tecnica.
- Forte esperienza nella progettazione e guida di sistemi backend su stack tecnologici moderni.
- Esperienza concreta nella definizione di architetture applicative scalabili e manutenibili, con chiara separazione dei livelli (API, Application, Domain, Infrastructure), ispirate a Clean Architecture, Hexagonal o Onion.
- Capacità di valutare e scegliere tecnologie e pattern in base a contesto, vincoli e trade-off.
- Esperienza nella progettazione e integrazione di database SQL e/o NoSQL.
- Esperienza nell'integrazione di servizi esterni e sistemi complessi (OAuth, pagamenti, e-commerce, servizi Al).
- Ottima padronanza di strategie di testing e qualità del codice (unit, integration, API test).
- Ottima padronanza di Git e flussi di lavoro collaborativi, con responsabilità su branching strategy, pull request e code review.
✨ Nice to have
- Osservabilità e affidabilità in produzione: logging, monitoring ed error handling.
- Esperienza, o forte interesse a lavorare, su frontend SPA moderne, in particolare React e TypeScript.
- Esperienza, o forte interesse a lavorare, sull'integrazione con servizi di Al/LLM/chatbot (es. OpenAl, ElevenLabs, Chatbase o soluzioni simili).
- Esperienza, o forte interesse a lavorare, su architetture cloud su GCP, AWS o Azure, con utilizzo di container (Docker e orchestrazione di base).
- Esperienza, o forte interesse a lavorare, sullo sviluppo di prodotti map-based o geolocalizzati (Google Maps API, POI, geocoding).
Soft skill e modo di lavorare
- Attitudine da tech lead, non solo esecutiva: capacità di spiegare e motivare le scelte tecniche, e capacità di adattare il livello di complessità architetturale alla fase del prodotto, evitando over-engineering.
- Capacità di mentoring: trasferire conoscenza a sviluppatori più junior in modo pratico, paziente ed efficace.
- Comunicazione chiara e diretta, comfort nel confronto tecnico con il CTO, inclusa la discussione di trade-off e rischi.
- Capacità di produrre documentazione tecnica essenziale ma utile (ADR, README tecnici, diagrammi sintetici).
- Senso di ownership: responsabilità nel tempo della qualità del codice, dell'architettura e delle decisioni tecniche.