5 motivi per imparare la programmazione mainframe

Se sei uno sviluppatore ambizioso, probabilmente tenderai a seguire il brusio del settore ovunque porti, che si tratti di Docker, Spark o Kendo. Rimanere all'avanguardia aumenta il valore di mercato, mantiene il tuo lavoro gratificante e ti aiuta a evitare l'errore potenzialmente fatale dell'autocompiacimento.

Ma se sei davvero ambizioso, potrebbe essere intelligente andare controcorrente e aggiungere una tecnologia decisamente poco interessante al tuo curriculum. In effetti, quella tecnologia è l'antitesi stessa del ronzio, perché le persone l'hanno dichiarata morta da prima che tu nascessi.

È il mainframe. Ecco cinque motivi per dargli un aspetto nuovo.

1. Le applicazioni aziendali sono applicazioni multipiattaforma / mainframe

Il mainframe rimane l'archivio principale della logica e dei dati aziendali principali presso le più grandi aziende del mondo. Pertanto, le applicazioni più importanti in qualsiasi grande azienda sfruttano quelle risorse mainframe sul back-end, anche se sono mobili / web / cloud sul front-end.

Esiste un malinteso comune sul fatto che le applicazioni e i database mainframe possano essere sfruttati efficacemente lasciandoli intatti e le aziende possono quindi essere agili digitalmente semplicemente adottando agile ovunque tranne che sul mainframe.

Questo semplicemente non è reale. Se utilizzi applicazioni e dati mainframe sul back-end, dovrai continuamente modificare quel back-end come parte del tuo continuo impegno per rimanere competitivo digitalmente. Potrebbe essere necessario modificare un po 'della logica dell'applicazione Cobol. Potrebbe essere necessario codificare alcune chiamate al database DB2. Potrebbe essere necessario modificare alcuni comportamenti della piattaforma per mantenere gli SLA delle prestazioni mentre si ridimensionano i carichi di lavoro back-end al passo con la crescente domanda di dispositivi mobili / web front-end.

Qualcuno dovrà sempre lavorare sul mainframe e il mainframe non verrà eliminato. La comprensione e la capacità di lavorare con tutte le piattaforme aziendali, incluso il mainframe, è quindi un must per ogni vero artigiano full-stack. L'alfabetizzazione mainframe è essenziale anche se si ha qualche speranza di svolgere un ruolo guida nello sforzo di un'azienda per raggiungere e mantenere l'agilità digitale competitiva.

2. L'emergere di processi e strumenti mainframe agili

C'è stato un tempo in cui la prospettiva di mettersi al passo con lo sviluppo di mainframe sarebbe stata scoraggiante. Gli sviluppatori mainframe hanno lavorato esclusivamente con strumenti arcani e "green screen" che richiedevano competenze estese e duramente conquistate sia negli strumenti stessi che nelle peculiarità della piattaforma IBM z / OS sottostante.

A causa di questi problemi relativi agli strumenti e alla conoscenza della piattaforma, l'unico modo per diventare competenti sul mainframe era dedicarsi completamente ad esso, e ciò significava sacrificare qualsiasi coinvolgimento con il cloud, i dispositivi mobili o qualsiasi altra tecnologia che catturasse il tuo interesse.

Non piu. Una nuova generazione di strumenti devops mainframe ora fornisce lo stesso aspetto grafico che ti aspetteresti da qualsiasi altro strumento che si collega a un IDE Eclipse. Questi nuovi strumenti mainframe offrono anche intelligenza incorporata che isola gli sviluppatori dalle idiosincrasie sottostanti di Cobol, PL / I, Assembler, DB2, CICS e simili.

Alcuni di questi strumenti si integrano anche direttamente in toolchain di distribuzione continua costruiti attorno a artisti del calibro di Atlassian, Jenkins, SonarSource e XebiaLabs.

Invece di intraprendere una curva di apprendimento lunga anni prima di avere la minima idea di cosa stai facendo sul mainframe, ora puoi mettere rapidamente le tue abilità di progettazione, codifica e QA agili per lavorare sulla piattaforma di elaborazione più importante in assoluto impresa.

3. Coinvolgimento pratico con la piattaforma meglio progettata nella storia umana

La stessa piattaforma mainframe è spesso poco compresa da coloro che la conoscono solo attraverso voci e miti. I mainframe IBM sono, infatti, notevoli opere di ingegneria. I mainframe aziendali in tutto il mondo eseguono collettivamente più di 1,15 milioni di transazioni CICS ogni secondo di ogni giorno, l'equivalente di tutte le ricerche Google, le visualizzazioni di YouTube, i Mi piace di Facebook e i tweet di Twitter combinati.

I mainframe sono anche estremamente efficienti dal punto di vista economico. In ambienti distribuiti e cloud, carichi di lavoro aggiuntivi spesso generano costi incrementali aggiuntivi, inclusi infrastruttura e personale. Nel cloud, questi costi possono tradursi in fatture mensili più elevate.

Il mainframe, d'altra parte, può gestire più carichi di lavoro, spesso senza infrastrutture o personale aggiuntivo. Tutto ciò che serve è un po 'di provisioning e configurazione della capacità esistente, perché, sì, il mainframe ha sempre virtualizzato l'allocazione delle risorse della piattaforma.

E quando è stata l'ultima volta che hai sentito parlare di un mainframe che ha ceduto a un attacco malware?

Gli sviluppatori che devono affrontare casi d'uso che richiedono sicurezza ottimale, megascala e prestazioni da urlo con affidabilità cinque-nove potrebbero trovarsi meglio con una piattaforma collaudata.

4. Un senso di missione e scopo superiore

Se sei un programmatore professionista, molto probabilmente non sei motivato solo dalle finanze. Richiedete anche un senso di missione e scopo nel vostro lavoro.

È difficile pensare a un lavoro più orientato alla missione rispetto allo sviluppo di mainframe. Dopo tutto, le applicazioni ei dati mainframe forniscono le basi per l'economia globale. Pochi lavori possono essere paragonati in termini di grandezza allo sviluppo di mainframe aziendali. Il banking globale, l'assicurazione globale e la vendita al dettaglio globale dipendono da questo, così come i viaggi aerei, quasi universalmente.

Ciò è particolarmente vero in quanto le grandi imprese in tutti i mercati devono affrontare l'interruzione di nuovi concorrenti più piccoli che stanno sfruttando appieno l'adattabilità offerta dalla combinazione di cloud e fornitura continua. Queste grandi aziende devono cambiare o morire, quindi sono più aperte che mai al rinnovamento delle loro applicazioni mainframe principali.

In poche parole, se vuoi che ogni riga di codice che scrivi abbia il massimo impatto positivo sul maggior numero di persone, lo sviluppo del mainframe è il posto giusto.

5. L'economia della domanda e dell'offerta

Sebbene la missione sia un degno motivatore, nessuno dovrebbe trascurare gli incentivi finanziari per gli sviluppatori che raggiungono l'alfabetizzazione nella programmazione mainframe. Un'intera generazione di sviluppatori di mainframe aziendali veterani sta attualmente abbandonando la forza lavoro mentre si spinge oltre l'età pensionabile. Allo stesso tempo, la domanda di sviluppo mainframe continua a crescere a causa della necessità sopra descritta di supportare applicazioni multipiattaforma con una maggiore frequenza di aggiornamenti a Cobol, DB2, Assembler e altre risorse back-end in esecuzione su IBM z / OS.

Le grandi imprese devono in qualche modo colmare questa lacuna di competenze. È improbabile che lo faccia assumendo sviluppatori solo per mainframe, perché lo sviluppo del mainframe è quasi sempre fatto nel contesto di un'applicazione multipiattaforma. Invece, le grandi aziende soddisferanno le loro esigenze di competenze di devops mainframe agili sia coltivando l'alfabetizzazione mainframe tra il loro personale IT interno sia assumendo appaltatori con forti competenze cross-platform che includono alfabetizzazione funzionale con strumenti devops mainframe.

La semplice legge della domanda e dell'offerta rende quindi l'alfabetizzazione mainframe molto più preziosa dal punto di vista finanziario rispetto alle competenze ampiamente disponibili e mercificate su piattaforme più popolari come mobile e web.

Mainframe: la prossima generazione

C'è un'altra ragione per cui gli sviluppatori dovrebbero considerare l'alfabetizzazione mainframe. Non è così difficile. Il codice, dopo tutto, è codice. Nessuno ha bisogno di farsi intimidire dal mainframe. Una nuova generazione di strumenti devops sta rendendo più semplice per una nuova generazione di sviluppatori la comprensione visiva del codice e dei dati mainframe. Questi strumenti aiutano anche gli sviluppatori a evitare errori e ottimizzare le prestazioni dell'applicazione. Altrettanto importante, portano le attività di sviluppo mainframe nelle più ampie toolchain devops multipiattaforma dell'IT.

Non devi fare una scelta tra il mainframe e le piattaforme più mainstream. Puoi diventare rapidamente un esperto di mainframe senza sacrificare in alcun modo la valuta delle tue altre abilità. In effetti, è esattamente la combinazione di competenze mainframe e mainstream che ti renderà più prezioso per le grandi imprese.

Il mainframe non sta andando da nessuna parte. Le grandi aziende hanno semplicemente investito troppo nelle applicazioni e nei dati mainframe. La sostituzione della piattaforma è generalmente poco pratica e ha un costo proibitivo.

In conclusione: è un ottimo momento per dare una nuova occhiata al mainframe. La necessità di sviluppatori esperti di mainframe è più grande che mai e le opportunità per lo sviluppo di mainframe sono più redditizie che mai. Soprattutto, lavorare sul mainframe potrebbe essere molto più divertente e gratificante di quanto tu possa immaginare.

Christopher O'Malley è CEO di Compuware.

Il New Tech Forum offre un luogo per esplorare e discutere la tecnologia aziendale emergente in profondità e ampiezza senza precedenti. La selezione è soggettiva, in base alla nostra scelta delle tecnologie che riteniamo importanti e di maggiore interesse per i lettori. non accetta materiale di marketing per la pubblicazione e si riserva il diritto di modificare tutti i contenuti forniti. Invia tutte le richieste a [email protected]