Centro Medico Santagostino
Il cliente
Santagostino è un’azienda italiana che gestisce una rete di poliambulatori che offrono una vasta gamma di servizi specialistici ad un prezzo accessibile e con una elevata qualità. Con 31 centri presenti tra Lombardia, Bologna e Roma, negli ultimi anni ha definito un piano di crescita continua che, oltre all’apertura di nuovi poliambulatori, prevede l’aumento di servizi di supporto al paziente a distanza con l’utilizzo di tecnologie mature e anche innovative.
L'obiettivo
Realizzazione di una Internal Developer Platform per incrementare la DevX interna e per migliorare il supporto al business in termini di efficacia
La sfida
Pur avendo sempre avuto un sistema digitale che gestisce tutto l’ecosistema degli ambulatori, dei medici e dei pazienti, le premesse di prima hanno posto una nuova sfida in termini di organizzazione e standard di tutti i servizi digitali interni.
Questa sfida aveva due aspetti fondamentali. Il primo era creare una piattaforma interna per centralizzare i servizi e la documentazione, gestire tutto il lifecycle dei servizi e semplificare il lavoro degli sviluppatori di Santagostino; il secondo realizzare una serie di servizi per semplificare la comunicazione dei prodotti interni principali e permettere di supportare il business efficacemente.
Il tutto si traduce in un effetto visibile dall’esterno in termini di nuove e migliorate funzionalità ai pazienti, come il recupero di appuntamenti e il recupero di referti, tra i tanti servizi messi a disposizione.
La soluzione
Il nostro lavoro con Santagostino è iniziato con un assessment della loro situazione corrente, dal quale è emerso che, nonostante l’utilizzo di AWS come cloud provider, i loro servizi interni non rispettavano degli standard condivisi, non esistevano delle pipeline di CI/CD che potessero garantire un’alta affidabilità dei rilasci e il monitoraggio delle risorse non era efficiente. L’analisi preliminare ha restituito la fotografia di un ecosistema non ancora solido per i rilasci confermando l’esigenza già percepita dall’azienda: la necessità di un developer platform.
Per realizzarla abbiamo scelto Backstage, un software Open Source rilasciato da Spotify che permette di creare delle piattaforme in cui raccogliere e censire i servizi, la documentazione e gli starterkit necessari per semplificare il lavoro dei team di sviluppo. L’applicazione è stata sviluppata tenendo in mente tutti i principi che rendono il suo utilizzo e mantenimento semplice e veloce: il codice e la CI/CD sono su Github e la definizione dell’infrastruttura è gestita con Terraform. Per quest’ultima abbiamo scelto i servizi di AWS ECS, ECR, RDS, S3 e Cognito.
Contemporaneamente a questo, abbiamo definito insieme al Cliente i requisiti degli starterkit che gli avrebbero consentito di creare nuovi microservizi (sfruttando diversi servizi AWS) con degli standard condivisi e consolidati. Il risultato di questo lavoro ha prodotto un elenco di starterkit che abbiamo realizzato tenendo a mente questi requisiti di alto livello:
- Codice sorgente su Github
- QA/CI/CD integrata su Github
- Monitoraggio integrato con dashboard Cloudwatch
- Documentazione integrata (consultabile dalla Developer Platform)
- Logging operazionale integrato su ambiente ELK
Servizi usati:
AppSync, Lambda, RDS, ECS, Api Gateway, Step functions, SQS, Event Bridge, Parameter Store, Alb, Cloudwatch, DynamoDB, Acm, Route53, OpenSearch, SNS, Amplify, Iam, Xray, CognitoTecnologie usate:
Terraform, Serverless Framework, GitHub Actions, PlantUML, MKdocs, Swagger, Backstage, DockerI risultati
La nuova Developer Platform ha consentito al Cliente di raccogliere tutta la documentazione dei servizi già esistenti e di velocizzare lo sviluppo di quelli nuovi senza dover definire, per ognuno di essi, dei processi di CI/CD, di definizione dell’infrastruttura e di monitoraggio. Inoltre ha semplificato il processo di onboarding di nuovi sviluppatori del team interno di sviluppo.
In circa 3 mesi sono stati realizzati 20 servizi con nuove funzionalità e che ne hanno rimpiazzato alcuni vecchi. Adesso tutti condividono le stesse pratiche e sono già utilizzati con successo in ambienti di produzione.
Risultati chiave
Tecnologie utilizzate
Platform
- Backstage
- Terraform
- GitHub Actions
AWS Services
- ECS
- Lambda
- RDS
- AppSync
DevOps
- Docker
- Serverless Framework
- CloudWatch
- OpenSearch
Metodologia
- IDP
- DevX
- Microservizi

Marco Bertoncini
Chief Digital and Design Officer Santagostino
Ci sono stati fisiologici e inevitabili piccoli aggiustamenti di percorso, tipici di ogni processo di sviluppo. Ma più che un cambio di aspettative abbiamo osservato una crescita di consapevolezza, a livello di dipartimento e a livello di azienda.
Ci siamo resi meglio conto dell’importanza di costruire un sistema ancora più puntiglioso e “spietato” di quanto già immaginassimo, pensato per consentirci di individuare da subito gli errori nel codice. E anche per fornire nativamente, nei nuovi servizi, dei log strutturati e completi che ci permettano di migliorare e correggere con la massima velocità possibile.
Per un’azienda sanitaria come il Santagostino la tecnologia è un abilitatore della nostra vera attività a valore aggiunto: l’esperienza di cura, che coinvolge tutte e tre le nostre categorie di utenti, ovvero i pazienti, i professionisti clinici, i dipendenti.
In questo senso, la scelta di una developer platform è stata dettata dall’esigenza di migliorare l’esperienza Santagostino per queste tre categorie, per così dire, in modo indiretto. A ben vedere, una developer platform è “l’abilitatore di un abilitatore”.
Laddove i nostri software (gestionali, portali, cartelle cliniche, app) vanno direttamente nelle mani dei nostri utenti, la developer platform è un nuovo tool di lavoro nelle mani dei nostri sviluppatori e, di conseguenza, dei nostri project manager e designer.
Il nostro team può così, a sua volta, dedicare il tempo alla parte a più alto valore aggiunto del lavoro: l’architettura dei servizi, il codice vero e proprio, la definizione e l’implementazione della user experience.