Come Flagsmith ci ha aiutato nei primi 2 anni di Serenis

|
Primo colloquio gratuito
Primo colloquio gratuito
Intervista a Filippo Sarzana Tech Lead di Serenis

La crescita di una realtà aziendale che si basa su un prodotto tecnologico come nel nostro caso (la piattaforma che mette in contatto pazienti e terapeuti e che li aiuta a gestire rispettivamente il proprio percorso e il proprio lavoro quotidiano) passa spesso attraverso l’utilizzo di software, fornitori e tool che aiutano a velocizzare attività e processi: con questo articolo vogliamo raccontarne uno di questi, Flagsmith.

Ne abbiamo parlato con il nostro Filippo Sarzana, Tech Lead in Serenis, e con Anna Redbond di Flagsmith, per approfondire come abbiamo utilizzato i feature flag.

Li abbiamo sfruttati principalmente per supportare la continuous delivery di prodotto e gli A/B test. Grazie a Flagsmith abbiamo avuto piena libertà di implementare e testare con sicurezza; concentrando i nostri sforzi sullo sviluppo del prodotto senza avere necessità di sviluppare internamente la gestione dei feature flag.

Quali sono i casi d'uso per i feature flag in Serenis?

“Abbiamo due casi d’uso e due obiettivi diversi. Innanzitutto, lavoriamo con la continuous delivery di prodotto, quindi portiamo continuamente il nostro codice in produzione. Utilizziamo i feature flag per attivare o disattivare funzionalità per segmenti specifici e per poter testare un segmento con un piccolo gruppo di utenti prima di distribuirlo a tutta la nostra base utenti.  

L'altro nostro caso d'uso sono gli A/B test. Inizialmente siamo partiti con solo due varianti di funzionalità, ma abbiamo da sempre ragionato come se potessimo fare multi-variation. Molto spesso, però, abbiamo solo una variante di una funzionalità e una di un controllo. I flag di funzionalità ci consentono di testare il comportamento di ciascuna variante e quindi di monitorare i risultati.”

Come funzionano gli A/B test in Serenis?

“Ogni funzionalità di cui disponiamo è sottoposta ad A/B test. Per esempio possiamo disattivare una funzionalità per alcuni utenti e lasciarla attiva per altri. O ancora testare una funzionalità in produzione per un segmento specifico e poi distribuirla a tutti. Ad esempio, ogni volta che pubblichiamo una nuova sezione del menu, viene prima A/B testata. Funziona così: è disattivato per tutti, lo testiamo e poi lo pubblichiamo. 

Anche la verifica della registrazione e la verifica dell'e-mail sono state sottoposte ad A/B test. Attualmente stiamo testando diverse versioni del sistema di prenotazione. Stiamo anche testando diverse versioni degli algoritmi che utilizziamo internamente. Stiamo testando se le videochiamate interne funzionano meglio delle videochiamate non interne. 

Effettuiamo test A/B su tutto tranne che sulle correzioni di bug. A volte però, capita di testare anche quelli. Quando la correzione di un bug è fondamentale e l'implementazione è fondamentale, vogliamo essere sicuri che la correzione funzioni correttamente, quindi effettuiamo anche qui un A/B test.”

Come si configurano tecnicamente i test A/B? 

“Utilizziamo Flagsmith con i nostri strumenti interni per gli A/B test. Ad esempio, disponiamo di un data warehouse, quindi raccogliamo dati dai feature flag con i webhook Flagsmith. Le nostre identità sono gli ID utente e su questi costruiamo analisi. È poi il nostro team interno e i nostri data engineer a fornire informazioni di business basate su tutti i dati raccolti.”

Strade alternative: cosa avremmo fatto se non avessimo scelto Flagsmith?

“È difficile dirlo, ma so che non avremmo creato internamente la gestione dei flag di funzionalità. L'ho fatto in passato ed è stato un incubo. Il nostro obiettivo è concentrare il nostro tempo e le nostre energie sulla realizzazione del prodotto, non sulla realizzazione degli strumenti che fanno funzionare la piattaforma. Finiremmo per dedicare così tanto tempo a costruire e mantenere gli strumenti cruciali per la nostra azienda, e questo non è per nulla efficiente quando qualcun altro ha già gestito e costruito un tool per farlo. 

È più funzionale a mio avviso pagare per un sistema in grado di gestirlo per te, anche considerando i costi di una risorsa dedicata. Inoltre, uno strumento a pagamento può gestire le complessità che uno strumento interno non è in grado di gestire.  

Ad esempio, acquistare uno strumento come Flagsmith significa che tutto è già pronto e impostato. È molto semplice impostare segmenti per i test: possiamo impostare un segmento di test automatizzato in modo che gli utenti vengano assegnati automaticamente e possiamo testare cose come il modo in cui gli utenti si comportano con o senza un pulsante, il tutto con un paio di clic.” 

Configurazione e distribuizione di Flagsmith: le integrazioni

“È stato davvero facile per noi impostare tutto. Utilizziamo la versione hosted su Flagsmith Cloud con il database Aurora AWS.  

Utilizziamo il multitenant Flagsmith. Abbiamo un unico progetto, che è Serenis, ma abbiamo anche sviluppi in produzione con tantissime feature flag. Utilizziamo flag programmati, richieste di modifica e tutte le funzionalità di gestione in modo da poter andare in produzione continuamente, senza problemi.

In termini di integrazioni, utilizziamo l'integrazione con Slack in modo che tutti ricevano una notifica su eventuali modifiche ai feature flag. Utilizziamo anche i webhook. L'integrazione con Mixpanel ci consente di inviare i dati dei feature flag alla nostra behavioral data platform in modo da poter unire i behavioral data degli utenti (clic, visualizzazioni, ecc.) con i dati delle feature flag.”

Utilizzo degli SDK di Flagsmith

“Utilizziamo gli SDK React e React Native e l'SDK Node.js. Avere questi SDK e la capacità di integrazione con i nostri strumenti esistenti (ad esempio Mixpanel) era il nostro requisito principale quando stavamo decidendo su quale tool utilizzare.”

Il nostro processo di revisione
Scopri di più
Approfondimento
Coinvolgiamo nella stesura dei contenuti clinici terapeuti con almeno 2.000 ore di esperienza.
Verifica
Studiamo le ricerche sul tema clinico e quando possibile le inseriamo in bibliografia.
Chiarezza
Perfezioniamo gli articoli dal punto di vista stilistico privilegiando la comprensione del testo.
Validano gli articoli
DDDDomenico De Donatis
Domenico De Donatis
Leggi la biografia

Domenico De Donatis è un medico psichiatra con esperienza nella cura dei disturbi psichiatrici. Laureato in Medicina e Chirurgia presso l'Università di Parma, ha poi ottenuto la specializzazione in Psichiatria all'Università Alma Mater Studiorum di Bologna. Registrato presso l'Ordine dei Medici e Chirurghi di Pescara con il n° 4336, si impegna a fornire trattamenti mirati per migliorare la salute mentale dei suoi pazienti.

DsMDott.ssa Martina Migliore
Dott.ssa Martina Migliore
Leggi la biografia

Romana trapiantata in Umbria. Laureata in psicologia e specializzata in Psicoterapia Cognitivo Comportamentale. Ex-ricercatrice in Psicobiologia e psicofarmacologia. Visione pratica e creativa del mondo, amo le sfide e trovare soluzioni innovative. Appassionata di giochi di ruolo e cultura pop, li integro attivamente nelle mie terapie. Confermo da anni che parlare attraverso ciò che amiamo rende più semplice affrontare le sfide della vita.

FRFederico Russo
Federico Russo
Leggi la biografia

Psicologo e psicoterapeuta con 8 anni di Esperienza. Iscrizione all’Ordine degli Psicologi - Regione Puglia, n° 5048.

Laurea in Psicologia clinica e della salute, Università degli Studi di Chieti. Specializzazione in Psicoterapia presso l'Istituto S. Chiara.

Crede che la parte migliore del suo lavoro sia il risultato: l’attenuazione dei sintomi, la risoluzione di una difficoltà, il miglioramento della vita delle persone.