Santagostino DEV Blog
  • Contact

Posts

September 10, 2023

Data Warehouse come l'abbiamo sviluppato

Data Warehouse è un sistema centralizzato che raccoglie, archivia e gestisce grandi quantità di dati provenienti da diverse fonti aziendali. È progettato per supportare l’analisi dei dati, il reporting e il processo decisionale strategico all’interno di un’azienda.

Perché utilizzare un Data Warehouse in azienda?

  • Integrazione dei Dati: Unisce dati provenienti da diverse fonti, come prenotazioni, fatturato, cartella clinica, in un unico sistema coerente, permettendo una visione d’insieme.

  • Analisi Avanzata: Facilita l’analisi complessa e il reporting avanzato, consentendo di individuare trend, pattern e opportunità strategiche.

read more
August 26, 2023

AppSync implements WebSocket… How?

AppSync è un servizio di Amazon Web Services (AWS) che permette di creare API risolvendo una serie di complessità collegate al mondo microservizi utilizzando GraphQL come linguaggio di interrogazione e permettendo la sincronizzazione offline. AppSync consente agli sviluppatori di creare API flessibili e scalabili aggregando dati provenienti da fonti diverse come database, web services, ecc. Infatti le principali caratteristiche di questo servizio sono:

  • GraphQL API: AppSync utilizza GraphQL, un linguaggio di query per API che permette di richiedere solamente i dati necessari, ottimizzando l’efficienza delle richieste
  • Integrazione con diverse fonti dati: AppSync può aggregare dati da più fonti come DynamoDB, RDS, Elasticsearch, Lambda e altri servizi AWS, fornendo un’unica interfaccia API.
  • Aggiornamenti in tempo reale: Supporta aggiornamenti in tempo reale tramite WebSockets, consentendo alle applicazioni di ricevere dati aggiornati automaticamente senza dover fare richieste continue
  • Sincronizzazione offline: Le applicazioni possono funzionare offline, e AppSync si occupa della sincronizzazione dei dati quando la connessione viene ripristinata
  • Sicurezza: Fornisce integrazioni con AWS Identity and Access Management (IAM), Amazon Cognito e altri servizi per gestire l’autenticazione e l’autorizzazione in modo sicuro.

img

read more
July 14, 2023

Audit log solution home made

Audit log solution home made

Volevo raccontare la storia di un servizio che ho progettato.

Ormai è sempre più importante la gestione degli audit logs e di poterli recuperare anche dopo anni per verificare e capire chi ha fatto cosa.

Questo è essenziale come tutela legale soprattutto per una realtà che opera nel mondo sanitario.

Ci sono alcune soluzioni software che ti permettono di salvare questi dati, ma noi abbiamo voluto approcciarsi con un MVP creato internamente.

read more
July 6, 2023

How to expose a (monolithic) service securely using AWS services

Spesso ci capita di dover rendere accessibili dall’esterno della nostra rete software aziendali magari monolitici residenti su un server. Una delle domande che mi sono posto è stata: Come posso pubblicare l’applicazione rendendola sicura da attacchi? La soluzione che ho intrapreso è stata quella di usare alcuni servizi di AWS per poter astrarre la pubblicazione del servizio e portare ad un layer superiore l’accesso al sistema. I servizi che ho utilizzato sono:

read more
April 7, 2023

Sistema di login serverless, maggiore sicurezza e scalabilità

Sistema di login serverless, maggiore sicurezza e scalabilità

Premessa

Al Santagostino abbiamo iniziato a sviluppare internamente una nuova piattaforma di cartella clinica, costruita ad-hoc sulle nostre esigenze.

Essendo una piattaforma nuova, vogliamo creare uno starterkit (per la nostra developer platform “Samaritan”) che diventi uno standard per lo sviluppo delle nostre piattaforme.

Abbiamo quindi fatto un R&D legato alla sicurezza e alla gestione di un servizio di login esterno alla piattaforma, che ci permetta:

read more
March 16, 2023

EventBridge per la gestione degli eventi

EventBridge per la gestione degli eventi

Al Santagostino la comunicazione tra i vari applicativi (interni, Saas, ecc..) è sempre stata molto complessa.

Si sono usati spesso cron per poter verificare la presenza di situazioni che potessero scatenare azioni prestabilite (es: l’emissione di una fattura scatenava un sms di notifica all’utente).

Questo approccio però rendeva tutto complesso, poco scalabile e monitorabile.

Con l’introduzione del Middleware abbiamo introdotto anche il concetto di “eventi” sfruttando ail pattern Observer.

read more
February 3, 2023

Devex capitolo 2: automatizziamo alcuni passaggi dello sviluppo

Abbiamo notato durante lo sviluppo con la Developer platform del Santagostino che sono alcune operazioni, fatte manualmente dallo sviluppatore che possono spesso essere dimenticate generando errori in fase di deploy e quindi perdita di tempo per la gestione del problema ecc…

Questo per lo sviluppatore può essere frustrante e può portarlo a non utilizzare più questi strumenti di controllo qualità.

Ci siamo quindi chiesti come migliorare questa parte del processo di sviluppo e rilascio di una nuova funzionalità.

read more
December 14, 2022

Middleware serverless: la storia della sua scelta

Middleware serverless: la storia della sua scelta

Siti web, software interni, software esterni tutti strettamente connessi tra di loro. Ogni modifica era sempre una fida lunga e piena di ostacoli, ogni rilascio un odissea.

Ogni fornitore che doveva integrarsi con noi doveva conoscere i nostri dati, dove risiedevano ecc…

Questa era la situazione in cui ci trovavamo quando abbiamo realizzato (🤷‍♂️ chissà come mai non l’avessimo capito prima) che dovevamo avere un middleware per poter organizzare meglio le comunicazione tra i software.

read more
November 18, 2022

Makefile: comodo trick per una DevEx uniforme e multiplatform

Nonostante GNU Make venga utilizzato solitamente all’interno di progetti scritti in C e C++ e sia anche un utility sviluppata 50 anni fa, è ancora utilizzabile in modo efficiente in progetti moderni basati su docker ed infrastruttura serverless, come nel caso degli sviluppi in Santagostino.

Il Makefile delle nostre applicazioni contiene principalmente i comandi nativi di docker e docker-compose per l’esecuzione di varie operazioni sui container.

L’utilità di Docker è risaputa, ossia quella di rimuovere agli sviluppatori la necessità di installare ogni singolo tool localmente e permettergli di avviare le applicazioni in container con semplici docker commands.

read more
September 28, 2022

Dotenv-vault: Gestire gli envfile in maniera sicura

Envfiles al Santagostino

Al Santagostino, una delle esigenze a cui bisogna fare fronte è quella di dare accesso a una o più persone ad un progetto, fornendo materiali e informazioni che ne permettano la gestione operativa. Nello specifico, nella fase di bootstrapping del progetto, questo si traduce nel fornire al singolo sviluppatore, tra le tante informazioni, degli envfiles.

Gli envfiles, sono file contenenti una o più variabili di ambiente, ovvero variabili relative e necessarie al funzionamento di un determinato processo o di una delle sue parti.

read more
  • ««
  • «
  • 1
  • 2
  • 3
  • »
  • »»
© Santagostino DEV Blog 2024