Video: Agiles und hybrides Projektmanagement mit Microsoft Technologie (November 2024)
Wenn Ihr kleines bis mittelständisches Unternehmen (SMB) eine gesunde Menge an Software von Drittanbietern und proprietären Produkten verwendet, sollten Sie wahrscheinlich einen Development Operations-Experten (DevOps) beauftragen. Diese intelligenten Entwickler sind für eine Vielzahl von Aufgaben verantwortlich, darunter das Schreiben von Code, das Erstellen von Apps, das Skalieren der Infrastruktur, das Erstellen virtueller Umgebungen und das Automatisieren von Systemen und Prozeduren. Sie überwachen das Engineering, die Qualitätssicherung (QS) und den reibungslosen Betrieb der gesamten abteilungsübergreifenden Softwarekommunikation.
Stellen Sie sich dieses Szenario vor: Ihr HR-Team möchte eine HR-Software implementieren, mit deren Hilfe Mitarbeiterdatensätze verwaltet werden können. Ihr DevOps-Ingenieur hilft in Zusammenarbeit mit Ihrem Entwicklungsteam bei der Implementierung des neuen Tools, testet das Tool kontinuierlich, um die konstante Funktionalität sicherzustellen, erweitert die vom Unternehmen benötigten Funktionen nach Bedarf, überwacht die erforderlichen Wartungs- und Upgradevorgänge und hilft, vorhersehbare Prozesse und Verbindungen zu automatisieren das System mit anderen Systemen innerhalb der Organisation, z. B. Ihrem CRM-Tool (Customer Relationship Management). Ihr DevOps-Ingenieur sollte in der Lage sein, einen Beitrag zu diesem und ähnlichen Szenarien zu leisten, die die Implementierung, das Experimentieren und die Kommunikation zwischen verschiedenen IT-Tools umfassen.
"DevOps ist mehr als nur die Automatisierung von Code", sagte EZ Bardeguez, DevOps-Ingenieur bei Zynga, dem Spielehersteller, der für Farmville und Words with Friends verantwortlich ist. "Für ein kleineres Unternehmen ist ein guter DevOps-Ingenieur wirklich der Baustein eines Technologieprodukts."
Laut Bardeguez besteht das Hauptziel eines DevOps-Ingenieurs darin, die Server eines Unternehmens zu verwalten, insbesondere diejenigen, die Open-Source-Betriebssysteme wie BSD oder Linux verwenden. Das Arbeiten mit dem Windows-Betriebssystem ist zwar eine beliebte und praktikable Alternative, da Microsoft für jeden Server und Benutzer eine Gebühr erhebt. Letztendlich ist dies jedoch teurer als die Verwendung eines Open-Source-Tools, von dem die meisten kostenlos und unbegrenzt änderbar sind. Bei Open-Source-Systemen wird Ihr größter Aufwand ein heißer DevOps-Ingenieur sein, der Software-Kommunikation von A bis Z quarterbacken kann.
Die DevOps Origin Story
Die Notwendigkeit von DevOps als Praxis begann mit einer Überlegung, die zu Beginn der Agile Conference im Jahr 2008 entstand. Auf der Konferenz sprach der Softwareentwickler Patrick Debois (manchmal als "Der Pate von DevOps" bezeichnet) mit seinen Kollegen über Überbrückung der operativen und philosophischen Kluft zwischen Entwicklern und Betriebsteams. Debois, der zuvor mit einem Datenmigrationsprojekt für die belgische Regierung beauftragt worden war, bemerkte eine spürbare Spannung zwischen den Projektentwicklern und den Systemadministratoren.
Im folgenden Jahr begann Debois, seine eigene Konferenz, Devopsdays, zu promoten, die an Entwicklungs- und Betriebsteams vermarktet wurde. Zu den Vorträgen gehörten "Agile Infrastrukturen mit Puppet erstellen", "Kontinuierliche Integration, Pipelines und Bereitstellung" und "Konfigurationsmanagement automatisieren". Nach dem Event wurde (und bleibt) der Twitter-Hashtag #DevOps das Epizentrum der Ratschläge, Meinungen und Neuigkeiten von DevOps (siehe unten).
#DevOps Tweets
Heutzutage haben 74 Prozent der Unternehmen DevOps-Praktiken übernommen, wie aus einem Bericht des IaaS-Unternehmens RightScale (Infrastructure-as-a-Service) hervorgeht. Und 70 Prozent der in dem Bericht befragten KMU haben auch die DevOps-Prinzipien übernommen.
Sollten Sie sich für DevOps entscheiden?
Forrester Research und IBM legten 2014 die Grundlage für die Roadmap für den Erfolg von DevOps. Der Bericht, der auf einer Umfrage unter 600 IT-Fachleuten basiert, hat ergeben, dass der Erfolg von DevOps, insbesondere in Bezug auf die Softwarebereitstellung, auf acht wichtigen Best Practices beruht. Die Philosophie basiert auf der Vorstellung, dass Unternehmen das Produkt mit der geringsten Verfügbarkeit bereitstellen sollten, um es zu starten, und es in späteren Releases im Laufe der Zeit schrittweise verbessern sollten.
Das DevOps-Team sollte eine engagierte Gruppe mit funktionsübergreifenden Disziplinen sein, die eine übermäßige Spezialisierung vermeidet. Das Team sollte eine lose gekoppelte Architektur zwischen Anwendungen aufbauen, um die Bereitstellung zu vereinfachen, und die Anzahl der Schritte zwischen Prozessen minimieren, um den Workflow zu beschleunigen. Die Teammitglieder sollten transparent über Fortschritte und Stolperfallen sein, um das Risiko besser zu verstehen. Das Team selbst sollte jedoch Statusberichte und Besprechungen auf ein Minimum beschränken, die von der tatsächlichen Lieferung von Kleinserien ablenken. Um den gesamten DevOps-Prozess zu rationalisieren, sollte das Team seinen eigenen Testprozess automatisieren, um manuelle, zeitaufwendige Tests zu vermeiden.
Obwohl Bardeguez hinsichtlich der Bedeutung seiner Rolle optimistisch ist, ist er vorsichtig, wenn kleine Unternehmen einen DevOps-Ingenieur einstellen. "Die Vorstellung, dass jeder diese Rolle benötigt, ist gefährlich. Sie könnte völlig unnötig sein. Wenn Sie beispielsweise ein kleines Unternehmen sind, das sich mit der Buchhaltung größerer Unternehmen befasst und sich in erster Linie auf einen Dateiserver und E-Mail verlassen, dann setzen Sie wahrscheinlich Sie brauchen keinen DevOps-Ingenieur. Wenn Sie jedoch irgendetwas im Zusammenhang mit Ihrem Produkt oder Ihrer Dienstleistung automatisieren müssen, brauchen Sie auf jeden Fall einen."
Der ideale DevOps-Profi
Worauf sollten Sie bei einem DevOps-Mitarbeiter achten? Fangen wir mit dem Gehalt an: Der durchschnittliche DevOps-Ingenieur meldete 2015 ein durchschnittliches Jahreseinkommen von 105.600 US-Dollar. Dies geht aus Daten des Content Delivery Network (CDN) und der Cybersecurity-Firma Incapsula hervor. Arbeitgeber suchen in der Regel Kandidaten mit praktischer Systemerfahrung im Gegensatz zu Hochschulabsolventen mit Schwerpunkt Informatik. Das liegt daran, dass DevOps-Ingenieure über alle Geschäftsdisziplinen hinweg interagieren müssen, was bedeutet, dass sie dafür verantwortlich sind, Führungskräfte in allen Geschäftsbereichen davon zu überzeugen, dass experimentelle technologische Verfahren auf lange Sicht billiger und besser für das Unternehmen sind. In dieser Hinsicht übertrifft jemand mit einem tiefen technologischen Hintergrund und Erfahrung in einem Unternehmensumfeld jemanden, der gerade eine Ivy League-Schule verlassen hat.
Wenn Sie ein paar Kandidaten mit soliden Unternehmens- oder Starthintergründen gefunden haben, suchen Sie nach Personen mit umfassender Erfahrung in der Linux- oder Unix-Administration sowie mit Erfahrung in der Automatisierung von Prozessen mit Chef oder Puppet, den gängigsten IT-Automatisierungstools auf dem Markt. Sie möchten auch, dass jemand mit umfassendem Hintergrund Cloud-Services nutzt, insbesondere Amazon Web Services (AWS). Diese Person sollte fließend in MySQL und SQL sowie in den Programmiersprachen PHP, Python oder Ruby sprechen.