Si apre in una nuova scheda
Torna alle posizioni aperte

Full-stack developer

  • Profili mid o senior
  • Full remote o in sede a Cesena
  • Assunzione o partita IVA
Candidati ora

Il ruolo

Cerchiamo uno sviluppatore o una sviluppatrice full-stack che voglia entrare nel cuore tecnologico dei nostri prodotti. Se ami scrivere codice pulito, testato e performante e ti piace lavorare sia sul backend sia sul frontend, questa può essere l’occasione giusta per te.

Lavorerai su più progetti e clienti in parallelo insieme al team, con responsabilità reali. Contribuirai sia allo sviluppo sia alle scelte tecniche, con attenzione a qualità, sicurezza e manutenibilità.

Team e organizzazione

  • Entrerai in un team di 4 sviluppatori full-stack e 3 designer UI/UX.
  • Il lavoro è organizzato in sprint di 2 settimane, facilitati da uno Scrum Master.
  • Lavorerai a stretto contatto con il team e con i Project Manager dei progetti, senza contatto diretto con i clienti.

Tech stack

  • Backend: NestJS, TypeScript, Drizzle ORM, SQL
  • Frontend: React, Tailwind CSS
  • Infrastruttura: Docker, Node.js, monorepo (Nx/Turborepo), AWS

Cosa ci aspettiamo

  • Architettura e sviluppo: contribuirai a definire l’architettura di nuovi strumenti e funzionalità, dal backend all’infrastruttura fino a frontend complessi.
  • Componenti e librerie: progetterai, svilupperai e manterrai i nostri componenti, ampliando le librerie e sperimentando le tecnologie emergenti che possono fare davvero la differenza.
  • Qualità del codice: migliorerai costantemente il codice con refactoring, correzione dei bug e code review con il team. Scrivere e mantenere test solidi è una priorità, non un optional.
  • Collaborazione con UI/UX: lavorerai a stretto contatto con il team di design per passare in modo efficace dai prototipi in Figma all’implementazione, allineando vincoli tecnici e buone pratiche.
  • Evoluzione dei prodotti esistenti: conoscerai a fondo i prodotti già in manutenzione per i nostri clienti, per gestire change request, correzioni e miglioramenti e garantire continuità.
  • Condivisione: lavorerai in un team affiatato, dove scambio di idee, aiuto reciproco e confronto costruttivo sono alla base di tutto.

Chi cerchiamo

Cerchiamo una persona che tenga alla qualità del software e che voglia migliorare sia le proprie competenze sia i processi di lavoro. Contano la disponibilità al confronto tecnico e la voglia di sperimentare, quando porta a risultati concreti.

Esperienza

  • Almeno 5 anni di sviluppo software professionale
  • Ottima padronanza di TypeScript e JavaScript moderno
  • Conoscenza solida di React (hooks, context, composizione)
  • Esperienza con NestJS o framework simili (Express, Fastify)
  • Ottima competenza in SQL e database relazionali (Drizzle ORM è un plus)
  • Esperienza con Tailwind CSS o framework utility-first
  • Conoscenza delle API Node.js (streams, fs, path)
  • Esperienza con Docker e docker-compose
  • Familiarità con dependency injection, decorators e metadata reflection
  • Ottima competenza con Git e workflow collaborativi
  • Conoscenza di bundler moderni (Vite, Webpack, esbuild)
  • Esperienza con test a più livelli: unit, integration, end-to-end

Requisiti graditi

  • Esperienza con monorepo (Nx, Turborepo, Lerna)
  • Gestione avanzata dello stato (Zustand, Jotai, Redux)
  • CI/CD (GitHub Actions, Ansible, Terraform)
  • Inglese di livello B2+

Cosa offriamo

  • RAL 37.000–42.000 €: inquadramento e retribuzione in base all’esperienza e alla seniority, con revisione periodica secondo responsabilità e crescita.
  • Buoni pasto Satispay: semplici da usare e flessibili nella vita di tutti i giorni.
  • Lavoro flessibile, da remoto o in ufficio: puoi lavorare interamente da remoto oppure in presenza, come preferisci. La nostra sede di Cesena è sempre disponibile per incontrarsi quando serve.
  • Copertura sanitaria e welfare aziendale: assicurazione e benefit sanitari in linea con l’inquadramento e con il CCNL Metalmeccanico.
  • Team building online e in presenza: iniziative periodiche per rafforzare la collaborazione e le relazioni nel team.
  • Supporto alla formazione: budget e iniziative per la crescita professionale (corsi, certificazioni, risorse tecniche), per un apprendimento continuo e mirato.
  • Tempo per la sperimentazione: spazio pianificato per esplorare nuove tecnologie, strumenti e approcci, condividendo con il team i risultati utili a migliorare prodotti e processi.

Come si svolge la selezione

  • Call di conoscenza (30–45 min): un primo incontro per conoscerci. Parliamo del tuo percorso, delle tue motivazioni e delle aspettative reciproche, e ti presentiamo l’azienda, il ruolo e il modo di lavorare del team.
  • Prova tecnica (coding challenge da svolgere offline): un esercizio pratico per valutare competenze JavaScript/TypeScript, problem solving e buone pratiche (struttura, qualità, test).
  • Call tecnica (30–45 min): riguardiamo la prova insieme al Technical Lead e discutiamo scelte implementative, alternative, compromessi e approccio allo sviluppo.
  • Call con il CEO (30–45 min): un colloquio finale per allinearci su obiettivi, contesto e percorso. In questa fase parliamo anche della parte economica e dei dettagli dell’offerta.
Candidati ora
Candidati ora