Wer ist ein DevOps-Ingenieur, was macht er, wie viel verdient er und wie wird er einer?

DevOps-Ingenieure sind multidisziplinäre Spezialisten, die wissen, wie Prozesse automatisiert werden und wie Entwickler, Qualitätssicherung und Manager arbeiten. Sie wissen zu programmieren, beherrschen schnell komplexe Werkzeuge und verlieren sich nicht in einer ungewohnten Aufgabe. Es gibt nur wenige DevOps-Ingenieure - sie sind bereit, 200 bis 300.000 Rubel zu zahlen, aber es gibt immer noch viele offene Stellen.

Dmitry Kuzmin erklärt, was genau DevOps tut und was studiert werden muss, um sich für eine solche Stelle zu bewerben. Bonus - wichtige Links zu Büchern, Videos, Kanälen und der professionellen Community.

Was macht der DevOps-Ingenieur?


In einer Situation mit DevOps ist es wichtig, die Begriffe nicht zu verwechseln. Tatsache ist, dass DevOps kein spezifischer Tätigkeitsbereich ist, sondern eine professionelle Philosophie. Dies ist eine Methode, mit der Entwickler, Tester und Systemadministratoren aufgrund von Automatisierung und Nahtlosigkeit schneller und effizienter arbeiten können.

Dementsprechend ist der DevOps-Ingenieur ein Spezialist, der diese Methodik im Arbeitsprozess implementiert:

  • In der Planungsphase hilft der DevOps-Techniker bei der Entscheidung, welche Architektur die Anwendung verwendet, wie sie skaliert wird, und bei der Auswahl eines Orchestrierungssystems.
  • Als Nächstes werden der Server, die automatische Überprüfung und das Hochladen von Code sowie die Überprüfung der Umgebung eingerichtet.
  • Anschließend werden Tests automatisiert und Bereitstellungsaufgaben gelöst.
  • . DevOps , , .
  • , , QA, .

, , . , , , , . , , — DevOps-.

Auf dem Personalmarkt herrscht Verwirrung. Manchmal sucht ein Unternehmen nach DevOps-Ingenieuren für die Position eines Systemingenieurs, Bauingenieurs oder einer anderen Person. Abhängig von der Größe des Unternehmens und der Richtung ändern sich auch die Aufgaben - irgendwo suchen sie eine zu konsultierende Person, irgendwo möchten sie alles automatisieren, aber irgendwo müssen sie erweiterte Funktionen eines Systemadministrators ausführen, der programmieren kann.

Was Sie brauchen, um im Beruf zu beginnen


Der Eintritt in den Beruf erfordert eine vorherige Ausbildung. Nur von Grund auf zu Kursen zu kommen, ohne etwas in der IT zu verstehen, und das Lernen auf der Junior-Ebene wird scheitern. Benötigen Sie einen technischen Hintergrund:

  • , , . , , , . , Linux, .
  • , — , .
  • , — Python Go, (- ), .
  • — , .

Es ist nicht erforderlich, alle oben genannten Punkte genau zu kennen. Ein Mindestmaß an Schulung reicht aus, um mit dem Erlernen von DevOps zu beginnen. Wenn es einen solchen technischen Hintergrund gibt, versuchen Sie, sich für Kurse anzumelden.

Was DevOps wissen sollte


Ein guter DevOps-Ingenieur ist ein multidisziplinärer Spezialist mit einem sehr breiten Horizont. Für eine erfolgreiche Arbeit müssen Sie mehrere IT-Anweisungen gleichzeitig verstehen.

Entwicklung


DevOps schreibt ein Skript, mit dem Entwickler Code auf dem Server installieren können. Erstellt ein Programm, das "on the fly" die Reaktionsfähigkeit von Datenbanken testet. Schreibt eine Anwendung zur Versionskontrolle. Schließlich wird er einfach ein potenzielles Entwicklungsproblem bemerken, das auf dem Server auftreten kann.

Ein starker DevOps-Spezialist kennt mehrere für die Automatisierung geeignete Sprachen. Er versteht sie nicht gründlich, schreibt aber schnell ein kleines Programm oder liest den Code eines anderen. Wenn Sie noch nie auf Entwicklung gestoßen sind, beginnen Sie mit Python - es hat eine einfache Syntax, es ist einfach, mit Cloud-Technologien darauf zu arbeiten, es gibt viele Dokumentationen und Bibliotheken.

Betriebssysteme


Es ist unmöglich, alle Funktionen jeder Version jedes Systems zu kennen - Tausende von Stunden können für solche Schulungen aufgewendet werden, und es macht keinen Sinn. Stattdessen versteht gutes DevOps die allgemeinen Prinzipien der Arbeit an jedem Betriebssystem. Nach den Erwähnungen in den offenen Stellen zu urteilen, arbeiten die meisten jetzt unter Linux.

Ein guter Ingenieur weiß, auf welchem ​​System es besser ist, ein Projekt bereitzustellen, welche Tools verwendet werden sollen und welche potenziellen Fehler während der Implementierung oder des Betriebs auftreten können.

Die Wolken


Der Markt für Cloud-Technologien wächst durchschnittlich um 20 bis 25% pro Jahr. Mit dieser Infrastruktur können Sie Codetests automatisieren, Anwendungen aus Komponenten erstellen und Updates für Benutzer bereitstellen. Good DevOps versteht sowohl vollständig trübe als auch hybride Lösungen.

Zu den Standardanforderungen für Ingenieure gehören normalerweise GCP, AWS und Azure.

Dies schließt den Besitz von CI / CD-Tools ein. Normalerweise wird Jenkins für die kontinuierliche Integration verwendet, aber Analoga sind einen Versuch wert. Es gibt viele davon, zum Beispiel Buddy, TeamCity und Gitlab CI. Wir werden Terraform als deklaratives Tool untersuchen, mit dessen Hilfe die Infrastruktur in den Clouds aus der Ferne angehoben und konfiguriert werden kann. Und Packer, der zum automatischen Erstellen von Betriebssystemabbildern benötigt wird .

Orchestrierungssysteme und Microservices


Die Microservice-Architektur bietet viele Vorteile - Stabilität, schnelle Skalierung, Vereinfachung und Wiederverwendung. DevOps versteht die Funktionsweise von Microservices und kann potenzielle Probleme vermeiden.

Kennt Docker und Kubernetes sehr gut. Er versteht, wie Container funktionieren und wie ein System aufgebaut wird, damit Sie einige davon deaktivieren können, ohne dass dies Auswirkungen auf das Gesamtsystem hat. Beispielsweise kann mit Ansible ein Kubernetes-Cluster erstellt werden

Was Sie sonst noch für die zukünftigen DevOps versuchen sollten


Es ist endlos, die Tools aufzulisten, die für den DevOps-Techniker nützlich sein können. Jemand arbeitet an der Projekt-Orchestrierung, andere verbringen die meiste Zeit damit, die Bereitstellung und das Testen zu automatisieren, während andere die Effizienz im Konfigurationsmanagement steigern. Dabei wird klar, wo man graben muss und welche Projekte sich als nützlich erweisen.

Hier ist ein weiteres kleines Minimum, das am Anfang helfen wird:

  • Verstehen Sie, wie Git und Github funktionieren, wenn Sie dies noch nicht erlebt haben. Installieren Sie GitLab auf Ihrem Server.
  • Lernen Sie die JSON- und YAML-Markup-Sprachen kennen.
  • Installieren Sie und versuchen Sie, in Datenbanken zu arbeiten - nicht nur in MySQL, sondern auch in NoSQL. Versuchen Sie MongoDB.
  • Erfahren Sie, wie Sie die Konfiguration mehrerer Server gleichzeitig verwalten. Zum Beispiel mit Ansible.
  • Konfigurieren Sie sofort die Lastüberwachung und die Protokolle. Probieren Sie ein paar Prometheus, Grafana, Alertmanager.
  • Suchen Sie nach den besten Bereitstellungslösungen für verschiedene Sprachen - lernen Sie sich einfach kennen, implementieren und verstehen Sie eine Schulung oder einen Arbeitsentwurf.

Warum sollten Sie jetzt anfangen, DevOps zu lernen?


Auf dem Markt für DevOps-Ingenieure besteht ein Personalmangel. Dies wird bedingt durch die Quantität und Qualität der offenen Stellen bestätigt:

  • In Russland sind allein auf HeadHunter ständig mehr als zweitausend Jobs für dieses Keyword verfügbar.
  • Und nur 1.900 Personen haben einen Lebenslauf gepostet.

Wenn man bedenkt, dass das Veröffentlichen eines Lebenslaufs keine aktive Jobsuche bedeutet, stellt sich heraus, dass es zwei oder sogar drei offene Stellen pro Spezialist gibt - diese Situation besteht selbst im beliebten Webentwicklungsmarkt nicht. Fügen Sie hier weitere Stellenangebote von Habr und von Telegrammkanälen hinzu - der Fachkräftemangel ist enorm.


Achten Sie auf die Gehaltsanforderungen von Bewerbern.

DevOps ist weltweit nicht weniger gefragt - wenn Sie in die USA oder nach Europa ziehen, suchen nur auf dem Glassdoor- Portal mehr als 34.000 Unternehmen nach solchen Spezialisten. Von den häufigen Anforderungen - Erfahrung 1-3 Jahre, die Fähigkeit, mit den "Wolken" zu arbeiten und keine Angst vor Beratungsfunktionen zu haben.

Es gibt um ein Vielfaches weniger Angebote für Freiberufler - DevOps-Ingenieure suchen hauptsächlich Vollzeit- und Vollzeitmitarbeiter.


Es ist schwierig, ein geeignetes freiberufliches Projekt zu finden, aber Sie

können sich den bedingten Karriereweg eines DevOps-Ingenieurs wie folgt vorstellen:

  • Ein halbes Jahr lang arbeitet er als Systemadministrator in einem kleinen IT-Unternehmen. Parallel dazu eine für die Automatisierung geeignete Sprache lernen.
  • Er studiert intensiv in Kursen, etwa sechs Monate.
  • Wechselt zu einem anderen Job - zu einem Unternehmen, das Cloud-Lösungen, eine Niederlassung eines großen Unternehmens, an Entwickler großer Projekte verkauft. Einfach ausgedrückt, wo eine kontinuierliche Automatisierung und Implementierung erforderlich ist. In der Ausgangsposition sind dies ungefähr 100.000 Rubel.
  • Er arbeitet und studiert seit mehreren Jahren aktiv und steigert sein Einkommen mehrmals.
  • Wird Experte in der Fachwelt und berät. Oder zu einem Systemarchitekten oder IT-Direktor heranwachsen.

DevOps — . . , , IT- - . , .

DevOps


Das durchschnittliche Durchschnittsgehalt nach den Daten für das zweite Quartal 2019 für Devops liegt zwischen 90 und 160 Tausend Rubel. Es gibt günstigere Angebote - meistens 60–70 Tausend.

Es gibt ständig Angebote bis zu 200 Tausend, es gibt offene Stellen mit einem Gehalt von bis zu 330 Tausend Rubel.


Unter den Bedienern wird DevOps höher bezahlt als die anderen. Quelle: Haber . Karriere

DevOps-Ingenieure, einschließlich Anfänger, werden jetzt in großen Banken, Unternehmen, Cloud-Diensten, Handelssystemen und anderen Organisationen benötigt, die sich um die Wartung ihrer IT-Lösungen kümmern.

Ein ausgezeichneter Kandidat für eine Junior-Stelle mit einem Gehalt von 60 bis 90.000 wird ein unerfahrener Systemadministrator mit einer Erfahrung von etwa einem Jahr und einem Profildiplom sein.
 

Es gibt keine solchen Statistiken, aber es scheint, dass Leute, die Erfahrung mit Linux haben, mehr bezahlt werden

Was zu sehen und zu lesen ist für das Wachstum im Beruf


Probieren Sie mehrere Informationsquellen gleichzeitig aus, um in die Welt von DevOps einzutauchen:


Wo bei DevOps studieren


Strukturierte Kenntnisse erhalten Sie im Kurs " DevOps-Ingenieur " in Netologie. Sie lernen den gesamten Zyklus der Methodik kennen:

  • Erfahren Sie, wie Sie Code analysieren und schnell Tools zur Versionskontrolle verwenden.
  • Verstehen Sie die Best Practices für die kontinuierliche Integration, Prüfung und Montage.
  • Erfahren Sie, wie Sie Änderungen in Anwendungen verwalten und automatisieren.
  • In der Praxis lernen Sie Konfigurations- und Verwaltungstools.
  • Gewöhnen Sie sich daran, die für die Überwachung erforderlichen Dienste sofort auszuwählen und zu konfigurieren.

Holen Sie sich als Bonus einen Python-Programmierkurs - Sie lösen Probleme noch schneller und einfacher. Alles in der Praxis - wir verwenden AWS, GCP oder Azure.
Dies reicht aus, um aus einem unerfahrenen Ingenieur oder Systemadministrator ein beliebtes DevOps zu machen und Ihren Preis auf dem Arbeitsmarkt angenehm zu erhöhen.


All Articles