Progetto l'infrastruttura delle applicazioni che sviluppo e ne seguo la messa in esercizio. Su richiesta affianco aziende che vogliono rendere riproducibili i processi di rilascio o gestire internamente servizi oggi acquistati in abbonamento. Progetto ogni infrastruttura in modo che il personale tecnico dell'azienda o il suo fornitore possa gestirla autonomamente. Al termine dell'intervento curo il passaggio di consegne e la relativa documentazione.
Ambiti di intervento
- Deploy riproducibili: progettazione di ambienti containerizzati con Docker e Docker Compose, allineati tra sviluppo e produzione, e di playbook Ansible per l'installazione e l'aggiornamento delle applicazioni su più server.
- CI/CD: configurazione di pipeline di build, test e rilascio, anche su Gitea self-hosted con Gitea Actions e registry privato.
- Distribuzione come binario unico: applicazioni Rust compilate staticamente con interfaccia web inclusa nell'eseguibile, che si installano in produzione senza dipendenze esterne.
- Self-hosting: installazione su server aziendali di servizi interni come repository Git, gestione dei documenti e gestione delle password, definendo le procedure per i backup cifrati.
Infrastruttura personale
Anche per la mia infrastruttura seguo gli stessi criteri dei progetti: configurazione versionata e backup verificati. È un homelab di alcuni server su cui girano servizi che considero mission critical. Sulla stessa infrastruttura raccolgo la telemetria delle mie sessioni di sviluppo con agenti AI, come indicato nella pagina sullo sviluppo con l'AI.