Soldato universale o specialista ristretto? Cosa dovrebbe sapere ed essere in grado di fare un ingegnere DevOps

Soldato universale o specialista ristretto? Cosa dovrebbe sapere ed essere in grado di fare un ingegnere DevOps
Tecnologie e strumenti che un ingegnere DevOps deve padroneggiare.

DevOps è una tendenza in crescita nel settore IT; la popolarità e la domanda per questa specialità stanno gradualmente crescendo. GeekBrains è stato aperto non molto tempo fa Facoltà di DevOps, dove vengono formati specialisti del profilo pertinente. A proposito, la professione DevOps viene spesso confusa con quelle correlate: programmazione, amministrazione di sistema, ecc.

Per chiarire cos'è effettivamente DevOps e perché sono necessari rappresentanti di questa professione, abbiamo parlato con Nikolai Butenko, architetto Mail.ru soluzioni cloud. È stato coinvolto nello sviluppo del programma del corso DevOps per docenti e insegna anche agli studenti del terzo trimestre.

Cosa dovrebbe sapere ed essere in grado di fare un buon DevOps?

Qui è meglio dire subito cosa non dovrebbe poter fare. C'è un mito secondo cui un rappresentante di questa professione è un'orchestra individuale che può scrivere un ottimo codice, quindi testarlo e nel tempo libero va a riparare le stampanti dei suoi colleghi. Magari aiuta anche in magazzino e sostituisce il barista.

Per sapere cosa dovrebbe essere in grado di fare uno specialista DevOps, torniamo alla definizione del concetto stesso. DevOps è l'ottimizzazione del tempo che intercorre dallo sviluppo del prodotto al rilascio del prodotto sul mercato. Di conseguenza, lo specialista ottimizza il processo tra sviluppo e funzionamento, parla la loro lingua e costruisce una pipeline competente.

Cosa devi sapere ed essere in grado di fare? Ecco cosa è importante:

  • Sono necessarie buone competenze trasversali, poiché è necessario interagire contemporaneamente con più reparti all'interno della stessa azienda.
  • Pensiero analitico strutturale per guardare i processi dall'alto e capire come ottimizzarli.
  • È necessario comprendere da soli tutti i processi di sviluppo e operativi. Solo allora potranno essere ottimizzati.
  • Per creare un processo di produzione unificato sono inoltre necessarie eccellenti capacità di pianificazione, analisi e progettazione.

Tutti i rappresentanti DevOps sono uguali o ci sono differenze all'interno della specialità?

Recentemente sono emersi diversi rami all'interno di una specialità. Ma in generale, il concetto di DevOps comprende principalmente tre aree: SRE (amministratore), Developer (sviluppatore), Manager (responsabile dell'interazione con l'azienda). Uno specialista DevOps comprende le esigenze dell'azienda e organizza un lavoro efficiente tra tutti creando un processo unificato.

Ha inoltre una buona conoscenza di tutti i processi del ciclo di sviluppo del prodotto, dell'architettura e comprende la sicurezza delle informazioni a livello necessario per valutare i rischi. Inoltre, i DevOps conoscono e comprendono gli approcci e gli strumenti di automazione, nonché il supporto pre e post rilascio per programmi e servizi. In generale, il compito di DevOps è vedere l'intero sistema come un tutt'uno, dirigere e gestire i processi che contribuiscono allo sviluppo di questo sistema.

Soldato universale o specialista ristretto? Cosa dovrebbe sapere ed essere in grado di fare un ingegnere DevOps
Sfortunatamente, sia in Russia che all’estero, i datori di lavoro non sempre comprendono l’essenza di DevOps. Osservando le offerte di lavoro pubblicate, noterai che quando chiamano un posto vacante DevOps, le aziende cercano amministratori di sistema, amministratori Kubernetes o tester in generale. Particolarmente sorprendente è il mix molto eterogeneo di conoscenze e competenze nei posti vacanti DevOps di HH.ru e LinkedIn.

È importante notare che DevOps non è solo una specialità, è prima di tutto una metodologia per trattare l'infrastruttura come codice. Come risultato dell'implementazione della metodologia, tutti i membri del team di sviluppo vedono e comprendono non solo la propria area di lavoro, ma hanno una visione del funzionamento dell'intero sistema.

In che modo DevOps può aiutare l'azienda per cui lavori?

Uno dei parametri più importanti per il business è il Time-to-Market (TTM). Questo è il time to market, cioè il periodo di tempo durante il quale avviene il passaggio dall’idea di creare un prodotto al lancio del prodotto in vendita. Il TTM è particolarmente importante per i settori in cui i prodotti diventano rapidamente obsoleti.

Con l'aiuto di DevOps, numerosi noti rivenditori nella Federazione Russa e all'estero hanno iniziato a sviluppare nuove direzioni. Queste aziende si stanno spostando online in massa, abbandonando completamente o parzialmente le piattaforme offline. In queste condizioni è necessario un rapido sviluppo di applicazioni e servizi, cosa impossibile senza l’utilizzo degli strumenti DevOps.

Soldato universale o specialista ristretto? Cosa dovrebbe sapere ed essere in grado di fare un ingegnere DevOps
Di conseguenza, alcuni rivenditori sono riusciti ad accelerare il processo di lancio delle applicazioni e dei servizi necessari letteralmente in un giorno. E questo è il fattore di concorrenza più importante nel mercato moderno.

Chi può diventare un DevOps?

Naturalmente, qui sarà più facile per i rappresentanti delle specialità tecniche: programmatori, tester, amministratori di sistema. Chiunque entri in questo campo senza una formazione adeguata deve essere preparato ad apprendere le basi della programmazione, del test, della gestione dei processi e dell'amministrazione del sistema. E solo allora, quando tutto questo sarà padroneggiato, sarà possibile iniziare a studiare il concetto DevOps nel suo insieme.

Per comprendere meglio il concetto e farsi un'idea delle conoscenze e competenze richieste, vale la pena leggere la Guida DevOps, studiare il Progetto Phoenix, nonché la metodologia “Filosofia DevOps. L'arte della gestione informatica". Un altro grande libro - "DevSecOps La strada verso un software più veloce, migliore e più potente".

DevOps funziona meglio per coloro che hanno una mentalità analitica e sono in grado di utilizzare un approccio sistematico. È difficile dire quanto tempo occorrerà a un principiante per diventare un grande DevOpser. Qui tutto dipende dalla base iniziale, dall'ambiente e dai compiti da risolvere, oltre che dalle dimensioni dell'azienda. Le aziende che necessitano di devops includono molti giganti della tecnologia: Amazon, Netflix, Adobe, Etsy, Facebook e Walmart.

In conclusione, più della metà delle offerte di lavoro DevOps sono in realtà destinate ad amministratori di sistema esperti. Tuttavia, la necessità di DevOps sta gradualmente crescendo e ora c'è una grave carenza di specialisti competenti in questo profilo.

Per diventare un tale specialista, è necessario studiare nuove tecnologie, strumenti, utilizzare un approccio sistematico nel corso del lavoro e applicare con competenza l'automazione. Senza di esso, è molto difficile, se non impossibile, organizzare DevOps in modo competente.

Fonte: habr.com

Aggiungi un commento