ELA — il portale sugli esiti dei laureati polacchi
Una base di codice, tre piattaforme, una voce di budget ricorrente in meno.
- 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
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
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.
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.
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.
Ho proposto e costruito una strategia multipiattaforma con CapacitorJS, incapsulando l'applicazione Angular esistente in shell native e pubblicandola su entrambi gli store.
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.