Vorworte

Vorwort zur zweiten Auflage

Architecting for Scale ist ein umfassendes Buch für Manager, die erkannt haben, dass sich alle Unternehmen nicht mehr nur als "digitales Unternehmen" bezeichnen, sondern erkennen, dass sie, wenn sie nicht wie ein solches arbeiten, ihr Geschäft aufgeben müssen. Banken, Versicherungen und andere Branchen, die früher einen riesigen Wassergraben hatten, werden von neuen Unternehmen aufgemischt, die erstaunliche Erfahrungen bieten, weil sie wie ein digitales Unternehmen arbeiten und nicht nur davon reden, ein digitales Unternehmen zu sein.

Architecting for Scale ist ein maßgeblicher Leitfaden für Direktoren, Manager und Architekten, die eine umsetzbare Roadmap für den Betrieb in großem Maßstab mit hoher Zuverlässigkeit, die Implementierung moderner Betriebsprinzipien (DevOps, Site Reliability Engineering) sowie die Nutzung aktueller Konzepte und Dienste (Microservices, Cloud, Kanten) suchen.

Ich hatte das Vergnügen, mit Lee bei New Relic zu arbeiten, einem Unternehmen, das es Unternehmen ermöglicht, ihr digitales Geschäft weltweit zu überwachen. Während seiner Zeit bei New Relic reiste Lee um die Welt, um Unternehmen bei der digitalen Transformation zu helfen, Ideen schneller in die Produktion zu bringen und Dienste zu liefern, die zu 100% funktionieren.

Immer wieder habe ich erlebt, wie Lee in einem einzigen dreißigminütigen Treffen die Fortschritte von Unternehmen bei der Transformation übersprungen hat. Viel Spaß mit dem Buch! Es wird für dein Unternehmen und deine Karriere von großer Bedeutung sein!

Vorwort zur ersten Ausgabe

Wir leben in interessanten Zeiten, einer Software-Kambrischen Explosion, wenn man so will, in der die Kosten für den Aufbau neuer Systeme um Größenordnungen gesunken sind und die Konnektivität der Systeme um die gleiche Größenordnung zugenommen hat. Ressourcen wie Amazons AWS, Microsofts Azure und Googles GCP ermöglichen es uns, unsere Systeme physisch auf Größenordnungen zu skalieren, die wir uns vor ein paar Jahren noch nicht vorstellen konnten.

Die Ökonomie dieser Ressourcen und die scheinbar unbegrenzten Kapazitäten führen zu einer einzigartig schnellen Ausstrahlung neuer Ideen, neuer Produkte und neuer Märkte, wie sie vorher nicht möglich war. Aber all diese neuen Erkundungen sind nur möglich, wenn die Systeme, die wir bauen, skalierbar sind. Es ist zwar einfacher denn je, etwas Kleines zu bauen, aber ein System zu entwickeln, das schnell und zuverlässig skaliert, ist viel schwieriger, als einfach nur mehr Hardware und mehr Speicherung aufzustellen.

Softwaresysteme durchlaufen einen vorhersehbaren Lebenszyklus, der mit kleinen, gut durchdachten Lösungen beginnt, die von einer einzelnen Person vollständig verstanden werden, über das schnelle Wachstum zu einem Monolithen mit technischen Schulden, der sich dann in eine Ad-hoc-Sammlung fragiler Dienste aufspaltet, bis hin zu einem ausgereiften verteilten System, das sowohl in der Breite (mehr Nutzer) als auch in der Tiefe (mehr Funktionen) zuverlässig skalieren kann. Es ist leicht zu erkennen, was von außen getan werden muss (es zuverlässiger machen!), aber viel schwieriger, den Weg von innen zu sehen. Zum Glück ist dieses Buch der unverzichtbare Leitfaden für die Reise - von der Verfügbarkeit bis zu Service-Tiers, von Spieltagen bis zu Risikomatrizen beschreibt Lee die wichtigsten Entscheidungen und Praktiken für skalierbare Systeme.

Lee kam zu mir zu New Relic, als wir uns gerade von einem monolithischen Einzelprodukt zu einem Unternehmen mit mehreren Produkten entwickelten, während wir gleichzeitig das Hyperwachstum an zufriedenen Kunden erlebten, das New Relic so erfolgreich machte. Lee brachte eine Menge Erfahrung bei Amazon mit, sowohl im Einzelhandel, wo das Unternehmen stark wuchs, als auch bei AWS, wo es - ratet mal - ebenfalls stark wuchs. Lee war Teil von Teams, hat Teams geleitet und war aktiv an einer ganzen Reihe von Skalierungen beteiligt. Zum Glück für uns hat er die Fehler erlebt und unter teuflisch schwierigen Ausfällen gelitten und gibt diese Lektionen jetzt weiter, damit wir nicht die gleichen Narben bekommen.

Als Lee zu New Relic kam, erlebten wir gerade die Jahre, in denen wir als Teenager fehlschlugen. Unser primitiver Monolith litt unter unserem Erfolg, und unsere Verfügbarkeit, Zuverlässigkeit und Leistung waren nicht gut. Durch die Anwendung der Techniken, die er in diesem Buch beschreibt, haben wir diese Schulzeit hinter uns gelassen und den robusten Unternehmensdienst aufgebaut, der heute existiert. Eines unserer Werkzeuge war die Einführung von vier Stufen der Verfügbarkeitstechnik: Bronze, Silber, Gold und Platin. Um die Bronze-Stufe zu erreichen, musste ein Team eine Risikomatrix und definierte SLAs haben. Um die Silber-Stufe zu erreichen, musste ein Team die in der Matrix identifizierten Probleme überwachen und Spieltage nutzen; Gold bedeutete, dass die Risiken gemindert wurden; und Platin war wie CMM Stufe 5, bei der die Systeme selbstheilend sind und der Schwerpunkt auf kontinuierlicher Verbesserung liegt. Wir setzten diese Prioritäten zuerst für die Tier-1-Dienste, dann für die Tier-2-Dienste usw. und erreichten schließlich, dass alle mindestens Silber und die meisten Teams Gold (und einige Platin) erreichten.

Als ich zu InVision App wechselte, trat ich einem jüngeren Unternehmen bei, das sich ebenfalls in der Übergangsphase vom frühen Erfolg zum Hyperwachstum befand, und so treibe ich all die gleichen Techniken und Werkzeuge voran, die Lee beschreibt. Ich fordere dich auf, auf deiner Reise als Teil dieser aufregenden Explosion von neuen Systemen, Produkten und Unternehmen dasselbe zu tun: von Lee zu lernen, um deine Systeme für die Skalierung aufzubauen.

Get Architecting for Scale, 2. Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.