Come può un Sys. Competenza di amministratore per lavorare come ingegnere DevOps?


10

Sto cercando consigli su come diventare un ingegnere DevOps dedicato.

Ho sempre desiderato lavorare su progetti relativi allo sviluppo perché amo la programmazione, ma sfortunatamente non ne ho mai avuto la possibilità. In precedenza ho lavorato a progetti freelance usando .Net e PHP e sono certificato in Java SE ma non l'ho mai usato.

La mia esperienza lavorativa comprende l'essere nell'amministrazione di sistemi e applicazioni. Principalmente sono un anziano ora in questo campo, quindi un passaggio allo sviluppo non è preferito in quanto dovrei ricominciare da giovane. Tuttavia, penso che DevOps sarà perfetto per me, ma devo sapere cosa devo studiare per colmare le lacune nelle mie conoscenze per essere un buon ingegnere DevOps dedicato (preferibilmente la parte sulla scrittura di automazione e strumenti).

Si prega di raccomandare cosa dovrei studiare, ad esempio ho sentito che Python, Perl e Ruby sono ottimi per DevOps, ma cos'altro dovrei iniziare e quali sono le competenze obbligatorie che devo prima coprire?

La mia attuale serie di abilità:

Sys. Admin

  • Amministrazione Unix (HP-UX, Solaris) e Linux (Ubuntu, Red hat, CentOS)
  • Amministrazione di tecnologie middleware (WebLogic, Apache-Tomcat, WebSphere, MQ)
  • Scripting Bash / Shell

  • Configurazione e amministrazione del server Web

  • Ottima conoscenza dei comuni sistemi di database (SQL Server, Oracle, MySQL, ecc.)
  • Servizi Web e integrazioni SOAP / REST / API
  • Oracle Business Intelligence Suite (OBIEE, DAC, Informatica)
  • Sviluppo e amministrazione dei rimedi ITSM.
  • SAP Business Object (Analytics).
  • Splunk
  • Service Center - Gestione dei servizi IT abilitati per ITIL
  • Conoscenza approfondita delle tecnologie delle applicazioni Web.

Sviluppatore

  • Competenze di sviluppo di esperti in Microsoft Visual Basic.
  • Eccellenti capacità di sviluppo in Java SE.
  • Sviluppo Microsoft .Net
  • Sviluppo di MS SharePoint.
  • Esperto in MS Office con conoscenza di esperti in macro e automazione in tutte le applicazioni MS Office.
  • Sviluppo di PHP intermedio (CakePHP)

Risposte:


8

Dai un'occhiata ai ruoli di DevOps Engineer e controlla l'elenco delle tecnologie che stanno cercando. In genere sono necessarie competenze di scripting di automazione (come Bash, Python o PowerShell), abilità di gestione della configurazione (come Chef, Puppet o Ansible) e alcune esperienze fondamentali nel mantenimento e configurazione di una pipeline Build / Release. Per questo, cerca di fare esperienza con strumenti CI / CD come AppVeyor (.NET), Jenkins, Travis CI ecc. Dovresti anche avere familiarità con Git e sistemi di controllo del codice sorgente in generale come BitBucket o TFS. Potresti anche trarre vantaggio dalla conoscenza delle tecniche di test automatizzate.

Se non lo hai già fatto, prendi in considerazione l'hosting di alcuni prodotti open source in Github e la creazione di una pipeline per loro che esegue test automatici sugli commit e (se possibile) pubblica su un sistema di gestione dei pacchetti. Questa è un'ottima esperienza e dimostra le tue abilità.

Per una comprensione più generale della filosofia di DevOps (attenzione che si tratta di una cultura oltre che di un set tecnologico), leggere quanto più possibile sull'argomento e iniziare a seguire (ad esempio via Twitter) artisti del calibro di Gene Kim, Jez Humble e Patrick Debois. Inoltre ti consiglio di leggere il Manuale DevOps che hanno creato. È una spiegazione molto approfondita di cosa sia DevOps e di come le organizzazioni potrebbero adottarlo.

Puoi anche dare un'occhiata ai Meet up e alle conferenze di DevOps (come Velocity , DevOpsDays e Config Management Camp ). Le opportunità ovviamente varieranno a seconda di dove ti trovi nel mondo.


ben detto .. dalla mia esperienza derivante dallo sviluppo in DevOps e dal lavorare con gli amministratori di sistema in genere mancano delle competenze più richieste sotto forma di controllo di versione (Git), abilità di scripting di base (bash o Python) e di essere in grado di costruire pipeline usando qualcosa di simile a Jenkins Pipeline DSL .. Consiglierei anche terraform oltre a conoscere uno dei principali strumenti CM (burattino, chef, ansible, salt)
TechDawg270

2

Crea un elenco di strumenti DevOps che sembrano essere popolari, scarica, segui il manuale e fallo.

  • Vagabondo
  • ansible
  • docker
  • Kubernetes / OpenShift

Questo ti darà un buon inizio di marcia con gli strumenti più vicini al lato "Ops" e, se riuscirai anche a capire perché e cosa vengono utilizzati per questi strumenti, ti renderà un degno membro della maggior parte dei team. Puoi raccogliere più bit e pezzi dal lato Dev mentre procedi (ad es. Tubazioni CI / CD, ecc.).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.