Vai al contenuto
Tutti i case study
2019 — 2020Angular developer · Frontend lead

ELA — il portale sugli esiti dei laureati polacchi

Una base di codice, tre piattaforme, una voce di budget ricorrente in meno.

Realizzato presso OPI-PIB
1 → 3
base di codice per piattaforme
2
app mobile pubblicate
public sector
obblighi di accessibilità

Contesto

Frontend di ELA, il sistema nazionale che monitora occupazione e retribuzioni dei laureati polacchi, sviluppato presso OPI-PIB per il Ministero della Scienza. Oltre al portale ho proposto e costruito una strategia multipiattaforma che ha riusato lo stesso repository Angular invece di finanziare due applicazioni native.

Il prodotto

Cosa fa
Pubblica come se la cavano davvero i laureati polacchi sul mercato del lavoro — retribuzioni e occupazione dalla laurea fino a cinque anni dopo, per corso di studi e per ateneo.
Chi lo usa
Studenti che devono scegliere un corso, più ricercatori e analisti che lavorano sui dataset e sui report sottostanti.
Da dove vengono i dati
Registri della previdenza sociale (ZUS) incrociati con il sistema nazionale dell'istruzione superiore (POL-on).
Chi lo gestisce
Costruito e mantenuto da OPI-PIB, l'istituto di ricerca statale, per conto del Ministero della Scienza e dell'Istruzione Superiore.

Il problema

L'istituzione aveva bisogno di un portale pubblico molto reattivo e accessibile, costruito a partire da prototipi grafici dettagliati — e, separatamente, di una presenza mobile. La risposta di default era commissionare applicazioni native iOS e Android, cioè tre basi di codice e tre contratti di manutenzione per un solo prodotto.

Architettura

Architettura — semplificata
Adobe XDprototipi dettagliatiUn solo repositoryAngular · TypeScriptCapacitorJSshell nativa, stessa appWebresponsive · accessibileiOSCapacitorJSAndroidCapacitorJS1 → 3piattaforme per correzioneOgni correzione si scrive una volta e arriva su tutte e tre le destinazioni.

Un repository Angular, tre destinazioni di rilascio. Non c'è una base di codice mobile parallela né un fork per piattaforma: la stessa applicazione viene incapsulata per iOS e Android, quindi ogni correzione e ogni funzionalità si scrive una volta sola e arriva su tutte e tre.

Specifica tecnica

Frontend
Angular, costruito dai prototipi Adobe XD, responsive su tutta la gamma di dispositivi che un portale pubblico deve servire.
Mobile
CapacitorJS che incapsula la stessa applicazione Angular, pubblicata come app iOS e Android.
Team
Due sviluppatori frontend, due designer UX e un tester; ho guidato l'implementazione frontend.
Accessibilità
Costruito secondo gli obblighi di accessibilità che valgono per i servizi pubblici polacchi — navigazione da tastiera, semantica e contrasto come criteri di accettazione.
Perimetro
Portale pubblico più la strategia mobile; i dataset analitici e i report passano dalla stessa interfaccia.

Come l'ho costruito

  1. Ho guidato l'implementazione frontend in un team di due sviluppatori frontend, al fianco di due designer UX e un tester — i prototipi erano loro, renderli reali, responsive e veloci era mio.

  2. Ho tradotto prototipi Adobe XD complessi in un'interfaccia Angular fedele al design e allo stesso tempo davvero responsive su tutta la gamma di dispositivi che un portale pubblico deve servire.

  3. Ho trattato l'accessibilità come requisito e non come voce di audit — la portata del settore pubblico in Polonia rende navigazione da tastiera, semantica e contrasto parte della definizione di finito.

  4. Ho proposto e costruito una strategia multipiattaforma con CapacitorJS, incapsulando l'applicazione Angular esistente in shell native e pubblicandola su entrambi gli store.

  5. L'ho tenuta come un'unica applicazione, non come una build web più un fork mobile: non esiste una seconda base di codice, ed è da lì che arriva il risparmio ricorrente.

Risultato

  • Un'unica base di codice che serve web, iOS e Android invece di tre sviluppi paralleli.
  • Rimossa una voce annuale ricorrente dal budget di sviluppo e manutenzione dell'istituzione — la cifra esatta spetta a loro divulgarla, non a me.
  • Due applicazioni mobile pubblicate da un repository che non era mai stato pensato per produrne.
  • Un portale pubblico accessibile e responsive, consegnato fedelmente a partire dal design system originale.

Cerchi qualcuno che sappia prendersi tutto il pezzo?

Ruolo full-time, progetto a contratto o un'architettura che ha bisogno di un secondo parere — raccontami che forma ha. Se non sono la persona giusta te lo dico subito.

Scrivimi