https://unsplash.com/photos/vpOeXr5wmR4

DevX al Santagostino la mia proposta

Saverio M.

--

Lavoro al Santagostino (https://www.santagostino.it) da metà del 2019.

La società è molto focalizzata sull’aspetto tech e sul digital, quasi tutte le applicazioni interne ed esterne sono sviluppate custom.

Col mio arrivo e con l’arrivo di un piccolo team di dev interno si è notata l’esigenza di poter creare uno standard tra i dev esterni e quelli interni, questo per avere:

  • Coesione tra i team
  • Più facilità di mantenibilità reciproca del codice
  • Servizi sempre più performanti e strutturati

Si è quindi iniziato a dare il focus a 3 aspetti che per noi compongono la nostra DevX:

  • Setup di sviluppo standardizzato ed automatizzato
  • Styleguide di buone pratiche e regole per la programmazione
  • Developer platform come catalogo servizi e come base di partenza per nuovi progetti

Che cos’è la DevX?

Può essere intesa in due accezioni:

  • DevX come UX per lo sviluppatore (quindi ad esempio in termini di API e di sviluppo di piattaforme che devono essere utilizzate a loro volta da sviluppatori);
  • DevX come gestione dell’esperienza dei team di sviluppatori interno/esterno.

Cosa abbiamo iniziato a fare?

Brevemente descrivo i tre punti che ho voluto implementare nel nostro dipartimento per implementare la visione che avevo di DevX.

Setup di sviluppo standardizzato ed automatizzato

Startupper è lo script basato su ansible che utilizziamo all’onboarding di un nuovo dipendente per fare lo startup del suo mac (a breve arriverà anche per linux e windows!).

Avere un tool che ci configuri il laptop permette molti vantaggi:

  • Si è operativi subito
  • Si crea una configurazione standard e testata per tutti
  • Non si ha più paura di formattare

Styleguide di buone pratiche e di regole per la programmazione

StyleGuide sono pubbliche a tutti così da migliorare sempre di più con spunti ed idee.

Questo sito definisce le regole e cosa abbiamo implementato per permettere lo sviluppo sempre più comodo e bello ai nostri developers!

Scalabilità, standardizzazione dei flussi, facilità di manutenzione, facilità di startup sono state le parole chiave per la stesura delle styleguide e per la definizione della Developer platform.

Developer platform come catalogo servizi e come base di partenza per nuovi progetti

Potrei scrivere un interno articolo su questo punto (ma mi limiterò a qualche riga!).

La Developer platform si appoggia su 4 pilastri:

  • Catalogo dei servizi
  • Punto unico di documentazione
  • CI/CD integrata e automatizzata
  • StarterKit per lo sviluppo di nuovi servizi che aiutano ad eliminare la complessità dell’inizio implementazione

I principali servizi utilizzati sono:

  • Backstage: piattaforma opensource per la gestione di un catalogo servizi
  • GitHub: come repository del codice
  • GitHub Action: come workflow di CI/CD

Conclusioni

Ogni giorno pensiamo a come migliorare la nostra DevX, a come facilitare il lavoro dei nostri developer perchè strumenti che aiutano rendono le persone contente. E persone contente possono creare software migliori!

--

--

No responses yet