Translated

Raddoppiare la velocità di sviluppo, attraverso l’aggiornamento di un sistema avanzato

Potenziare la scalabilità e l’integrazione di applicazioni proprietarie

Tipologia

Backend

Settore

Traduzioni

Anno

2018 – on going

La Sfida

Sviluppo di un ecosistema agile e scalabile

Translated offre servizi di traduzione professionale in oltre 200 lingue e 40 aree di specializzazione, combinando creatività umana e intelligenza artificiale.

Sin dal 1999, Translated è stata pioniera di soluzioni di intelligenza artificiale nel settore delle traduzioni. Nel 2018, si è trovata ad affrontare una sfida cruciale: sviluppare un’infrastruttura avanzata per il proprio ecosistema, al fine di gestire la complessità dei frequenti aggiornamenti di prodotti e servizi, dimezzando le tempistiche di sviluppo.

Gli obiettivi
  • Maggiore scalabilità e integrazione: garantire la replicabilità delle applicazioni proprietarie su qualsiasi infrastruttura.
  • Gestione delle versioni: implementare un sistema di versionamento per abilitare aggiornamenti agili e rilasci efficaci delle nuove funzionalità.
  • Avanzamento tecnologico: adeguare il sistema secondo i più recenti sviluppi tecnologici del settore, snellendo l’architettura precedente.
  • Manutenibilità del codice: progettare una soluzione duratura che riduca e prevenga il debito tecnico, assicurando così la massima facilità di manutenzione.
La Soluzione
Git e Docker per la migrazione e aggiornamento del codice sorgente

Abbiamo effettuato un’analisi di fattibilità della migrazione della code base verso un nuovo sistema agile e scalabile. Con il responsabile del team interno di Translated, abbiamo deciso di puntare su Git, software per il controllo di versione distribuito, che ha permesso di gestire ed aggiornare il codice sorgente in modo molto più efficiente e collaborativo.

Abbiamo introdotto Docker, strumento che permette di creare, distribuire e gestire applicazioni all’interno di container, facilitando la gestione dei rilasci e l’aggiornamento alle versioni più recenti del linguaggio di programmazione originario.

Il processo di modularizzazione: dal monolite al cloud

La riorganizzazione dell’intero progetto è stato cruciale: abbiamo scorporato la codebase monolitica in un’architettura composta da diversi micro-servizi, permettendo una maggiore flessibilità di integrazione nei singoli clienti corporate.

Questo approccio ha reso possibile e più semplice la migrazione verso una modalità ibrida di cloud, composta da un cloud privato e un’infrastruttura proprietaria.

La procedura ci ha permesso di rendere lo stack tecnologico più robusto e future-proofing, andando ad incrementare anche parametri come la scalabilità, la sicurezza, le prestazioni applicative e la sostenibilità energetica.

Garantire uno sviluppo agile dei prodotti

A fronte dell’ottimizzazione effettuata, Translated aveva la necessità di proseguire le proprie scelte di prodotto e continuare a rispettare standard e best practice ingegneristiche.

I prodotti interni ed esterni dovevano adattarsi ai nuovi sistemi, senza compromettere l’aggiunta di nuove feature e senza coinvolgere l’intera l’infrastruttura.

La strategia adottata è stata quella di affrontare ogni prodotto, per riadattarlo al nuovo ecosistema. Abbiamo studiato meticolosamente ognuno di essi per comprenderne appieno la situazione attuale (As-is), migliorare l’accessibilità dei dati e l’esperienza utente (UX).

Una volta discusse con gli stakeholder le modifiche proposte, è iniziato il processo di prototipazione, design e sviluppo software, volto al rifacimento completo del prodotto nel corso di pochi mesi.

Evoluzione
Dall’ingegneria all’operatività

Durante la ristrutturazione del codice, sono stati affrontati diversi fattori legati sia all’ingegneria che all’efficienza operativa del Cliente.

La velocità di sviluppo è raddoppiata e il team di sviluppo ha registrato un miglioramento nella qualità della vita lavorativa, potendosi concentrare su nuove funzionalità e sul rendere stabili ed ottimizzate quelle già esistenti.

Attraverso un approccio metodico e collaborativo, sono state sviluppate soluzioni per migliorare la gestione finanziaria, operativa e strategica, contribuendo a consolidare ed accrescere il core business di Translated.

Una sinergia diventata partnership

Un elemento chiave del successo è stata la stretta collaborazione con il team IT di Translated in tutto il processo operativo. Abbiamo lavorato con obiettivi comuni, mantenendo un dialogo costante attraverso riunioni giornaliere per valutare il progresso e risolvere eventuali ostacoli.

Anche sul piano interpersonale, non mancano le opportunità di incontro, con riunioni e raduni annuali nella sede del cliente, per incrementare la sinergia e la conoscenza interpersonale, discutere degli obiettivi futuri, consolidando un solido rapporto di partnership.

Impatto generato

Maggiore resilienza del sistema

Raddoppio velocità di rilascio di feature

Migliore performance degli applicativi

Dimezzamento 
tempistiche di sviluppo

Team

Marco Ciotoli

Success Manager

Cristian Belli

Product Lead

Elia De Santis

Backend Developer

Cristian Belli

Team Lead

Matteo Pulcrano

Backend Developer

Stefan Jovanovic

Backend Developer

“L’approccio vincente è stato analizzare a fondo le ragioni di ogni compito, coinvolgendo tutti nella sua risoluzione e ottenendo risultati più significativi e soddisfacenti.”

Cristian Belli

Product Lead – Humans

Verso un’infrastruttura più resiliente e funzionale per le persone

Il processo di ringiovanimento della code base ha generato numerosi benefici sia a livello tecnico che aziendale. Le performance degli applicativi sono migliorate, i costi delle infrastrutture hardware e software diminuiti e la soddisfazione degli utenti finali è aumentata grazie ad un’esperienza utente migliorata.

Hai una sfida simile?

“Ho scelto di lavorare con il Team di Humans perché sa sempre risolvere ogni criticità, ottimizzando i tempi di consegna e raggiungendo risultati impeccabili.”

Marco Trombetti

Founder Translated

Scopri altri progetti