Entwickler erfinden ständig bessere und effizientere Methoden zur Bereitstellung von Software, aber nicht alle Teams sind mit den neuen Strategien vertraut. Wir als Entwickler-Community müssen jegliches Gatekeeping eliminieren und Best Practices austauschen. Welche Vorteile ein Team einem anderen bringt, sodass wir gemeinsam kontinuierlich auf diesen Verbesserungen aufbauen können.

Die Bereitstellungsgeschwindigkeit steigert den Geschäftswert, aber nur, wenn die Software ist zuverlässig. Benutzer werden sich nicht darum kümmern, häufige Updates zu erhalten, wenn sie nicht funktionieren. Das Teilen von Best Practices für die Bereitstellung kann manuelle Aufgaben eliminieren und es Entwicklern ermöglichen, sich auf das Programmieren zu konzentrieren, was zu zuverlässigeren Bereitstellungen und Anwendungen sowie effizienteren Prozessen führt.

Vorteile der Eliminierung von Gatekeeping

Gatekeeping unter Entwicklern ist häufig unbeabsichtigt. DevOps-Teams haben viel zu tun, und manchmal bleibt der Austausch von Erfahrungen und Methoden auf der Strecke. Wenn dies geschieht, verbringen neue Entwickler Jahre damit, durch Versuch und Irrtum zu lernen und ihre eigenen Strategien zu entwickeln. Aber man muss das Rad nicht neu erfinden, wenn es bereits hervorragende Lösungen gibt. Anstatt Zeit mit der Fehlerbehebung und der Erstellung von Prozessen für die Bereitstellung zu verbringen, könnten Entwickler durch besseren Code und effizientere Softwarezyklen einen geschäftlichen Nutzen erzielen.

Softwareentwicklungsprozesse werden immer komplexer, mit nahezu unbegrenzten Schrittkombinationen, um das gleiche Ergebnis zu erzielen. Entwickler haben genug zu denken, ohne noch mehr neue Methoden entwickeln zu müssen, und wenn Teams in Silos arbeiten, passiert genau das. Da jede Gruppe ihr eigenes Ding macht, erfolgt die Softwareinnovation für jede Gruppe unterschiedlich schnell, was es schwierig macht, die Geschäftsleistung und-anforderungen vorherzusagen. Alle auf die gleiche Seite zu bringen, ermöglicht präzisere Erwartungen und öffnet die Tür zur Zusammenarbeit.

Kontinuierliche Bereitstellung als Vehikel für Best Practices

Wie können DevOps-Teams Best Practices standardisieren? Durch die Einführung von Continuous Deployment. Der automatisierte Prozess überträgt Code in die Produktion und baut auf kontinuierlichen Integrations-und Bereitstellungsprozessen auf. Dieser deklarative Ansatz stellt sicher, dass jede Softwareänderung derselben Validierungslogik folgt, vereinfacht die Bereitstellung und macht die Bereitstellung vorhersehbar, wiederholbar und vor allem zuverlässig. Ein aktueller Bericht zeigte, dass Zuverlässigkeit die höchste Priorität bei der App-Entwicklung und-Bereitstellung für Entwickler ist.

Nein Jedes Team kennt Continuous Deployment und seine Vorteile. Einige Entwickler konzentrieren sich auf grundlegende Aufgaben wie das Festschreiben und Bereitstellen von Code in einer Produktionsumgebung. Sie können von dem Gedanken an eine progressive Veröffentlichung überwältigt werden. Hier ist der Austausch von Praktiken der Schlüssel. Continuous Deployment ist weniger kompliziert, als es scheint. Es automatisiert langwierige Schritte und erfordert keine fortgeschrittenen Bereitstellungsfähigkeiten. Entwickler können Code mit der Gewissheit einer effizienten, zuverlässigen und sich selbst tragenden Bereitstellung schreiben.

Sie müssen kein Problem lösen, für das es bereits eine Lösung gibt

Warum Zeit mit der Lösung eines Problems verbringen, wenn die Lösung bereits existiert? Einige Teams entwickeln ihre eigenen Bereitstellungstools, um Kosten zu senken, aber diese Strategie ist weder skalierbar noch effizient. Mit zunehmender Komplexität können die Tools nicht mehr effektiv ausgeführt werden, und die Teams müssen mehr Zeit damit verbringen, sie zu erstellen, anstatt sie zu programmieren. DIY-Tools können auch zu kurzsichtiger Entscheidungsfindung und Abhängigkeit von einer Checkliste führen, was dazu führt, dass Entwickler das übergeordnete Ziel der Steigerung der Leistungskennzahlen vernachlässigen.

 Am Ende des Tages ist die Übernahme eines vorhandenen Tools weniger Arbeit als einen zu bauen. Viele Unternehmen erkennen die Vorteile von Managed Services – diese Tools werden voraussichtlich 18 Prozent der IT ausmachen Budgets im Jahr 2023, 3 Prozent mehr als 2020. Und laut Gartner, 70 percent of organizations will implement structured automation by 2025.

Using an existing tool to automate deployment enhances future production value by improving the four DORA Metriken: Bereitstellungshäufigkeit, Vorlaufzeit für Codeänderungen, Änderungsfehlerrate und Zeit bis zur Wiederherstellung des Dienstes. Da weniger Zeit für die manuelle Erstellung von Bereitstellungspfaden und die Überwachung auf Probleme aufgewendet wird, können sich Teams darauf konzentrieren, die wachsenden Erwartungen der Benutzer zu erfüllen.

Unsere Entwickler-Community hat bereits die Arbeit zur Optimierung von Lösungen geleistet. Teams sollten sich die bestehenden und bewährten Strategien zunutze machen. Durch den Austausch von Best Practices können wir geschäftige Arbeit umgehen und uns auf die Schaffung von Geschäftswert konzentrieren, indem wir die Softwarequalität und die Bereitstellungsgeschwindigkeit verbessern. Darüber hinaus können wir auf diesen Innovationen aufbauen, um eine Reihe von Best Practices zu entwickeln. Indem wir zusammenarbeiten, helfen wir uns und unseren Endbenutzern jetzt und in Zukunft.

Bildnachweis: nd3000/Shutterstock

Andrew Backes ist VP of Engineering bei Armory und war der erste Mitarbeiter in der Firma. In den letzten sechs Jahren hat er die Armory-Plattform als zuverlässige Softwarebereitstellungsplattform für Unternehmen etabliert und ein Weltklasse-Engineering-Team aufgebaut. Zuvor war er Ingenieur bei @ShareThis, wo er an Big Data arbeitete und interne Entwicklungstools entwickelte. Davor leitete er sein eigenes IT-Beratungsunternehmen.

By Henry Taylor

Ich arbeite als Backend-Entwickler. Einige von Ihnen haben mich vielleicht auf der Entwicklerkonferenz gesehen. In letzter Zeit arbeite ich an einem Open-Source-Projekt.