3 skills tecniche che vi servono nell’era del Cloud Computing

Nell’era del cloud computing cambia tutto, anche le richieste di lavoro e le skills necessarie per essere assunti. Si fa avanti il concetto di DevOps, ovvero di persone che sono esperte di sistemistica ma anche di programmazione e riescono ad affrontare i problemi delle aziende semplicemente unendo queste due aree di competenza; il cloud computing cambia l’approccio richiesto da parte degli esperti di IT e modifica anche le loro competenze tecniche, dalla gestione dei sistemi operativi alla progettazione di applicazioni che verranno poi posizionate in una infrastruttura di Cloud Computing. Un famoso articolo di Forbes stima che il cloud computing possa creare oltre 14 milioni di nuovi posti di lavoro entro il 2015!

Quali sono le 5 skills necessarie per poter affrontare le nuove posizioni di lavoro IT nel 2013?

1. Non solo esperti di sistema

Proprio così, se una volta era sufficiente essere esperti di sistemi Linux o Windows, oggi è fondamentale avere anche forti nozioni di sviluppo software, almeno in 1 linguaggio di programmazione. Questo perchè le piattaforme di cloud computing sono sempre più integrate a livello di software. Spesso si ha a che fare con le API dell’infrastruttura che ospita i siti web, e la necessità di utilizzarle implica l’integrazione con il resto dei sistemi aziendali. Non un lavoro per i soli sviluppatori ma una sfida anche per chi fino a ieri ha gestito tutto il comparto server.

Oggi un sistema di backup spesso implica la configurazione di più applicazioni all’interno dell’azienda e l’utilizzo di API per fare una copia dei dati anche all’esterno. Questo fino a poco tempo fa sarebbe stato un compito svolto esclusivamente dal sistemista: oggi le sue competenze continuano a essere utili ma dovranno scontrarsi con la necessità di sapere leggere e scrivere codice, almeno al livello più semplice.

2. Capacità di “ragionare” su diversi Vendor di cloud computing

Nel momento in cui l’infrastruttura server dell’azienda è posizionata su un servizio di cloud computing può capitare che la persona che segue il suo sviluppo debba interagire con diversi vendor: da Amazon ad aziende locali che forniscono diversi servizi cloud, la necessità di integrazione degli stessi richiede in primis la conoscenza approfondita delle piattaforme e la capacità di utilizzare i singoli strumenti a livello di network, storage e computazione.

Un caso singolare: l’integrazione di più servizi di cloud computing per fornire visibilità da più paesi del mondo richiede la capacità di integrare più piattaforme di cloud computing, non solo per servire le pagine e le applicazioni, ma anche per l’implementazione di procedure di backup, replica dei files e procedure di disaster recovery.

3. Progettare infrastrutture che possano crescere e scalare in base agli utenti

Il cloud computing impone la scrittura di software in modo diverso rispetto al passato, principalmente per il fatto che queste soluzioni di hosting sono pensate per scalare al crescere del numero di persone che utilizza le applicazioni o i siti web che ospitano. Fondamentale quindi saper progettare database e istanze web che abbiano software in grado di far scalare l’intera infrastruttura: dai database NoSQL fino alla gestione di istanze di webserver distribuite, utilizzando Nginx o software pensati per lavorare in parallelo su più server.

Non sono skills che si guadagnano semplicemente, la maggior parte di queste richiedono un approccio “fisico” ai problemi, spesso con tanta esperienza in produzione. Il nostro consiglio è quello di tenersi aggiornati e provare costantemente a interagire e sfruttare nuovi ambienti di cloud computing pubblici e non, da quelli PaaS (come Microsoft Azure o Google App Engine) a quelli IaaS, che come nel nostro caso, possono essere basati su software molto noti come OpenStack.