Strikte Unterteilungen von Softwareentwicklung und IT-Betrieb, das war einmal. 2024 ist DevOps nicht nur ein Schlagwort, sondern ein entscheidender Erfolgsfaktor. Software-Unternehmen, egal welcher Grösse, kommen nicht mehr daran vorbei DevOps einzusetzen. Doch warum ist DevOps ein Schlüssel zur stabileren, schnelleren und besseren Software geworden?
DevOps: Mehr als nur ein Modewort
DevOps steht für die englischen Begriffe Development (Entwicklung) und Operations (Betrieb). Ziel im Vergleich zu herkömmlichen Prozessen ist es, Software effizienter, schneller und sicherer zu entwickeln. Das mag theoretisch klingen, doch dass dies in der Praxis tatsächlich für kürzere Entwicklungszyklen und schnellere Fehlerbehebung sorgt, habe ich selbst miterleben dürfen. Der Kunde ächzt nach einer schnellen Fehlerbehebung, wenn einmal etwas nicht funktioniert wie erwartet. Die oben genannten Vorteile sind damit nicht nur aus Kundensicht relevant. DevOps ist auch ein mächtiges Instrument um die Entwicklungsteams zu entlasten. Eine gute DevOps Strategie ermöglicht es, regelmässig neue Features bereitzustellen. Sogar wenn eine Software bereits fertiggestellt und stabil im Einsatz ist. Regelmässige Sicherheitsupdates sind im Jahr 2024 ein Muss, um etwaige Cyber-Angriffe abzuwehren. Nicht daran zu denken, wie stark die Reputation leiden könnte, wenn aus Kosten- und Zeitgründen nicht in eine gute DevOps Strategie investiert wurde und darum Sicherheitsupdates herausgezögert wurden.
«The most powerful tool we have as developers is automation»
Der DevOps-Lebenszyklus
Der DevOps Zyklus kann in verschiedene Stufen unterteilt werden.
Die DevOps Schlüsselprinzipien
- Automatisierung des Lebenszyklus
Testen, builden, releasen, etc., all diese Schritte sollten wenn möglich automatisiert sein. Werkzeuge wie Continuous Integration (CI) und Continuous Deployment (CD) gehören zum Alltag in einer modernen Softwareentwicklung - Zusammenarbeit und Kommunikation
Automatisierung bedeutet nicht weniger Kommunikation. Im Gegenteil, Teams müssen enger zusammenarbeiten, um Abstimmung und Qualität sicherzustellen. - Kontinuierliche Verbesserung
DevOps-Teams suchen regelmässig nach Bereichen, die verbessert werden können. Automatisierte Tests sind nicht starr, sie werden stetig verbessert und erweitert. - Kundenbedürfnisse berücksichtigen
Durch die verschiedenen Automatisierungsschritte kann sich ein Entwicklungsteam auf das Wesentliche fokussieren.
Die Rolle von Microservices
Das Thema monolithische Architekturen vs. Microservices ist in unserem CAS allgegenwärtig und wird immer wieder aus unterschiedlichen Perspektiven betrachtet. Microservices sind kleine, unabhängige Module, die flexibel und wiederverwendbar sind. Dadurch wächst aber auch die Komplexität. Mir persönlich zeigt der CAS auf, dass durch den Einsatz von Microservices der Bedarf an DevOps grundsätzlich steigt.
Mein persönlicher Weg zu DevOps
Als ich nach meinem Bachelor-Studium als Softwareentwickler in einem Unternehmen startete, das auf die Selbstverantwortung eines jeden Entwickelnden pocht, war funktionierender Code mein einziger Fokus. Testen? Automatisieren? Klingt gut, aber nicht unbedingt nötig – dachte ich. Doch die wachsende Anzahl von Projekten und die Verantwortung haben mich eines Besseren belehrt: Manuelles Deployen und Testen ist eine Sackgasse. Heute plane ich eine CI/CD-Pipeline noch vor meinem ersten Commit. Dabei verfolge ich treu das Prinzip, dass der DevOps Zyklus nicht immer schon von Beginn an vollständig eingehalten werden muss. Aber nur schon die Anwesenheit einer aufgesetzten Pipeline erleichtert es meinen Teamkollegen und mir, diese zu erweitern und schlussendlich zu vervollständigen. Dabei bin ich klar der Ansicht, dass die Einhaltung eines DevOps Zyklus keine Managementaufgabe ist – es ist ein Grundverständnis und liegt in der Verantwortung eines modernen Softwareentwickelnden diesen gekonnt einzusetzen.
Warum DevOps 2024 ein Muss ist
Wird das Thema DevOps von einem Unternehmen ignoriert, wird es ins Hintertreffen geraten. Es verliert dadurch wertvolle Zeit und Ressourcen. Vor allem setzt man aber die Kundenzufriedenheit aufs Spiel. Im Jahr 2024 erwarten die Kunden schnelle, sichere und fehlerfreie Software. DevOps ist der logische Schritt zur modernen Softwareentwicklung. Es stellt sich nicht die Frage, ob man DevOps einsetzt. Vielmehr ist es eine Frage, ob man der schnellen Technologie-Entwicklung gewachsen ist oder nicht.