Come abbiamo approfondito nell’articolo relativo alle differenze tra frontend e backend la figura dello sviluppatore backend è quella che si occupa di scrivere e mantenere la cosiddetta “business logic” di un’applicazione web. La costante ibridazione tra il mondo dello sviluppo e quello della gestione infrastrutturale ha fatto sì che negli ultimi anni questa figura e l’architettura tipo di un’applicazione web cambiassero profondamente. Vediamo in che modo ciò è avvenuto e cosa possiamo pensare di aspettarci nel futuro immediato.
Fino a qualche anno fa, quando la scelta di tecnologie web era decisamente più limitata di oggi e le tendenze pratiche di sviluppo si diffondevano in modo molto più lento, il lato backend delle applicazioni poteva avere le seguenti caratteristiche:
Oggi, invece, con il moltiplicarsi dei servizi erogati su internet, la loro crescente complessità, e necessità di manodopera, l’impostazione tipica del backend è cambiata molto.
Attualmente sono di moda nell’ambito dello sviluppo web linguaggi ad alto livello o interpretati, come per esempio:
Questi linguaggi godono di librerie HTTP e framework robusti e facili da imparare, che permettono agli sviluppatori di creare servizi e API in modo più agile e mantenibile.
La tendenza negli anni è diventata infatti quella di frammentare le logiche di un applicativo in tanti atomici microservizi, ciascuno contenuto per funzioni e responsabilità.
A contribuire a questo cambiamento troviamo anche la diffusione delle tecnologie container, utili alla portabilità delle applicazioni e che hanno permesso allo sviluppatore backend di interfacciarsi con il lato più infrastrutturale delle ICT.
La crescente frammentarietà e “decentralizzazione” del backend ha portato alla diffusione delle cosiddette “architetture serverless” e della programmazione “a eventi”. Questo approccio prevede che il codice venga eseguito on demand solo all’occorrenza di determinati input, senza risiedere su un server ma disponendo di risorse che vengono dinamicamente allocate dal provider cloud solo quando necessario. È sulla scia di questo che, al momento, si prospettano le evoluzioni future del backend.
Le attività principali di un backend developer sono:
Le competenze richieste da una figura che si occupa di queste attività sono molteplici e complesse, come abbiamo visto. Questo presuppone una formazione estesa riguardo ad aspetti sistemistici e di sviluppo che ITS fornisce attraverso l’offerta formativa prevista dal corso specializzato in questi temi: scopri il corso per diventare backend developer!