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

DevOps-Ingenieure sind vielseitige Spezialisten, die Prozesse automatisieren können und wissen, wie Entwickler, QA und Manager arbeiten. Sie können programmieren, sich schnell in komplexe Werkzeuge einarbeiten und lassen sich von unbekannten Herausforderungen nicht aus der Ruhe bringen. Es gibt nur wenige DevOps-Ingenieure — sie werden mit 200–300 Tausend Rubel entlohnt, aber es gibt weiterhin viele Stellenangebote.

Dmitrij Kuzmin erklĂ€rt, womit DevOps konkret beschĂ€ftigt ist und was man lernen muss, um sich fĂŒr eine solche Position zu qualifizieren. Als Bonus: wichtige Links zu BĂŒchern, Videos, KanĂ€len und Fachgemeinschaften.

Womit beschÀftigt sich ein DevOps-Ingenieur?

Im Kontext von DevOps ist es wichtig, die Begriffe nicht zu verwechseln. Das liegt daran, dass DevOps kein konkretes TĂ€tigkeitsfeld ist, sondern eine berufliche Philosophie. Es handelt sich um eine Methodologie, die Entwicklern, Testern und Systemadministratoren hilft, schneller und effizienter durch Automatisierung und nahtlose Integration zu arbeiten.

Somit ist ein DevOps-Ingenieur ein Spezialist, der diese Methodologie in den Arbeitsprozess einfĂŒhrt:

  • In der Planungsphase hilft der DevOps-Ingenieur zu entscheiden, welche Architektur die Anwendung verwenden wird, wie sie skalierbar sein wird und welches Orchestrierungssystem gewĂ€hlt werden soll.
  • Anschließend konfiguriert er die Server, automatisiert die ÜberprĂŒfung und das Einpflegen des Codes sowie die ÜberprĂŒfung der Umgebung.
  • Danach automatisiert er die Tests und kĂŒmmert sich um die Deployment-Fragen.
  • Nach dem Release ist es wichtig, Feedback von Anwendern zu sammeln und Verbesserungen umzusetzen. DevOps sorgt dafĂŒr, dass die Nutzer diese Verbesserungen nicht bemerken und der Aktualisierungsprozess kontinuierlich ist.
  • Und gleichzeitig löst er Dutzende von Aufgaben, die helfen, das System der Zusammenarbeit von Entwicklern, QA, Systemadministratoren und Managern zu optimieren.

Alles, was oben geschrieben wurde, geschieht in Projekten, die dem Ideal nahekommen. In der realen Welt muss man jedoch in einem Projekt starten, in dem die Planung ausgelassen wurde, die Architektur fehlerhaft ist und ĂŒber Automatisierung erst nachgedacht wird, wenn alle Projekte stagnieren. Alle diese Probleme zu erkennen, sie zu lösen und dafĂŒr zu sorgen, dass alles funktioniert, ist eine SchlĂŒsselkompetenz eines DevOps-Spezialisten.

Auf dem Arbeitsmarkt gibt es Verwirrung. Manchmal sucht ein Unternehmen DevOps-Ingenieure fĂŒr die Position eines Systemingenieurs, Build-Ingenieurs oder irgendjemand anderen. Die Aufgaben können je nach UnternehmensgrĂ¶ĂŸe und -richtung variieren – woanders wird nach jemandem fĂŒr Consulting gesucht, woanders wird gebeten, alles zu automatisieren, und wieder woanders werden erweiterte Funktionen eines Systemadministrators gefordert, der programmieren kann.

Was man fĂŒr den Einstieg in den Beruf braucht

Der Einstieg in den Beruf erfordert eine frĂŒhzeitige Vorbereitung. Es reicht nicht aus, einfach zu Kursen zu kommen, ohne etwas ĂŒber IT zu wissen, und bis auf Junior-Niveau zu lernen. Ein technischer Hintergrund ist nötig:

  • Ideal wĂ€re es, wenn Sie mindestens sechs Monate als Systemadministrator, Betriebsspezialist oder Tester gearbeitet haben. Oder wenn Sie zumindest eine Vorstellung davon haben, wie Anwendungen starten, in welcher Umgebung sie sich entwickeln können und was zu tun ist, wenn Sie einen Fehler sehen. Wenn Sie keine Berufserfahrung haben, besuchen Sie einen Kurs zum Linux-Management und wiederholen Sie alles, was Sie dort lernen, auf Ihrem Heimcomputer.
  • Verstehen Sie, wie Netzwerktechnologien funktionieren – lernen Sie, lokale und globale Netzwerke zu installieren, zu konfigurieren und zu verwalten.
  • Sehen Sie sich an, wie Software funktioniert – schreiben Sie einige Skripte in Python oder Go, versuchen Sie, die Prinzipien der OOP (Objektorientierte Programmierung) zu verstehen, und lesen Sie ĂŒber den allgemeinen Zyklus der Produktentwicklung.
  • Technisches Englisch ist von Nutzen – es ist nicht notwendig, frei ĂŒber alle Themen zu sprechen, es reicht aus, die Dokumentation und Schnittstellen lesen zu können.

Es ist nicht notwendig, alles oben Genannte detailliert zu wissen, fĂŒr den Einstieg in das Lernen von DevOps ist ein minimales Niveau an Vorbereitung ausreichend. Wenn Sie ĂŒber einen solchen technischen Hintergrund verfĂŒgen, versuchen Sie, sich fĂŒr Kurse anzumelden.

Was ein DevOps-Ingenieur wissen sollte

Ein guter DevOps-Ingenieur ist ein vielseitiger Spezialist mit einem sehr breiten Horizont. FĂŒr eine erfolgreiche Arbeit werden Sie sich in mehreren IT-Richtungen zurechtfinden mĂŒssen.

Entwicklung

DevOps wird ein Skript schreiben, das Entwicklern hilft, den Code auf dem Server zu installieren. Er wird ein Programm schreiben, das die ReaktionsfĂ€higkeit von Datenbanken "in Echtzeit" testet. Er wird eine Anwendung fĂŒr die Versionskontrolle entwickeln. Schließlich wird er einfach ein potenzielles Problem in der Entwicklung bemerken, das auf dem Server auftreten könnte.

Ein starker DevOps-Spezialist kennt mehrere Programmiersprachen, die fĂŒr die Automatisierung geeignet sind. Er hat zwar nicht in allen ein perfektes VerstĂ€ndnis, kann jedoch schnell ein kleines Programm schreiben oder fremden Code lesen. Wenn Sie bisher keine Erfahrungen in der Entwicklung gesammelt haben, beginnen Sie mit Python – es hat eine einfache Syntax, man kann leicht mit Cloud-Technologien arbeiten, es gibt viele Dokumentationen und Bibliotheken.

Betriebssysteme

Es ist unmöglich, alle Möglichkeiten jeder Version jedes Systems zu kennen – dafĂŒr könnte man Tausende von Stunden mit Lernen verbringen und hĂ€tte keinen Nutzen daraus. Stattdessen versteht ein guter DevOps-Spezialist die allgemeinen Arbeitsprinzipien in jedem Betriebssystem. Laut den ErwĂ€hnungen in Stellenanzeigen arbeiten die meisten derzeit jedoch mit Linux.

Ein guter Ingenieur versteht, in welchem System es am besten ist, ein Projekt zu implementieren, welche Werkzeuge zu verwenden sind und welche potenziellen Fehler wÀhrend der Implementierung oder im Betrieb auftreten können.

Clouds

Der Markt fĂŒr Cloud-Technologien wĂ€chst im Durchschnitt um 20-25% pro Jahr – eine solche Infrastruktur ermöglicht die Automatisierung von Code-Testoperationen, dem Zusammenbau von Anwendungen aus Komponenten und der Bereitstellung von Updates an die Benutzer. Ein guter DevOps-Spezialist hat sowohl mit vollwertigen Cloud- als auch mit hybriden Lösungen Erfahrung.

In den Standardanforderungen an Ingenieure sind normalerweise GCP, AWS und Azure aufgefĂŒhrt.

Dazu gehört auch der Umgang mit CI/CD-Tools. FĂŒr die kontinuierliche Integration wird normalerweise Jenkins verwendet, aber man sollte auch Alternativen ausprobieren. Es gibt viele, zum Beispiel Buddy, TeamCity und Gitlab CI. Es ist auch nĂŒtzlich, Terraform zu erlernen – ein deklaratives Tool, das hilft, Infrastruktur in der Cloud aus der Ferne aufzubauen und zu konfigurieren. Außerdem Packer, das benötigt wird, um automatisch OS-Images zu erstellen..

Orchestrierungssysteme und Mikrodienste

Die mikroservicebasierte Architektur hat viele Vorteile – StabilitĂ€t, schnelle Skalierbarkeit sowie Vereinfachung und Wiederverwendbarkeit. DevOps versteht, wie Mikrodienste funktionieren und kann potenzielle Probleme vorwegnehmen.

Hat fundierte Kenntnisse in Docker und Kubernetes. Versteht, wie Container funktionieren und wie man ein System so aufbaut, dass man Teile davon ohne Auswirkungen auf das gesamte System deaktivieren kann. Zum Beispiel kann er mit Ansible einen Kubernetes-Cluster aufbauen.

Was sollte ein zukĂŒnftiger DevOps noch ausprobieren?

Die Liste der Werkzeuge, die fĂŒr DevOps-Ingenieure nĂŒtzlich sein können, ist schier endlos. Manche arbeiten an der Orchestrierung von Projekten, andere verbringen die meiste Zeit mit der Automatisierung von Bereitstellung und Test, wieder andere erhöhen die Effizienz im Konfigurationsmanagement. Im Verlauf wird klar, wo die Schwerpunkte liegen und welche Projekte von Nutzen sein werden.

Hier ist ein weiterer kleiner Mindestumfang, der Ihnen den Einstieg erleichtert:

  • Machen Sie sich mit der Funktionsweise von Git und Github vertraut, falls Sie bisher noch nicht damit konfrontiert wurden. Installieren Sie GitLab auf Ihrem Server.
  • Lernen Sie die Auszeichnungssprachen JSON und YAML kennen.
  • Installieren Sie und versuchen Sie, mit Datenbanken zu arbeiten – nicht nur mit MySQL, sondern auch mit NoSQL. Probieren Sie MongoDB aus.
  • Verstehen Sie, wie die Konfiguration mehrerer Server verwaltet wird. Zum Beispiel mit Hilfe von Ansible.
  • Richten Sie sofort eine Überwachung der Last und der Protokolle ein. Probieren Sie die Kombination aus Prometheus, Grafana, Alertmanager.
  • Suchen Sie nach den besten Lösungen fĂŒr das Deployment in verschiedenen Sprachen – es reicht meist, sich bekannt zu machen, die Implementierung erfolgt dann im Rahmen eines Trainings- oder Arbeitsprojekts.

Warum es sich lohnt, jetzt mit DevOps zu beginnen.

Der Markt fĂŒr DevOps-Ingenieure leidet unter Personalmangel. Dies wird bedingt durch die Menge und die QualitĂ€t der Stellenangebote:

  • Auf HeadHunter in Russland sind allein stĂ€ndig mehr als 2.000 ArbeitsplĂ€tze zu diesem SchlĂŒsselwort verfĂŒgbar.
  • Und nur 1.900 Personen haben ihren Lebenslauf veröffentlicht.

Da die Veröffentlichung eines Lebenslaufs nicht bedeutet, dass aktiv nach Arbeit gesucht wird, kommt es zu einem VerhĂ€ltnis von zwei bis drei Stellenangeboten pro Spezialisten – eine solche Situation gibt es nicht einmal auf dem beliebten Markt der Webentwicklung. FĂŒgen Sie noch Stellenangebote von Habr und aus Telegram-KanĂ€len hinzu – der Mangel an FachkrĂ€ften ist enorm.

Wer ist ein DevOps-Ingenieur, was macht er, wie viel verdient er und wie wird man einer?
Achten Sie auf die Gehaltsvorstellungen der Bewerber.

DevOps ist auch weltweit gefragt – wenn Sie eine Relocation in die USA oder nach Europa planen, dann sucht auf dem Portal. Glassdoor mehr als 34.000 Unternehmen nach solchen Spezialisten. Zu den hĂ€ufigsten Anforderungen zĂ€hlen 1–3 Jahre Erfahrung, die FĂ€higkeit, mit Clouds zu arbeiten, und keine Scheu vor Beratungsfunktionen.

Auf Freelance-Plattformen gibt es deutlich weniger Angebote – DevOps-Ingenieure werden hauptsĂ€chlich in Festanstellung und in Vollzeit gesucht.

Wer ist ein DevOps-Ingenieur, was macht er, wie viel verdient er und wie wird man einer?
Es ist schwierig, ein passendes Projekt auf Freelance zu finden, aber es ist möglich.

Der hypothetische Karriereweg eines DevOps-Ingenieurs könnte ungefÀhr so aussehen:

  • Seit einem halben Jahr bis zu einem Jahr arbeitet er als Systemadministrator in einem kleinen IT-Unternehmen. Parallel dazu lernt er eine Sprache, die fĂŒr die Automatisierung geeignet ist.
  • Er lernt intensiv in Kursen, etwa seit einem halben Jahr.
  • Wechselt zu einem anderen Job – in ein Unternehmen, das Cloud-Lösungen verkauft, eine Tochtergesellschaft eines großen Konzerns, zu den Entwicklern großer Projekte. Einfacher gesagt, dort, wo es Bedarf an kontinuierlicher Automatisierung und Implementierung gibt. In der Einstiegsposition liegt das Gehalt bei etwa 100.000 Rubel.
  • Einige Jahre arbeitet und lernt er aktiv und steigert sein Einkommen um ein Vielfaches.
  • Er wird ein Experte in der Fachgemeinschaft und wechselt in die Unternehmensberatung oder steigt zum Systemarchitekten oder IT-Direktor auf.

DevOps ist schwierig. Man muss die FĂ€higkeiten mehrerer Berufe in sich vereinen. Man muss zur Person werden, die Verbesserungen dort anbietet, wo andere IT-Spezialisten nicht einmal an etwas anderes denken. DafĂŒr wird viel bezahlt, aber auch ein großes Wissen ist erforderlich.

Wie viel verdienen DevOps?

Das durchschnittliche Median-Gehalt von DevOps lag im zweiten Quartal 2019 zwischen 90.000 und 160.000 Rubel. Es gibt gĂŒnstigere Angebote – hauptsĂ€chlich zwischen 60 und 70 Tausend.

Es gibt stÀndig Angebote bis zu 200.000, und es sind Stellen mit einem Gehalt von bis zu 330.000 Rubel zu finden.

Wer ist ein DevOps-Ingenieur, was macht er, wie viel verdient er und wie wird man einer?
Unter den Spezialisten im Betrieb werden DevOps besser bezahlt als andere. Quelle: Habr.Karriere

DevOps-Ingenieure, einschließlich Einsteiger, werden derzeit in großen Banken, Konzernen, Cloud-Diensten, Handelssystemen und anderen Organisationen, die sich um die Wartung ihrer IT-Lösungen kĂŒmmern, benötigt.

Ein ausgezeichneter Kandidat fĂŒr eine Junior-Position mit einem Gehalt von 60.000 bis 90.000 wird ein Anfangs-Systemadministrator mit etwa einem Jahr Erfahrung und einem relevanten Abschluss sein.
 
Wer ist ein DevOps-Ingenieur, was macht er, wie viel verdient er und wie wird man einer?
Es gibt keine solchen Statistiken, aber nach dem GefĂŒhl werden Personen mit Linux-Erfahrung besser bezahlt.

Was man lesen und schauen sollte, um in der Profession zu wachsen

Um in die Welt von DevOps einzutauchen, probiere mehrere Informationsquellen gleichzeitig aus:

  • Cloud Native Computing Foundation [YouTube, ENG] – viele Videos von Konferenzen und Bildungs-Webinaren.
  • DevOps Channel [YouTube, RUS] – Video-VortrĂ€ge von der professionellen DevOps-Konferenz in Russland.
  • The DevOps Handbook [Buch, RUS] – eines der beliebtesten BĂŒcher ĂŒber die Philosophie von DevOps. Das Buch enthĂ€lt allgemeine Prinzipien der Methodologie und erlĂ€utert, worauf man bei der Arbeit an jedem Projekt zuerst achten sollte.
  • Thomas Limoncelli „Die Praxis der System- und Netzwerkadministration“ [Buch, RUS] — viel Theorie und Prinzipien, wie Systemadministration gestaltet sein sollte.
  • Devops Weekly [Buch, ENG] — wöchentlicher Überblick ĂŒber die Neuigkeiten in DevOps weltweit.
  • Devops_deflope [Telegram, RUS] — Nachrichten aus der Branche, AnkĂŒndigungen von Konferenzen, Links zu neuen interessanten Artikeln und BĂŒchern.
  • Devops_ru [Telegram, RUS] — russischsprachiger Chat, in dem man Rat fragen und Hilfe bei Konfigurationen anfordern kann.
  • Devops.com — große internationale Website mit Artikeln, Webinaren, Podcasts und Kolumnen fĂŒhrender Unternehmen der Branche.
  • Hangops_Ru — russischsprachige Gemeinschaft von DevOps-Ingenieuren und Interessierten.
  • Die besten BĂŒcher zu der Sprache, die Sie fĂŒr die Entwicklung verwenden werden.

Wo man DevOps lernen kann

Strukturierte Kenntnisse kann man im Kurs „DevOps-Ingenieur“ bei Netologie erwerben. Sie lernen den vollstĂ€ndigen Zyklus der Methodologie:

  • Sie erfahren, wie man Code analysiert und Werkzeuge fĂŒr die Versionskontrolle schnell einsetzt.
  • Sie verstehen die besten Praktiken fĂŒr Continuous Integration, Testing und Build.
  • Sie lernen, wie man Änderungen in Anwendungen verwaltet und automatisiert.
  • In der Praxis lernen Sie Konfigurations- und Managementwerkzeuge kennen.
  • Gewöhnen Sie sich daran, sofort die benötigten Dienste fĂŒr das Monitoring auszuwĂ€hlen und zu konfigurieren.

Als Bonus erhalten Sie einen Kurs in Python-Programmierung — Sie werden Aufgaben schneller und einfacher lösen. Alles praktisch — wir nutzen AWS, GCP oder Azure.
Das reicht aus, um sich von einem AnfÀnger-Ingenieur oder Systemadministrator in einen gefragten DevOps-Experten zu verwandeln und seinen Marktwert zu steigern.

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

Quelle: habr.com

60GB SSD 8Gb DDR4