Keine Artikel gefunden.

Easy Agile Podcast Ep.12 Beobachtungen zur Beobachtbarkeit

Hör zu
Abonnieren Sie unseren Newsletter
  • website.easyagile.com/blog/rss.xml

In dieser Folge von The Easy Agile Podcast hören Sie, wie die Entwickler Angad, Jared, Jess und Jordan ihre Gedanken zum Thema Observability teilen.

Wollongong hat eine blühende und unterstützende Tech-Community. In dieser Folge haben wir einige unserer lokalen Entwickler aus dem Siligong-Tal zu einem Gespräch am runden Tisch zum Thema Observability zusammengebracht.

💥 Was ist Beobachtbarkeit?
💥 Wie kann man die Beobachtbarkeit verbessern?
💥 Was ist das Endziel?

Angad Sethi

„Es war eine großartige Episode, an der man teilnehmen konnte! Jess und Jordan haben einige wirklich interessante Punkte zum neuesten technischen Schlagwort — Beobachtbarkeit — geteilt.

Abonniere unbedingt, genieße die Folge 🎧

Transkript

Jared Kells:

Willkommen alle zum Easy Agile Podcast. Mein Name ist Jared Kells und ich bin Entwickler hier bei Easy Agile. Bevor wir beginnen, möchte Easy Agile den traditionellen Hütern des Landes, von dem aus wir heute senden, unsere Anerkennung aussprechen, dem Volk der Wodiwodi aus der Dharawal-Nation, und den Ältesten in der Vergangenheit, Gegenwart und aufstrebenden Ältesten unseren Respekt erweisen. Den gleichen Respekt gilt auch allen Ureinwohnern, die uns heute zuhören.

Jared Kells:

Der heutige Podcast ist also ein bisschen technisch. In meinem Arbeitsblatt steht, dass wir hier sind, um über einige aktuelle Themen für Ingenieure im IT-Sektor zu sprechen. Wie aufregend, dass wir ein paar hauptsächlich Frontend-Ingenieure haben und Angad und ich einige technische Frontend-Dinge mit Ihnen teilen werden und Jess und Jordan ein bisschen über Observability sprechen werden. Wir beginnen also mit Einführungen. Also werde ich es an Jess weitergeben.

Jess Belliveau:

Cool. Danke Jared. Danke, dass du mir auch eins gegeben hast. Also ja, mein Name ist Jess Belliveau. Ich arbeite für Apptio als Infrastrukturingenieur. Ja, Jordan?

Jordan Simonowski:

Ich bin Jordan Simonovski. Ich arbeite als Systemingenieur im Observability-Team von Atlassian. Ich bin ein bisschen ein Alleskönner, was die Technik angeht. Aber ja, ich arbeite daran, einige ziemlich leistungsfähige Systeme aufzubauen, um all unsere Daten bei Atlassian im Moment zu verarbeiten. Also, das macht Spaß.

Angad Seth:

Hallo an alle zusammen. Ich bin Angad. Ich arbeite für Easy Agile als Softwareentwickler. Nichts ausgefallenes wie ihr.

Jared Kells:

Nichts Besonderes!

Jess Belliveau:

Verkaufe dich nicht unter.

Jared Kells:

Ja, sage ich. Ja, also mein Name ist Jared und ja, Senior Developer bei Easy Agile, der an unseren Apps arbeitet. Also arbeite ich hauptsächlich an Programmen und Roadmaps. Und ja, es sind Frontend-Apps mit viel JavaScript. Darin liegt also unsere Erfahrung. Ich habe von diesem Ding namens Observability gehört, bei dem es sich meiner Meinung nach nur um Logs und so handelt, oder?

Jess Belliveau:

Ja, ja. Das war's, wir schließen ab!

Jared Kells:

Der Podcast ist vorbei! Erzählen Sie uns etwas über Beobachtbarkeit.

Jess Belliveau:

Ja, okay, ich werde, ja. Ja, ich dachte, zuerst mache ich eine kleine Sache darüber, warum Observability, warum wir darüber reden und irgendwie für die Leute, die zuhören, wie wir hierher gekommen sind. Wir haben uns kurz unterhalten, bevor wir mit den Aufnahmen begonnen haben, um herauszufinden, was ein breiteres Publikum interessieren könnte, über das die Leute vielleicht nicht viel wissen. Und ich denke, es gibt viele Entwicklungen im breiten IT-Bereich, über die Sie sprechen könnten. Es gibt jetzt so viele verschiedene Dinge, die einfach explodieren. Beobachtbarkeit ist ein Thema, das seit ein paar Jahren ein heißes Thema ist. Und es ist etwas, das ein zentraler Bestandteil meines Jobs und auch Jordans Job ist. Es ist also etwas, worüber wir leicht sprechen können, und es ist etwas, in das Sie eine Einführung geben können, ohne zu technisch zu werden. Wir wollen also nicht untergehen. Das ist etwas, das man wirklich tief ins Unkraut eintauchen kann, also haben wir es als etwas ausgewählt, das wir euch beiden hoffentlich auf einer Ebene erklären können, die auch die Leute zu Hause interessieren könnte, zuzuhören.

Jess Belliveau:

Jordan und ich haben diese vier Stichpunkte herausgefunden, die wir behandeln wollten, und vielleicht kann ich einen kleinen Überblick darüber machen, und dann kann ich Jordan dazu bringen, den ersten Aufzählungspunkt abzudecken, ihn einfach direkt unter den Bus werfen.

Jordan Simonowski:

In Ordnung!

Jess Belliveau:

Deshalb dachten wir, wir würden versuchen, Ihnen zunächst zu beschreiben, was Beobachtbarkeit ist. Weil das hübsch ist, der Begriff gibt Ihnen nicht viel von dem, was er ist. Es gibt Ihnen einen kleinen Hinweis, aber es ist gut, als Grundlinie festzulegen, wovon wir sprechen, wenn wir sagen, was Beobachtbarkeit ist. Und warum sollte ein Entwicklungsteam dann Observability wollen? Warum sollte ein Unternehmen Observability wollen? Ein gewisses hohes Niveau, welche Vorteile Sie daraus ziehen und wer sie möglicherweise benötigt, was eine große Sache ist. Sie können sich in diese brandaktuellen Schlagworte der Branche verwickeln und sich auf Dinge festlegen, die Sie möglicherweise nicht benötigen, oder solche Dinge.

Jared Kells:

Jep.

Jordan Simonowski:

Jep.

Jess Belliveau:

Wir dachten, wir würden über einige einfache Gewinne sprechen, die man mit Observability erzielen kann. Also einige der wirklich grundlegenden Dinge, die Sie ausprobieren können, und welche Vorteile Sie daraus ziehen. Und dann dachten wir einfach, weil wir nicht versuchen werden, zu tief zu gehen, könnten wir einfach ein paar Hinweise auf einige Websites und einige YouTube-Vorträge geben, um weiter zu lesen, die die Leute machen wollen, und von dort aus weitermachen. Also ja, Jordan, du willst...

Jared Kells:

Hört sich gut an.

Jess Belliveau:

Ja. Ich hoffe, hoffentlich. Wir werden sehen, wie das läuft! Und ich denke, wenn ihr auch Fragen habt, sollten wir das tun. Wenn es Dinge gibt, von denen ihr denkt, dass wir sie nicht behandeln oder die ihr mehr wissen wollt, fragen.

Jordan Simonowski:

Ich schätze, um mit Observability zu beginnen. Es ist ein Thema, das mich wirklich begeistert, denn als jemand, der schon so lange im Bereich Dev-Ops und SRE tätig ist, ist Observability auf den Markt gekommen und verspricht, den Kreislauf oder eine Feedback-Schleife bei der Softwarebereitstellung zu schließen. Und es fühlt sich an, als wäre das etwas, was wir im Moment nicht wirklich haben. Und ich verstehe, dass Beobachtbarkeit vielleicht neu und glänzend klingt, aber ich denke, der Begriff selbst existiert, um sich vielleicht von dem abzuheben, was es derzeit gibt. Viele von uns, die in der Tech-Branche arbeiten, kennen sich mit Überwachung und dem Laden und solchen Dingen aus. Und ich denke, sie erfüllen ihren eigenen Zweck und sie sind auch in keiner Weise veraltet. Dinge wie herkömmliche Überwachungstools. Aber Observability hat sich meiner Meinung nach als eine Möglichkeit erwiesen, die überwältigend komplexen Systeme zu verstehen, die wir gerade aufbauen. Viele Unternehmen bewegen sich wahrscheinlich in Richtung einer komplizierten Architektur verteilter Systeme, Microservices oder anderer Schlagworte.

Jordan Simonowski:

Aber auch für Dinge wie einen traditionellen Monolithen. Die Beobachtbarkeit hilft uns wirklich dabei, unseren Systemen neue Fragen zu stellen. Die Art und Weise, wie es erklärt wird, ist die Überwachung von Ausgängen auf unsere bekannten Unbekannten. Mit dem Dienstalter geht die Fähigkeit einher, fast vorherzusagen, auf welche Weise Ihre Systeme ausfallen werden. Sie werden es also wissen. Je länger Sie in der Branche tätig sind, Sie wissen das, zum Beispiel ein Java-Server fällt auf X, Y, Z verschiedene Arten aus, also sollten wir wahrscheinlich unseren JVM-Heap überwachen, oder was auch immer es ist.

Jared Kells:

Das wollte ich sagen!

Jordan Simonowski:

Ich werde versuchen, nicht zu viel darauf einzugehen...

Jared Kells:

Der Speicher geht aus!

Jordan Simonowski:

Ja. Also das ist etwas, von dem du erwartest, dass es irgendwann scheitern wird. Und das ist etwas, das Sie als bekannt unbekannt betrachten können. Aber das Versprechen der Beobachtbarkeit ist, dass wir genügend Daten liefern sollten, um neue Fragen stellen zu können. Die Art und Weise, wie darüber gesprochen wird, sehen Sie, es ist eine unbekannte Unbekannte in unserem System, über die wir etwas herausfinden und neue Fragen stellen wollen. Und hier wird, glaube ich, die Beobachtbarkeit eingeführt, um diese Fragen zu beantworten. Reicht die Antwort aus? Willst du, dass ich näher auf dieses Zeug eingehe? Ich kann den ganzen Tag darüber reden.

Jared Kells:

Ist es wie ein [Crosstalk 00:08:05]. Also, um es dir noch einmal zu sagen, um zu sehen, ob ich es verstanden habe. Also, wenn ich eine, traditionell mit einer Java-App, habe, könnte ich Erinnerungen protokollieren. Das liegt daran, dass ich weiß, dass JVMs der Arbeitsspeicher ausgeht, und das ist eine Sache, die ich überwache, aber die Beobachtbarkeit ist umfassender. Sie übertreiben quasi das, was Sie überwachen und protokollieren, sodass Sie...

Jordan Simonowski:

Ja. Und ich würde nicht unbedingt sagen, dass es übertrieben ist. Ich denke, es fügt Ihren Daten vielleicht etwas mehr Kontext hinzu. Wenn also jemand von Ihnen schon einmal mit Traces gearbeitet hat, ist Observability der Funktionsweise von Traces sehr ähnlich und baut einfach auf der Prämisse von Traces auf, schätze ich. Sie erstellen also diese Ereignisse, und bei diesen Ereignissen handelt es sich um verschiedene Transaktionen, die in Ihren Anwendungen stattfinden könnten, wobei normalerweise eine Anfrage eingereicht wird. Und mit dieser Anfrage können Sie ihr eine ganze Reihe von Kontext hinzufügen. Sie können hinzufügen, auf welchem Server dies möglicherweise läuft, in welcher Zeitzone. All diese zusätzlichen und all die Aufreger. Sie können die Benutzeragentur hineinwerfen, wenn Sie möchten. Die Idee der Beobachtbarkeit besteht darin, dass Sie nicht unbedingt durch Daten mit hoher Kardinalität eingeschränkt sind. Daten mit hoher Kardinalität sind Datensätze, die sich in Bezug auf die Art der Daten, die sie repräsentieren, oder die Kombinationen von Datensätzen, die Sie haben könnten, erheblich ändern können.

Jordan Simonowski:

Wenn Sie also Versandmetriken für etwas haben möchten, auf Benutzerbasis, und Sie sich ansehen möchten, wie verschiedene Benutzer von den Dingen betroffen sind, würde das als Metrik mit hoher Kardinalität betrachtet werden. Und in den meisten Fällen können traditionelle Überwachungsunternehmen oder Anbieter von Messwerten Ihnen das nicht wirklich als Service anbieten. Das ist der Punkt, an dem Sie anfangen, wahnsinnig hohe Rechnungen für Dinge wie Datadog oder was auch immer es ist, zu bezahlen, weil sie jetzt als neue Metriken betrachtet werden. Im Gegensatz zu Observability versuchen wir, unsere Daten zu speichern und sie so abzufragen, dass wir ziemlich große Datensätze speichern und sagen können: „Cool. Wir haben Fehler, die von dieser Art von Benutzern kommen.“ Und Sie können dort anfangen, Korrelationen zu bestimmten Dingen aufzubauen. Sie können herausfinden, dass bei Benutzern aus einer bestimmten Zeitzone oder einem bestimmten Gerät nur dieser Fehler auftritt. Und von dort aus können Sie, glaube ich, bessere Methoden entwickeln, um zu verstehen, wie eine bestimmte Änderung die Dinge kaputt gemacht haben könnte. Oder bestimmte Randfälle, die Sie sonst mit etwas wie CPU- oder Speicherüberwachung nicht erkennen könnten.

Angad Seth:

Wäre es fair zu sagen...

Jared Kells:

Ja. Es ist [Crosstalk 00:11:02].

Angad Seth:

Oh, tut mir leid, Jared.

Jared Kells:

Nein, du kannst...

Angad Seth:

Wäre es fair zu sagen, dass Beobachtbarkeit also im Grunde eine Reihe von Prinzipien ist oder ein Weg, unbekannte Unbekannte zu finden?

Jordan Simonowski:

Ja.

Angad Seth:

Oh.

Jess Belliveau:

Und ich sollte Sie besser ausrüsten, um herauszufinden, dass eine Menge Leute denken, Sie denken, dass Beobachtbarkeit eine Sache ist, die Sie einsetzen und haben und ein Kästchen ankreuzen können, aber ich mag Ihre Wortwahl, wenn es um eine Reihe von Prinzipien oder Best Practices geht. Es gibt Ihnen sozusagen eine Anleitung zu diesen Themen und sorgt dafür, dass Ihre Anwendung eine gute Protokollierung hervorbringt. Also strukturierte Protokolle. Sie erhalten also immer das gleiche Protokollformat, das Sie sich ansehen können. Tracing, worüber Jordan ein bisschen gesprochen hat. So haben Sie die Möglichkeit, zu verfolgen, wie ein Benutzer mit all den verschiedenen Microservices interagiert, und möglicherweise auch zu sehen, wo etwas schief läuft, und auch Kennzahlen. Das Gute an Metriken ist also, dass wir die Dinge ein bisschen umdrehen und versuchen, eine Anwendung zu erstellen, anstatt, und ich will nicht zu technisch werden, Black-Box-Monitoring zu machen, bei dem wir draußen sind und versuchen, mit solchen Sonden und Checks reinzuschauen. Aber die Idee bei Metriken ist, dass die Anwendung diese Metriken tatsächlich ausgibt, um uns darüber zu informieren, in welchem Zustand sie sich befindet, und sie dadurch besser beobachtbar zu machen.

Jess Belliveau:

Ja, mir gefällt deine Wortwahl, Angad, dass es wie diese Praktiken ist, diese Art von Leitfaden, wohin man gehen muss, was wahrscheinlich zu dem nächsten Punkt führt, warum sollte ein Team das implementieren wollen. Wenn du noch einmal anfangen willst, Jordan?

Jordan Simonowski:

Ja, ich kann anfangen. Und ich gebe dir auch ein bisschen mehr Zeit zum Reden, Jess in diesem. Ich werde nicht so viel schimpfen.

Jess Belliveau:

Oh, dafür habe ich mich nicht angemeldet!

Jordan Simonowski:

Ich denke, die Teams würden es wollen, weil es wirklich von Ihrer Organisation und, glaube ich, von der Größe der Teams abhängt, in denen Sie arbeiten. In den meisten Fällen würde ich sagen, dass Sie Observability nicht selbst im eigenen Haus erstellen möchten. Das ist etwas, das Sie können, Observability-Funktionen selbst, Sie werden es nicht erreichen, indem Sie einfach etwas kaufen, also Sie können Dev-Ops nicht kaufen, Sie können Agile nicht kaufen, Sie können Observability auch nicht kaufen.

Jared Kells:

Warte, warte. Auf meinem Runsheet steht, dass ich für Easy Agile werben soll, das klingt also nach einem guten Übergang-

Jess Belliveau:

Es sei denn, du willst es kaufen. Wenn du Agile kaufen möchtest, dann [Crosstalk 00:13:55] im Marketplace.

Jared Kells:

Ja, tut mir leid, tut mir leid, ja! Ja, mach weiter.

Jordan Simonowski:

Sie können Tools kaufen, die Ihnen das Leben erheblich erleichtern, und es gibt bereits eine Menge Dinge da draußen, die Dinge für Menschen tun und wirklich interessante Daten an die Oberfläche bringen, die sich die Leute vielleicht ansehen möchten. Ich denke, es gibt ein paar Start-ups wie LightStep und Honeycomb, die Ihnen eine wirklich intuitive Möglichkeit bieten, Ihre Daten in der Produktion zu verstehen. Aber warum Sie solche Dinge benötigen, ist, dass Sie den Zustand Ihrer Systeme zu einem bestimmten Zeitpunkt wissen wollen, und um, glaube ich, eine gute Betriebshygiene und eine gute Produktionsexzellenz zu entwickeln, ich denke, wie Liz Fong-Jones es ausdrücken würde, müssen Sie in der Lage sein, diese Rückkopplungsschleife zu schließen. Wir haben bereits eine ganze Reihe von Tools. Wir haben also CICD-Systeme eingerichtet. Wir haben jetzt Feature-Flags, die uns, glaube ich, helfen, Deployments von Releases zu entkoppeln. Sie können Code bereitstellen, ohne tatsächlich Code zu veröffentlichen, und Sie können diese Macht jetzt Ihren PMs geben, wenn Sie möchten, mit Feature-Flags, was großartig ist.

Jordan Simonowski:

Aber jetzt können Sie diesen Kreislauf auch komplett schließen, und während Sie eine Anwendung bereitstellen, können Sie sagen: „Ich möchte diese Bereitstellung kanalisieren. Ich möchte dies für 10% meiner Benutzer bereitstellen, vielleicht für Benutzer, die sich für Beta-Versionen oder etwas aus unserer Anwendung angemeldet haben, und Sie können sich tatsächlich ansehen, wie das funktioniert, bevor Sie es einem breiteren Publikum zugänglich machen. Es macht Bereitstellungen also viel sicherer. Es gibt Ihnen auch ein besseres Verständnis dafür, wie Sie sich auch auf die Benutzer auswirken. Und es gibt eine ganze Reihe von Tools, mit denen Sie auch diese Dinge ermitteln können. Wenn Sie sich also ansehen, wie viele Unternehmen derzeit SRE durchführen, oder wenn Sie wissen, wie zuverlässig ihre Anwendungen aussehen, haben Sie auch Dinge wie SLOs im Einsatz. Und SLOs-

Jared Kells:

Was ist ein SLO?

Jordan Simonowski:

Sie sind alle mit Benutzererlebnissen verbunden. Sie sagen also: „Kann mein Benutzer diese spezielle Interaktion durchführen?“ Und wenn Sie das effektiv messen und wissen, wie sich Ihre Änderungen auf die Benutzer auswirken, können Sie ganz einfach entscheiden, ob Sie weiterhin Funktionen bereitstellen oder ob Sie alles fallen lassen und an der Zuverlässigkeit arbeiten, um sicherzustellen, dass Ihre Benutzer nicht beeinträchtigt werden. Es ist also dieser sehr nutzerorientierte Ansatz, Dinge zu tun. Ich denke, wenn es darum geht, den Kreis zu schließen, liefert uns die Beobachtbarkeit die Daten, anhand derer wir sagen können: „Ja, so sind die Nutzer betroffen. Auf diese Weise, schätze ich, geht es dem 99. Perzentil unserer Nutzer gut, aber wir haben 1%, die negative Probleme mit unserer Anwendung haben.“ Und von dort aus können Sie wirklich Dinge lokalisieren und sagen: „Cool. Benutzer mit diesem bestimmten Browser oder diesem speziellen Browser oder wo wir diese App bereitgestellt haben. „Nehmen wir an, wenn Sie eine globale Bereitstellung haben, haben Sie sie zuerst auf einer Insel bereitgestellt, weil es Ihnen eigentlich egal ist, was mit ihnen passiert. Sie können sagen: „Oh, wir haben tatsächlich Sachen für sie kaputt gemacht.“ Und Sie können es rückgängig machen, bevor Sie sich auf 100% Ihrer Nutzer auswirken.

Jared Kells:

Ja. Mir hat gefallen, was du über den Test gesagt hast. Ich habe das Akronym vergessen, aber ich teste tatsächlich das Verhalten des Endbenutzers. Das finde ich ziemlich aufregend, weil wir all diese Metriken haben, die ein bisschen nutzlos sind. Sie sind cool: „Oh, es nutzt 1% CPU, wie es immer ist, jetzt ist mir das egal“, aber kann ein Benutzer die App öffnen und ein Problem mit der Maus herumschleppen? Es ist wie...

Jess Belliveau:

Ja, das ist ein wirklich gutes Beispiel, oder?

Jared Kells:

Das ist es, was mir wirklich wichtig ist.

Jess Belliveau:

Bei der CPU-Sache mit 1% könnte man sich ein Diagramm zur CPU-Auslastung ansehen und eine Bereitstellung sehen, und die CPU-Auslastung ändert sich nicht. Ist alles gesund oder nicht? Sie wissen es nicht, aber wenn Sie tiefere Informationen über die Benutzerinteraktionen erhalten, könnten Sie 1% der CPU verwenden, um HTTP500-Fehler an 80% der Kundenbasis zu verteilen, so oder so.

Angad Seth:

Wie macht man das? Der SLO-Bit, woher weißt du, dass sich ein Benutzer anmelden und ein Problem ziehen kann?

Jordan Simonowski:

Ja. Ja, das würde mit einer guten Instrumentierung einhergehen...

Angad Seth:

Gute Frage?

Jordan Simonowski:

Ja, es kommt darauf an, die Beobachtbarkeit zu berücksichtigen, wenn Sie neue Funktionen entwickeln, genauso wie Sie darüber nachdenken würden, beim Schreiben eine bestimmte Sache in Ihrem Code zu protokollieren oder Tests für Ihren Code zu schreiben, während Sie auch Code schreiben. Sie sollten darüber nachdenken, wie Sie etwas instrumentieren können und wie Sie verstehen können, wie diese spezielle Funktion in der Produktion funktioniert. Denn ich denke, viele Agile- und Dev-Ops-Prinzipien sagen uns jetzt, dass wir unsere Anwendungen in der Produktion haben wollen. Und als Entwickler endet unsere Verantwortung nicht, wenn wir etwas bereitstellen. Unsere Verantwortung als Entwickler endet, wenn wir dem Unternehmen einen Mehrwert geboten haben. Und Sie müssen verstehen, dass Sie das tatsächlich tun. Und da müssen Sie, glaube ich, über die Beobachtbarkeit bei vielen dieser Dinge nachdenken und Ihre Erfolgskennzahlen tatsächlich messen. Wenn Sie also wissen, dass Ihre Anwendung erfolgreich ist, wenn sich Ihr Benutzer anmelden und Dinge herumziehen kann, dann ist das genau das, was Sie messen möchten.

Jared Kells:

Ich denke, wir müssen bauen...

Jordan Simonowski:

Ja?

Jared Kells:

Oh, tut mir leid, Jordan.

Jordan Simonowski:

Nein, du gehst.

Jared Kells:

Ich wollte nur sagen, dass wir unsere Apps bereits unter Berücksichtigung von Integrationstests entwickeln müssen. Also browserbasierte Tests rund um neue Funktionen. Es würde also darum gehen, Funktionen unter Berücksichtigung dieser und derselben Sache zu entwickeln, aber für Tests und Produktion.

Jess Belliveau:

Ja, und das eigentliche Wie, der eigentliche Teil zum Schreiben von Code, da ist dieses wirklich großartige Projekt, das Open Telemetrie-Projekt, das all diese Arten von APIs und SDKs bereitstellt, die Entwickler nutzen können, und es ist herstellerunabhängig. Wenn du also über das Wie sprichst, etwa: „Wie mache ich das? Wie instrumentiere ich Dinge?“ Oder: „Wie gebe ich Kennzahlen aus?“ Sie bieten all diese hilfreichen Bibliotheken und Includes, die Sie haben können, denn das Letzte, was Sie tun möchten, ist, diese benutzerdefinierte Lösung auf den Markt zu bringen, weil Sie dann nur Ihre technischen Schulden erhöhen. Sie versuchen, die Dinge einfacher zu machen, verlassen sich dann aber auf: „Nun, ich muss Jared Kells weiter beschäftigen, weil er unsere Login-Engine geschrieben hat und niemand sonst weiß, wie sie funktioniert.

Jess Belliveau:

Und dann die andere Sache, die mir auch bei so etwas wie offener Telemetrie in den Sinn kommt, und wir haben ein bisschen über Datadog gesprochen. Datadog ist also ein SaaS-Anbieter, der sich auf Observability spezialisiert hat. Und Sie würden Ihre Metriken und Ihre Logs und Ihre Traces an sie übertragen und sie bieten Ihnen eine Benutzeroberfläche zum Anzeigen. Wenn Sie sich für etwas entscheiden, das herstellerunabhängig ist, nehmen wir einfach das Beispiel von Easy Agile. Nehmen wir an, sie starten Datadog und in sechs Monaten wollen wir Datadog nicht mehr verwenden, wir wollen SignalFX oder was auch immer das Splunk-Modell jetzt ist, verwenden.

Jordan Simonowski:

Ich denke NorthX.

Jess Belliveau:

Ja. Du kannst deinen Endpunkt ändern, dieselben Metriken und all diese Dinge, vielleicht mit ein paar kleinen Anpassungen, aber die Idee ist, dass du dich nicht auf eine einzige Sache festlegen willst.

Jordan Simonowski:

Ihre Datenstrukturen bleiben gleich.

Jess Belliveau:

Ja. Damit du es fast nahtlos machen könntest, ohne dass die Entwickler es wissen. In der Vergangenheit gab es sogar Unternehmen, die meiner Meinung nach auf mehrere Anbieter umgestellt haben. Sie könnten also Anbieter A nutzen und dann mit Anbieter B einen Machbarkeitsnachweis durchführen, um zu sehen, wie die Erfahrung ist, und Sie geben Ihre Daten einfach auch dort weiter.

Jared Kells:

Ja. Ich denke, unsere Verbindung zu Datadog wird aus all den Dashboards und allem, was wir gemacht haben, bestehen. Es sind nicht so sehr die Daten.

Jess Belliveau:

Ja. Das ist quasi der große Verkaufsschlager, richtig. Das ist die Art und Weise, wie du interagierst. Das ist der Punkt, an dem sie ins Spiel kommen wollen. Es macht es Ihnen leichter, diese Daten zu interpretieren und sie so zu manipulieren, dass sie Ihren Bedürfnissen entsprechen und so weiter.

Jordan Simonowski:

Observability deutet auf Dashboards hin, oder?

Jess Belliveau:

Ja, vielleicht. Du hast diesen Begriff auch benutzt, Jordan, „Produktionsexzellenz“. Und wenn wir darüber sprechen, wer Observability braucht, habe ich ein bisschen darüber nachgedacht, während Sie gesprochen haben. Und für mich ist Production Excellence, oder in Apptio nennen wir das Produktionsbereitschaft, Betriebsbereitschaft und diese Art von Dingen ist so, als ob wir etwas in der Produktion einsetzen wollen, wie zum Beispiel welche Best Practices wollen wir haben, bevor wir das tun? Und ich denke, Observability ist eine wirklich gute Idee, weil sie Ihnen in Zukunft hilft. Sie wissen nicht, welche Probleme Sie später haben werden, aber Sie rüsten Ihre Teams so aus, dass sie problemlos auf diese Probleme reagieren können. Wir waren wahrscheinlich alle dort, wir haben den Produktionscode implementiert und wir haben keine Observability, wir haben einen riesigen Ausfall. Was ist schief gelaufen? Nun, niemand weiß es, aber wir wissen, dass das die Lösung ist, und es ist schwer, daraus zu lernen, oder man muss wohl daraus lernen und den Benutzer vor zukünftigen Dingen schützen, ja.

Jess Belliveau:

Wenn ich denke, dass einfache Beobachtbarkeit gewinnt, kommt mir als Erstes die ganze Idee der strukturierten Protokollierung in den Sinn, was eigentlich die Idee ist, dass Ihre Anwendung zuallererst Sie protokollieren. Ziemlich wichtig als Ausgangspunkt, aber dann haben Sie ein strukturiertes Protokollformat, mit dem Sie die Logs auch programmgesteuert weitergeben können. Wenn Sie in der Zeit zurückreisen, sah die Protokollierung vielleicht nur wie einfacher Text mit einer Zeile, einem Zeitstempel und einer Fehlermeldung aus. Was auch immer der Entwickler beschlossen hat, in die Standardausgabe zu schreiben, oder in die Fehlerdatei oder so ähnlich. Ich denke, es gibt einen allgemeinen Trend hin zu JSON, einem tatsächlich formatierten Blob mit dieser bekannten Struktur, damit Sie ihn sich ansehen können. Tracing ist wahrscheinlich kein einfacher Gewinn. Das ist ein bisschen schwieriger. Sie können es mit offener Telemetrie und Bibliotheken und so implementieren. Ich denke, es erfordert ein bisschen mehr Verständnis Ihrer Codebasis und darüber, wo die Ablaufverfolgung ausgelöst werden soll, und solche Dinge, das Analysieren von Kontexten, solche Dinge.

Jordan Simonowski:

Ich denke Atlassian, wenn du wahrscheinlich einfach nur wissen willst, dass alles in Ordnung ist. Auf einer ziemlich oberflächlichen Ebene. Vielleicht willst du einfach nur eine Art Uptime für einen Trend machen. Und wenn dann, glaube ich, Ihr Code komplexer wird oder Ihr Produkt etwas komplexer wird, können Sie anfangen, Dinge hinzuzufügen. Aber ich denke, die Dinge, die Sie kennen, tatsächlich zu kennen oder an die Oberfläche zu bringen, könnte kaputt gehen. Das wären wahrscheinlich deine schnellsten Siege.

Jess Belliveau:

Nun, lassen Sie uns einige Dinge zur weiteren Lektüre erwähnen. Wenn Sie sich einen Überblick über das Ganze verschaffen wollen, hat das Google SRE-Buch von vor ein paar Jahren begonnen, echte Observability stark in Bewegung zu setzen. Das Google SRE-Zeug deckt die gesamte Bandbreite ihrer Praxis im Bereich Soak Reliability Engineering ab, und Observability ist ein Teil davon, dazu gibt es einige großartige Kapitel. Ich glaube, O'Reilly hat jetzt ein Buch über Observability veröffentlicht, das sich nur der Beobachtbarkeit widmet.

Jordan Simonowski:

Ich denke, das ist noch in der frühen Version, wenn die Leute Kapitel googeln wollen.

Jess Belliveau:

Das offene Telemetrie-Zeug, wir werden einen Link dazu setzen, ich denke, das ist wirklich praktisch zu wissen.

Angad Seth:

Aus [unverständlich 00:26:12], das ist meine Sicht als Entwickler, sage ich, ich wollte Cornflake Use Datadog bei Easy Agile einführen. Nicht sehr vertraut, ich fühle mich nicht sehr wohl damit. Ich weiß, wie man navigiert, aber wie kann ich schnell mit der Einführung von Observability beginnen? Es tut mir leid, dass ich meinen direkten Job oder meinen Arbeitsplatz gesperrt habe.

Jordan Simonowski:

Ich würde sagen, ich könnte hier voreingenommen sein. Jess, korrigiere mich oder gib deine Meinung dazu ab, ich würde mich dafür stark zu SLOs neigen. Und Sie können das kurz im SRE nachlesen-

Jess Belliveau:

Wofür steht SLO, Jordan?

Jordan Simonowski:

Okay, tut mir leid. Schlagworte! SLO ist ein Service Level Objective, nicht zu verwechseln mit Service Level Agreement. Eine Vereinbarung selbst ist vertraglich und Sie können den Leuten Geld zahlen, wenn Sie gegen diese verstoßen. Ein SLO ist etwas, das Sie in Ihrem Team festlegen und Sie haben ein Zuverlässigkeitsziel, weil wir an einem Punkt angelangt sind, an dem wir verstehen, dass sich alle Systeme zu jedem Zeitpunkt in einem heruntergekommenen Zustand befinden. Und ja, Zuverlässigkeit ist nicht unbedingt binär, sie ist nicht unzuverlässig oder zuverlässig. Meistens ist es meistens zuverlässig und das gibt uns eine bessere gemeinsame Sprache, denke ich. Und Sie können das SRE-Handbuch von Google lesen, das kostenlos online verfügbar ist und Ihnen ein ziemlich gutes Verständnis von Datadog vermittelt.

Jordan Simonowski:

Ich glaube, als ich es das letzte Mal benutzt habe, gab es ein SLO-Angebot. Aber ich denke, wie ich bereits erwähnt habe, haben Sie ein SLO für bestimmte Funktionen oder Merkmale Ihrer Anwendung festgelegt. Sie sagen: „Mein Benutzer kann das in 99% der Fälle tun“, oder was auch immer Sie sich für ein anderes Zuverlässigkeitsziel setzen möchten. Ich würde eine Zuverlässigkeit von fünf Neunern nicht empfehlen. Sie werden sich wahrscheinlich selbst ausbrennen, wenn Sie versuchen, dorthin zu gelangen. Und du hast dir dieses Ziel gesetzt. Und Sie wissen genau, was Sie messen, Sie messen bestimmte Arten von Funktionen. Und Sie wissen, dass Benutzer betroffen sind, wenn Sie gegen diese Regeln verstoßen. Und hier können Sie tatsächlich anfangen, über Observability nachzudenken. Sie können darüber nachdenken: „Welche anderen Funktionen implementieren wir, mit deren Messung wir beginnen können?“ Oder: „Welche nutzerorientierten Dinge implementieren wir, mit deren Messung wir beginnen können?“

Jordan Simonowski:

Andere Dinge, die Sie sich wahrscheinlich ansehen könnten, sind, ich denke, sie sind sowieso alle in dem Buch behandelt, die Aktualität der Daten in gewisser Weise. Sie möchten sicherstellen, dass die Daten, die Benutzern angezeigt werden, relativ aktuell sind. Sie möchten nicht, dass sie sich veraltete Daten ansehen, also können Sie auch versuchen, solche Dinge zu messen. Aber Sie können es so ziemlich in die meisten Funktionen einer Website unterteilen. Es ist nicht mehr wie bei einem Ping-Check, bei dem Sie nur sagen: „Ja, HTTP, okay. Meine Bewerbung ist in Ordnung.“ Sie sagen: „Meine Benutzer sind tatsächlich von Dingen betroffen, die nicht funktionieren.“ Und von dort aus können Sie anfangen, Dinge zu messen. Und das sollte Ihnen ein besseres Verständnis oder zumindest eine bessere Vorstellung davon geben, wo Sie mit dem, was Sie messen möchten, beginnen und wie Sie es messen möchten. Das wäre meine Meinung dazu, wo Sie damit beginnen sollten, wenn Sie es einführen wollen.

Jared Kells:

Wir werden ein bisschen über den Status sprechen und wie bei einigen davon, wie bei unseren sehr Frontend-lastigen Anwendungen, die wir erstellen, sodass die Anwendungen, die wir erstellen, einfach im Browser laufen und der traditionelle Status, wie Sie sich das vorstellen würden, einfach eine sehr einfache API abruft, die einige Dinge mit einer gewissen Authentifizierung in die Datenbank schreibt und so weiter. Was die Zuverlässigkeit der Dienste angeht, so ist es wirklich zuverlässig. Diese winzigen APIs haben einfach nie Probleme, weil es einfach so einfach ist. Und nun ja, sie haben eine Menge Überwachung rund um das Thema. Aber unser gesamter Zustand ist eigentlich, wenn Sie sagen: „Beobachten Sie den Zustand des Systems“, größtenteils der Zustand in einem Browser. Und wie bringen wir Beobachtbarkeit in das hinein?

Jess Belliveau:

Eine große Sache ist wirklich, es gibt keine Sache, die auch für alle passt. Wenn wir auch über SLO-Sachen sprechen, geht es darum zu verstehen, was nicht so sehr für Ihr Unternehmen, sondern auch für Ihr Team wichtig ist. Wenn Sie dieses Produkt liefern, was ist Ihnen besonders wichtig? Also ein SLO, das für mich bei Apptio funktionieren könnte, wird wahrscheinlich nicht für Easy Agile funktionieren. Das erweitert auch mein Wissen über Frontend-Sachen wirklich, aber wenn wir sagen, dass wir auch den Staat beobachten wollen, meinen wir nicht unbedingt nur den Staat. Vielleicht möchten Sie bei jeder dieser APIs wissen, wie lang die Antwortzeit für diese API ist, wenn sie ausgelöst wird. Das könnte also eine wichtige Metrik sein. Sie können also feststellen, ob eine dieser APIs zu Latenz führt und Ihre Benutzererfahrung dadurch beeinträchtigt wird. Zum Beispiel: „Hey, als wir in der dritten Version waren und Benutzer hier mit unserem Service interagierten, reagierte er mit dieser prozentualen Latenz. Wir haben eine Version veröffentlicht und seitdem sehen wir, dass es jetzt in diesem Perzentil liegt. Haben wir die Leistung herabgesetzt?“ Die Benutzer beschweren sich vielleicht nicht, aber das könnte etwas sein, das das Team dann untersuchen und zu einem Sprint hinzufügen kann. Hey, ich verwende jetzt Agile-Begriffe. Achtung!

Jared Kells:

Das ist ein wirklich gutes Beispiel, Jess. Leistungsprobleme sind für uns in der Regel keine API, die schlecht funktioniert. Es liegt daran, dass in dieser sehr komplizierten Frontend-Anwendung nicht mehr in der gleichen Reihenfolge wie früher ausgeführt wird, oder es gibt eine komplexe Interaktion, an die wir nicht gedacht haben, sodass mehr Daten als erwartet angefordert werden. Die APIs kehren zurück. Sie sind größtenteils nie langsam, aber wir haben Leistungsrückgänge, von denen wir vielleicht nichts wissen, ohne sie zu sehen oder zu untersuchen. Die Beobachtbarkeit erfolgt wirklich auf der Browserebene des einzelnen Benutzers. Macht das Sinn? Ich möchte wissen, wie lange es gedauert hat, bis diese spezielle Interaktion stattgefunden hat.

Jess Belliveau:

Ja. Solche Dinge habe ich noch nie gemacht. Außerdem, ich schätze, Sie könnten möglicherweise betroffen sein, und dann haben Sie es auch mit Endbenutzer-Manifestationen zu tun. Sie könnten wahrnehmen...

Jared Kells:

Ja, sicher.

Jess Belliveau:

... Höhere Leistung auf ihrem Laptop oder so, oder ihrem ISP oder so. Es wäre wirklich schwierig, sicherzustellen, dass Sie von solchen Dingen nicht auch Geräusche bekommen.

Jordan Simonowski:

Ja. Es gibt wohl Tools wie Sentry, die existieren, um Ihnen ein bisschen besser zu verstehen, was an Ihrem Frontend passiert. Die Art und Weise, wie Sentry in der Regel mit JavaScript arbeitet, ist, dass Sie eine verkleinerte Map Ihres JS auf Sentry hochladen, Ihren Code bereitstellen und dann, wenn etwas kaputt geht oder auf ziemlich unerwartete Weise funktioniert, das in der Regel auftaucht, wobei Sentry Ihnen genau sagt, in welcher Zeile diese Art von Dingen passiert, und es ist ein wirklich cooles Tool für diese Firmenkram. Ich weiß nicht, ob es dir die richtigen Einblicke geben würde, glaube ich, in Bezug auf Leistung oder...

Jared Kells:

Ja, wir verwenden ein ähnliches Tool und es funktioniert bei Abstürzen und solchen Dingen. Und was die Beobachtbarkeit angeht, protokollieren wir Aktionen wie Zustandsmutationen im Frontend, nicht die tatsächliche Statusänderung, sondern nur Beschriftungen, die angeben, dass Sie eine Problemzusammenfassung aktualisiert haben oder auf diese Schaltfläche geklickt haben, so etwas, und wir senden sie mit unseren Absturzberichten. Und es ist super hilfreich, diese Art von Beobachtbarkeit zu haben. Also ich glaube, ich weiß, wovon ihr redet. Aber ich bin nur [Crosstalk 00:35:25], ja.

Jess Belliveau:

Ja, das ist, glaube ich, fast eine Art von Rückverfolgung. Wenn Jordan und ich über Tracing sprechen, denken wir vielleicht an 12 verschiedene Microservices in AWS, die alle miteinander interagieren, während Sie das eher verschieben. Das ist quasi alles, was im Browser interagiert, und nur diese Historie davon zu haben, ist das, was der Benutzer getan hat und wie es dazu kam...

Jared Kells:

In diesem Staat.

Jess Belliveau:

In diesem Staat, ja.

Jordan Simonowski:

Ich schätze, selbst wenn Sie nicht viele Microservices haben, wenn Sie über bestimmte sprechen, wie Sie sagen, sind Ihre API-Anfragen größtenteils in Ordnung, aber manchmal haben Sie besonders große Nutzlasten-

Jared Kells:

Wir müssen tatsächlich überwachen, ich weiß nicht, vielleicht können Sie dabei helfen, wir sollten eigentlich überwachen, mit wem wir zusammenarbeiten. Es ist tatsächlich viel wahrscheinlicher, dass wir ein Leistungsproblem mit einer Xero-API haben werden, als... Wir sehen es nicht, der Browser sieht es auch, was...

Jordan Simonowski:

Ja, und Tracing löst all diese Regressionen für Sie. Die meisten Tracing-Bibliotheken, z. B. wenn Sie Node-Apps oder was auch immer in Ihrem Backend ausführen. Ich kann dir nur etwas über Node erzählen, weil ich wahrscheinlich die meiste Erfahrung mit dem Schreiben von Node-Sachen habe. Du gibst quasi einfach Didi Trace ein, eine Datadog-Bibliothek für das Tracing in dein Backend und deinen Hook selbst in all die, glaube ich, gängigen Bibliotheken, mit denen du normalerweise arbeiten wirst, glaube ich. Wenn Sie zum Beispiel für Express oder nur für viele HADP-Bibliotheken sowie für ein paar AWS-Services arbeiten, wird es sich quasi von selbst einbinden. Und Sie können es tatsächlich genau bestimmen. Es wird Ihnen auf dieser ziemlich coolen Servicekarte irgendwie genau zeigen, mit welchen Diensten Sie interagieren und wo Sie möglicherweise eine Regression erleben. Und ich denke, Spuren dienen dazu, diese Informationen an die Oberfläche zu bringen, was cool ist. Das könnte also etwas sein, das es wert ist, untersucht zu werden.

Jess Belliveau:

Es ist lustig. Das hat etwas nichts mit Beobachtbarkeit zu tun, aber Sie haben mich gerade dazu gebracht, ein bisschen mehr darüber nachzudenken, warum Sie sagen, dass Sie auch von Drittanbietern abhängig sind. Und etwas, das meiner Meinung nach wirklich wichtig ist und manchmal übersehen wird, ist, dass sich so viele von uns heute auf Drittanbieter verlassen, da AWS eine große Sache ist. Viele Leute schreiben Apps, für die AWS-Services erforderlich sind. Und ich denke, die meiste Zeit gehen die Leute einfach davon aus, dass AWS oder Jira oder was auch immer zu 100% verfügbar ist und immer verfügbar ist. Und sie schreiben ihren Code nicht so, dass er mit Ausfällen umgeht. Und ich finde es super wichtig. Ich habe schon so oft Leute gesehen, die die AWS-API verwenden, und sie implementieren kein exponentielles Back-Off. Also versuchen sie im Grunde, die AWS-API zu erreichen. Sie schlägt fehl oder sie werden zum Beispiel gedrosselt, und dann gehen sie einfach in einen Fehlerzustand über und geben dem Benutzer einen Fehler. Aber Sie könnten möglicherweise die Benutzererfahrung verbessern, einen automatischen Wiederholungsmechanismus einbauen lassen und so weiter. Es hat nicht wirklich etwas mit der Beobachtbarkeit zu tun, aber es ist etwas Besonderes.

Jared Kells:

Und den Nutzern ist das egal, oder? Es interessiert niemanden, ob es sich um ein AWS-Problem handelt. Es ist dein Problem, richtig, deine App ist zu langsam.

Jess Belliveau:

Nun, sie benutzen deine App. Genau richtig. Es wirkt sich irgendwie auf Sie aus, also ist es in Ihrem Interesse, sich vor einem Upstream-Fehler zu schützen oder zumindest den Benutzer zu informieren, wenn dies der Fall ist. Ja.

Jared Kells:

Nun, ich glaube, wir müssen ihn diesen Podcast nennen, weil es eine Stunde her ist. Wir hatten maximal 45 Minuten unterrichtet.

Jess Belliveau:

Wir könnten einfach weitermachen. Wir könnten einen zweiten Teil brauchen! Vielleicht können wir [Cross Talk 00:39:21] anfragen.

Jared Kells:

Vielleicht! Ja.

Jess Belliveau:

Oder wir starten einfach unseren eigenen Podcast! Ja.

Angad Seth:

Also, was waren deine wichtigsten Erkenntnisse heute, wenn man bedenkt, dass Angad und ich gerade etwas über Beobachtbarkeit lernen, Angad, was war heute deine größte Erkenntnis über Beobachtbarkeit? Meine größte Erkenntnis war, dass Beobachtbarkeit nicht mit Datadog gleichzusetzen ist. Nein, tut mir leid! Es war einfach sehr faszinierend zu lernen, wie man die bekannten Unbekannten quantifiziert. Ich weiß nicht, ob das ein guter Imbiss ist, aber...

Jess Belliveau:

Jeder Imbiss ist ein guter Imbiss! Was ist mit dir, Jared?

Jared Kells:

Ich glaube, weil ich gerade über Zustandsmanagement sprechen wollte, und ein Teil davon war, dass wir im Moment diese Fähigkeit haben, durch die Architektur unserer Frontends den Status der App zu erfassen und einen Kunden dazu zu bringen, uns seinen Status zu senden, im Grunde genommen. Und wir können es in unsere App laden und einfach genau sehen, wie es war, genau so, wie unser Bundesstaat konzipiert ist. Aber was noch cooler sein könnte, ist vielleicht etwas Observability zur Unterstützung in das Frontend einzubauen. Ich denke, anstatt einfach zu haben, haben wir diese Schaltfläche, um uns Ihre Support-Informationen zu senden, die uns einen Haufen des Status schicken, aber anstatt die Konsole im Browserprotokoll zu protokollieren, könnten wir die Konsole protokollieren und uns irgendwo in unserem Frontend anmelden, sodass unsere Kunden uns die Aktionen senden sollten, die sie ausgeführt haben, wenn sie auf „Support-Informationen senden“ klicken.

Jared Kells:

Zum Beispiel: „Hey, da ist ein Bug, senden Sie uns Ihre Support-Informationen.“ Es muss kein Drittanbieter-Dienst sein, der diese Observability-Daten sammelt. Wir könnten einfach in unser... Darüber denke ich also nach.

Jess Belliveau:

Ja, ganz sicher. Es wird wahrscheinlich auch viel weniger aufdringlich sein, als einige der Sachen von Drittanbietern, die ich gesehen habe.

Jared Kells:

Ja. Bei einigen dieser Integrationen ist das ziemlich schwierig, insbesondere wenn Sie Apps entwickeln, die hinter einer Firewall ausgeführt werden.

Jess Belliveau:

Ja

Jared Kells:

Sie können nicht einfach mit einigen dieser Dritten sprechen. Also ja, es ist trotzdem cool. Es ist wirklich interessant.

Jess Belliveau:

Nun, ich hoffe, jemand da draußen, der zuhört, hat etwas gelernt, und Jordan und ich werden ein paar Links durchschicken, und wir können sie hoffentlich zu den Shownotes hinzufügen oder so, damit die Leute etwas mehr lesen können und...

Jared Kells:

Alles danke!

Jess Belliveau:

Danke für die Einladung, ja.

Jared Kells:

Vielen Dank für Ihre Zeit und danke allen fürs Zuhören.

Jordan Simonowski:

Danke allen.

Angad Seth:

Das war [unhörbar 00:41:55].

Jess Belliveau:

Schaltet nächste Woche ein!

Verwandte Episoden

  • Podcast

    Easy Agile Podcast Folge 3 Melissa Reeve, VP Marketing bei Scaled Agile

    Sean Blake

    „Ich habe es wirklich genossen, mit Melissa Reeve, VP of Marketing bei Scaled Agile, darüber zu sprechen, wie Teams, die keine Software sind, eine neue Arbeitsweise einführen.“

    Es ist wichtiger denn je, kundenorientiert zu sein.

    Wir sprechen über die Gefahr von „Walk-up-Work“ und darüber, wie dies durch eine angemessene Sprintplanung vermieden werden kann.

    Melissa gibt auch einen Überblick darüber, wie sich Agile auf Teams ohne technische Kenntnisse ausbreitet.

    Transkript

    Sean Blake:

    Hallo an alle zusammen. Und willkommen zum Easy Agile Podcast. Wir haben heute einen wirklich interessanten Gast bei uns. Es ist Melissa Reeve, die Vizepräsidentin für Marketing bei Scaled Agile. Wir freuen uns sehr, sie heute bei uns zu haben. Melissa Reeve ist Vizepräsidentin für Marketing bei Scaled Agile, Inc. In dieser Rolle leitet Melissa das Marketingteam und hilft den Leuten, Scaled Agile, das Scaled Agile Framework, besser zu verstehen. Mit anderen Worten, SAFe und seine Mission. Sie ist auch als Praxisleiterin für die Integration von SAF-Praktiken in Marketingumgebungen tätig. Melissa erhielt ihren Bachelor of Arts von der Washington University in St. Louis und lebt derzeit mit ihrem Mann, Hühnern und Hunden in Boulder, Colorado. Melissa, vielen Dank, dass du heute im Podcast zu uns gekommen bist.

    Melissa Reeve:

    Es ist so eine Freude, hier zu sein. Ich weiß das wirklich zu schätzen.

    Sean Blake:

    Großartig. Das ist großartig. Ich mag deine Begeisterung auf Anhieb sehr. Was mich wirklich interessiert, ist Melissa, es geht ein bisschen darum, wie du dahin gekommen bist, wo du heute bist. Was waren die Höhepunkte Ihrer bisherigen Karriere und wie haben Sie sich als Marketer im agilen Bereich wiedergefunden?

    Melissa Reeve:

    Nun, danke der Nachfrage. Und ich muss es dir sagen, aber kurz vor dem Podcast klopfte mein Mann an die Tür und er war ganz stolz, weil wir gerade ein neues Set Hühner bekommen haben und eines der Hühner sein erstes Ei gelegt hat. Das war also der Höhepunkt meines bisherigen Tages, nicht unbedingt der Höhepunkt meiner Karriere.

    Sean Blake:

    Sie werden also wahrscheinlich in den nächsten Wochen Rührei und Eier auf Toast essen.

    Melissa Reeve:

    Ich glaube schon. Also zurück zur Karriere, ich bin wirklich ins Marketing geraten. Mein Hintergrund lag in japanischer Literatur und Sprache. Und ich hatte diese großartige Karriere und dieses internationale Geschäft in Asien erwartet. Und dann zog ich in das Navajo-Indianerreservat und drehte einfach um. Ich habe meinen Weg ins Marketing gefunden und meinen Weg zu Agile ungefähr 2013 gefunden, als ich herausfand, dass es ein Agile-Marketing-Manifest gibt. Und das war wirklich ein Wendepunkt in Bezug auf meine Einstellung zum Thema Marketing. Denn bis zu diesem Zeitpunkt dachte ich wirklich über Marketing in einem sogenannten Wasserfall nach. Natürlich verwenden Vermarkter den Begriff Wasserfall im Allgemeinen nicht.

    Melissa Reeve:

    Aber dann fing ich an, anders über Marketing nachzudenken. Und als ich auf Scaled Agile stieß, brachte es so viele Elemente meiner Karriere zusammen. Das schlanke Denken, das ich während meines Studiums in Japan studiert hatte, und die schlanke Fertigung. Das war Agiles Marketing, das ich 2013 entdeckt hatte, und nur Bildung und Technologie waren schon immer Teil meiner Karriere. Ich schätze mich wirklich glücklich, Scaled Agile gefunden zu haben und mich mitten darin wiedergefunden zu haben, Agile sowohl in Unternehmen als auch in Marketingbereichen des Unternehmens zu skalieren.

    Sean Blake:

    Oh wow, okay. Und ich habe anhand Ihres LinkedIn-Profils festgestellt, dass Sie in der Vergangenheit an einigen Universitäten und Hochschulen gearbeitet haben. Und ich gehe davon aus, dass einige der Teams, die Marketingteams, in denen Sie gearbeitet haben, in der Vergangenheit ziemlich groß waren. In welchen Strukturen haben Sie früher gearbeitet, in diesen Marketingteams? Und vor welchen Herausforderungen standen Sie?

    Melissa Reeve:

    Ja, nun, das größte Unternehmen war Motorola. Und das war ziemlich früh in meiner Karriere. Ich glaube also nicht, dass ich mich genau erinnern kann, wie diese Teamstruktur aussieht. Aber ich denke, was die Hindernisse beim Marketing angeht, waren Genehmigungen schon immer ein Problem. Egal, ob Sie von einer kleineren oder einer größeren Organisation sprechen, es scheint, als müssten die Dinge die Kette hochgehen, abgesegnet werden und dann zur Ausführung wieder herunterkommen. Und damit verbunden sind Verzögerungen und Wartezeiten und im Grunde Verschwendung im System.

    Sean Blake:

    Richtig. Also, was ist Agiles Marketing dann und wie versucht es, einige dieser Probleme zu lösen?

    Melissa Reeve:

    Nun, ich freue mich, dass Sie gefragt haben, denn auf dem Markt herrscht viel Verwirrung rund um Agile-Marketing. Und ich kann Ihnen nicht sagen, wie viele Nachrichtenartikel ich gelesen habe, in denen es heißt, Marketing sollte agil sein. Und sie sprechen wirklich von Agile in Kleinbuchstaben, was bedeutet, dass Marketing flinker oder reaktionsschneller sein sollte. Aber sie sprechen nicht wirklich von Capital-A-Agile-Marketing, einer Arbeitsweise, hinter der Prinzipien und Praktiken stehen. Das ist also ein Aspekt, bei dem im Zusammenhang mit agilem Marketing Verwirrung herrscht.

    Melissa Reeve:

    Und dann ist noch ein weiterer Aspekt, wie groß der Kreis ist, von dem du sprichst. Was die Software angeht, wenn jemand Agile erwähnt, spricht er in Wirklichkeit von einem kleineren Team, und je nachdem, mit wem Sie sprechen, können es zwischen fünf und 11 Personen in diesem Agile-Team sein. Und Sie sprechen von einer Reihe von Teams dieser Größe. Wenn Sie also über agiles Marketing sprechen, könnten Sie von einem einzelnen Team sprechen.

    Melissa Reeve:

    Aber manche Leute sprechen, wenn sie über agiles Marketing sprechen, von einer Transformation und der Transformation der gesamten Marketingorganisation in eine agile Arbeitsweise. Und natürlich sprechen wir in der SAFe-Welt wirklich über die Marketingteams, die möglicherweise an eine SAFe-Implementierung angrenzen. Ich denke, das ist eine gute Frage und eine gute Frage, die Sie sich im Vorfeld stellen sollten, wenn Sie ein Gespräch über Agiles Marketing führen.

    Sean Blake:

    In Ordnung. Okay. Und für die Leute, die nicht viel über SAFe wissen, können Sie einfach erklären, was der Unterschied ist zwischen einem Marketingteam, das jetzt auf Capital-Agile-Art arbeitet, und was ist der Unterschied zwischen einer Organisation, die anfängt, Scaled Agile einzuführen? Was ist der Unterschied-

    Melissa Reeve:

    Sicher.

    Sean Blake:

    ... zwischen denen?

    Melissa Reeve:

    Ja. Softwareunternehmen haben also herausgefunden, dass agile Teams, also diese Gruppen von fünf bis 11 Personen, diese Arbeitsweise wirklich gut funktioniert, wenn man eine begrenzte Anzahl von Softwareentwicklern hat, als man anfing, in die größten Organisationen der Welt zu kommen. Ich denke also, dass alle Mitglieder der Global 2000 Zehntausende von Softwareentwicklern in ihrer Organisation haben könnten. Und um die Vorteile von Agile nutzen zu können, brauchten Sie Taktfrequenz und Synchronisation, nicht nur innerhalb eines Teams, sondern auch über mehrere Teams hinweg bis hin zur Programmebene und sogar zur Portfolioebene.

    Melissa Reeve:

    Und das Gleiche gilt für große Marketingorganisationen. Stellen Sie sich vor, Sie sind CMO und haben 6.000 Vermarkter unter sich. Wie sollen Sie Ihre Vision, Ihre Strategien, die Sie festlegen, in Einklang bringen, wenn Sie keine Möglichkeit haben, Strategie und Umsetzung zu verbinden. Das Scaled Agile Framework ist also eine Möglichkeit, diese agilen Praktiken über mehrere Teams hinweg und bis in die höchsten Ebenen des Unternehmens zu übertragen, sodass wir uns alle in eine ähnliche Richtung bewegen.

    Sean Blake:

    In Ordnung. Okay, ich denke, das macht Sinn. Und aus der Sicht eines Softwareteams besteht einer der Vorteile von Agile darin, dass es Teams hilft, sich stärker auf den Kunden zu konzentrieren. Und viele würden argumentieren, nun ja, Marketing war schon immer kundenorientiert. Aber haben Sie in Ihrer Erfahrung festgestellt, dass das vielleicht nicht so stimmt? Und wenn Marketingteams beginnen, Agile einzuführen, erkennen sie, was es wirklich bedeutet, kundenorientiert zu werden.

    Melissa Reeve:

    Ja. Ich meine, Sie haben noch einen wichtigen Punkt angesprochen, weil ich denke, die meisten Vermarkter denken, dass sie kundenorientiert sind. Wie viele Dinge auf der Welt ist die Welt ein relativer Ort. Sie können also theoretisch in Ihrem Kopf an den Kunden denken oder Sie können tatsächlich mit dem Kunden sprechen. Also habe ich gerade das beendet, was ich die Hörsitzung nenne. Und es war während unseres Hackathons, unserer Version einer Innovation, ein paar Tage voller Innovation. Es waren also acht Stunden bei einem Zoom-Gespräch mit jemandem aus Südafrika. Ich höre mir einfach ihre Erfahrung an und höre ihr zu, wie sie einen unserer Kurse durchläuft, Folie für Folie, und erklärt, was sie bei jedem Schritt erlebt hat.

    Melissa Reeve:

    Wenn Sie also an jemanden denken, der in einem großen Unternehmen sitzt und den Kunden vielleicht noch nie getroffen hat, den Kunden nur theoretisch kennt, an einem Ende des Spektrums. Und wenn Sie an diese Hörsitzung am anderen Ende des Spektrums denken, beginnen Sie zu verstehen, wovon wir sprechen. Nun, Ihre Frage hat wirklich darauf hingewiesen, dass Sie in agilen Praktiken jedes Mal an den Kunden denken. Theoretisch jedes Mal, wenn Sie eine Geschichte schreiben. Wenn Sie also eine Geschichte schreiben, schreiben Sie die Geschichte aus der Sicht des Kunden. Und ich würde einfach alle Marketer da draußen ermutigen, den Kunden persönlich zu kennen. Und ich weiß, dass das in diesen großen Organisationen nicht einfach ist. Es ist manchmal schwierig, mit dem Kunden persönlich ins Gespräch zu kommen, aber wenn Sie nicht direkt mit einem Kunden sprechen, kennen Sie den Kunden wahrscheinlich nicht wirklich.

    Melissa Reeve:

    Finden Sie also einen Weg, sprechen Sie mit den Verkäufern und telefonieren Sie mit einigen Ihrer Kundendienstmitarbeiter. Gehen Sie auf eine Messe und finden Sie einen Weg, direkt mit dem Kunden zu sprechen, denn Sie werden einige Nuancen entdecken, die sich in Ihrer Fähigkeit, den Kunden zufrieden zu stellen, auszahlen. Und wenn Sie diese Geschichte noch einmal schreiben, wird sie noch reichhaltiger sein.

    Sean Blake:

    Oh, das ist ein wirklich guter Rat, Melissa. Ich erinnere mich aus eigener Erfahrung, dass wir in einigen dieser großen Unternehmen, in denen ich gearbeitet habe, gesagt haben: „Oh, das ist es, was der Kunde will.“ Aber eigentlich kannten wir keine Kunden namentlich. Einige von uns persönlich waren Kunden, aber es ist nicht wirklich dasselbe wie rauszugehen und Leuten zuzuhören und was fanden sie an der Nutzung dieser App schwierig oder was erwarten sie eigentlich von diesem Produkt? Es gibt also einen riesigen Unterschied, ob man erraten muss, was ein Kunde vielleicht will oder sollte? Und dann, wie ihr Alltag tatsächlich aussieht und mit welchen Dingen sie zu kämpfen haben? Das ist ungeheuer wichtig.

    Sean Blake:

    Jemand, der in einem dieser großen Unternehmen arbeitet, in einem Marketingteam, hat vielleicht nicht die Macht oder den Einfluss, um zu sagen: „Okay, jetzt machen wir Agiles Marketing.“ Was wäre Ihr Rat für jemanden wie diesen, der die Vorteile darin sieht, seine Teams in diese Richtung zu bewegen, aber nicht unbedingt weiß, wo er anfangen soll?

    Melissa Reeve:

    Nun, es gibt eine Philosophie, die besagt, nimm, was du kriegen kannst. Wenn Sie also nur eine Person sind, die sich für Agiles Marketing einsetzt, dann ist es vielleicht das, was Sie tun können: Sie können sich dafür einsetzen. Vielleicht können Sie anfangen, Allianzen innerhalb der Organisation aufzubauen, ungezwungen mit Ihren Kollegen zu chatten, herauszufinden, ob Sie Verbündete in anderen Teilen der Organisation haben, und damit beginnen, eine Bewegung vom Typ Groundswell aufzubauen.

    Melissa Reeve:

    Vielleicht können Sie Ihr eigenes persönliches Kanban-Board erstellen und damit beginnen, Ihre Arbeit über Ihr eigenes Kanban-Board zu verfolgen. Und wenn Sie Ihre Arbeit auf diese Weise visualisieren, ist es jetzt, wo wir alle remote arbeiten, etwas schwieriger, aber sollten wir wieder in die Büros gehen, könnte theoretisch jemand an Ihrer Kabine vorbeigehen, Ihr Kanban-Board sehen und danach fragen. Und jetzt haben Sie vielleicht zwei Personen, die ein Kanban-Board benutzen, drei Personen. Und fangen Sie wirklich an, durch Ihre Denkweise, Ihr Verhalten, Ihre Gespräche mit gutem Beispiel voranzugehen, um Unterstützung zu erhalten.

    Sean Blake:

    Oh, das ist wirklich gut. Sei also die Veränderung, die du in der Organisation sehen willst.

    Melissa Reeve:

    Exakt.

    Sean Blake:

    In Ordnung. Okay, das ist wirklich gut. Und wenn diese Unternehmen sich dieser Arbeitsweise zuwenden und dann versuchen, das nächste Level zu erreichen, nehmen wir an, es beginnt in den Softwareentwicklungsteams und dann sagen wir, Marketing ist das nächste Team, das an Bord kommt. Wie verbreitet es sich dann in der gesamten Organisation? Weil ich aus eigener Erfahrung weiß, dass es für die Agile-Teams immer noch sehr schwierig ist, etwas zu erledigen, wenn es immer noch diesen Teil der Organisation gibt, der gegen Agile arbeitet. Weil es immer noch die Blockaden und die Prozesse und Genehmigungen gibt, die Sie mit den anderen Teams durchgehen müssen. Und ich denke, SAFe ist die Antwort, oder? Aber wie fängt man an, Agile im gesamten Unternehmen einzusetzen?

    Melissa Reeve:

    Sicher. Und worüber Sie sprechen, ist wirklich geschäftliche Agilität, bedeutet, das gesamte Unternehmen zu nehmen und das Unternehmen agil zu machen. Und Sie haben auf etwas hingewiesen, das dafür entscheidend ist: Sobald Sie den Engpass und die Hindernisse in einem Geschäftsbereich gelöst haben, wird es in einen anderen Geschäftsbereich verlagert. Der Vorteil der geschäftlichen Flexibilität besteht also darin, dass Sie versuchen, zu verhindern, dass sich diese Engpässe bilden oder verschieben. Aber ein Engpass führt im Wesentlichen dazu, dass er eine so genannte brennende Plattform schafft. Es entsteht also ein Bedürfnis nach Veränderung. Und genau das sehen wir auf der Marketingseite: Wir haben diese IT-Organisationen, sie arbeiten viel effizienter mit dem Einsatz von Agile und mit dem Einsatz von SAFe. Und was passiert, ist, dass die Softwareteams in der Lage sind, Dinge schneller zu veröffentlichen als die Teams, die sie umgeben. Eines davon könnte das Marketing sein.

    Melissa Reeve:

    Und so wird das Marketing jetzt dazu angeregt, nach Möglichkeiten der Veränderung zu suchen. Sie erhalten Anreize, einen Blick darauf zu werfen und zu sagen: „Nun, vielleicht ist Agile die Antwort für uns.“ Sagen wir einfach, das Marketing springt an Bord und plötzlich dreht es sich um, und abgesehen davon bleibt alles in der Rechtsabteilung hängen. Und jetzt hat die Rechtsabteilung Argumente für Änderungen und den Druck auf die Rechtsabteilung, sie anzunehmen. Es gibt also eine Möglichkeit, es organisch verbreiten zu lassen. Die meisten Transformationstrainer werden dieses Phänomen verstehen und das Unternehmen wahrscheinlich dazu ermutigen, einfach alles auf Agile umzustellen, natürlich nicht in einer Art Urknall, sondern sich schrittweise in diese Richtung zu bewegen, sodass wir nicht einfach ständig Engpässe verschieben.

    Sean Blake:

    In Ordnung. Okay, das macht Sinn. Und wenn diese Unternehmen versuchen, die geschäftliche Agilität in den verschiedenen Funktionen zu verbessern, gibt es dann einige Fehler, die Sie sagen, immer wieder auftauchen? Und wie können wir diese vermeiden, wenn wir uns auf diesem Weg der geschäftlichen Agilität befinden?

    Melissa Reeve:

    Ja. Ich habe das Gefühl, dass der häufigste Fehler, zumindest der, den ich im Marketing am häufigsten sehe, obwohl ich ihn auch bei Software gesehen habe, darin besteht, dass die Leute denken, dass es bei der Transformation um Prozesse oder Tools geht. So könnten sie beispielsweise im Marketing ein Tool einsetzen, um „agiler zu werden“. Vielleicht ist es ein Kanban-Visualisierungstool, oder vielleicht wird ihnen vorgeschlagen, ein anderes gängiges ALM-Tool zu verwenden. Also nehmen sie dieses Tool an und lernen, wie man es benutzt, und sie fragen sich, warum sie keine großen Verbesserungen sehen.

    Melissa Reeve:

    Und das liegt daran, dass Agile im Kern eine menschliche Transformation ist. Wir schauen uns also wirklich an, wie wir versuchen, die Denkweise der Menschen zu ändern. Eines der Themen, über die ich spreche, ist die Geschichte der Managementtheorie. Und obwohl es ziemlich trocken klingt, öffnet es in Wirklichkeit die Augen. Weil Sie wissen, dass viele der Gewohnheiten, die wir heute haben, im 20. und 19. Jahrhundert wurzeln. Sie sind also in Montagelinien verwurzelt. Sie wurzeln in der französischen Managementtheorie, die Kommando und Kontrolle befürwortete.

    Melissa Reeve:

    Sie wurzeln im Klassismus. Es gab eine Managementklasse und eine Arbeiterklasse, und die Managementklasse wusste, wie man Dinge am besten macht. Es ist also mehr als ein Prozess, mehr als ein Instrument, wir sprechen davon, dieses Erbe des Managementdenkens in eine Art und Weise zu transformieren, die für die Arbeitnehmer von heute angemessen ist. Und ich glaube, das ist der größte Fehler, den Unternehmen meiner Meinung nach bei der Umstellung auf Agile, eine agile Arbeitsweise, begehen.

    Sean Blake:

    Mm-hmm (bejahend). In Ordnung. Ja, das ist wirklich interessant. Und es öffnet wirklich die Augen, oder? Wenn man sich anschaut, wie der Arbeitstag von neun bis fünf zustande kam, denn das ist die Zeit, in der die Fabriken geöffnet waren, und die ganze Geschichte rund um die Struktur von Organisationen. Und ich denke, es ist wirklich wichtig, einige der Dinge, die wir in der Vergangenheit getan haben und die im Industriezeitalter funktioniert haben, in Frage zu stellen. Aber jetzt bewegen wir uns in das Informationszeitalter und in diese Zeiten der digitalen Transformation. Es funktioniert wahrscheinlich nicht mehr für uns, oder, einige dieser Dinge? Oder glauben Sie, dass einige dieser Dinge immer noch wertvoll sind, jetzt, wo wir verteilte Teams haben und viele Leute remote arbeiten? Gibt es Dinge, die dir in den Sinn kommen, von denen du denkst, dass wir sie eigentlich noch nicht loswerden sollten?

    Melissa Reeve:

    Oh, ich bin mir sicher, dass es welche gibt. John Kotter hat in seinem Buch Accelerate das Konzept eines dualen Betriebssystems vorgestellt. Sie haben also den Netzwerkteil der Organisation, der sich schnell und flexibel wie ein Startup bewegt, und dann haben Sie den hierarchischen Teil der Organisation. Und die Hierarchie ist sehr, sehr gut darin, Dinge zu skalieren. Es ist eine gut geölte Maschine. Sie benötigen jemanden, der Ihre Spesenabrechnung genehmigt. Sie benötigen einige Richtlinien und einige Richtlinien, einige Leitplanken. Wir sagen also nicht wirklich, dass die Hierarchie abgeschafft werden soll. Und ich habe das Gefühl, dass das Teil dieses alten Systems ist. Aber was wir sagen, ist, einen Teil des Befehls und der Kontrolle abzuschaffen, diese Vorstellung, dass das Management den besten Weg kennt, weil der Wissensarbeiter oft mehr weiß als sein Manager.

    Melissa Reeve:

    Es ist einfach zu schwierig für einen Manager, mit allem Schritt zu halten, was in den Köpfen der Personen vor sich geht, die ihm oder ihr Bericht erstatten. Das ist also eine wirklich große Veränderung und es war eine Veränderung für mich. Und ich denke, warum mich diese Geschichte der Managementtheorie so fasziniert hat, ist, dass ich auf einige Notizen aus meiner Collegezeit gestoßen bin. Und mir wurde klar, dass mir diese historischen Managementtheorien beigebracht worden waren. Mir wurde der Taylorismus beigebracht, der aus dem Jahr 1911 stammt. Und mir wurde klar, wow, ich musste eine Menge rückgängig machen, um diese agile Arbeitsweise zu übernehmen.

    Sean Blake:

    Nun, das ist großartig. Ja, das ist wirklich wichtig, nicht wahr? Ich habe Sie schon einmal über das Konzept der Walk-up-Arbeit sprechen hören, besonders im Bereich Marketing. Aber ich nehme an, nun, zunächst würde ich gerne wissen, was Walk-up-Arbeit ist. Warum ist es so gefährlich, nicht nur für Marketer, sondern für alle Teams? Und wie fangen wir an, uns gegen Walk-up-Arbeit zu wehren?

    Melissa Reeve:

    Ja. Also, vor allem Marketer werden mit dem bombardiert, was ich gerne als Walk-up-Arbeit bezeichne. Und dann kommt buchstäblich eine Führungskraft oder sogar ein Kollege zu mir, also denken Sie noch einmal über die Cubicle-Farm nach und stellen eine Anfrage. In der virtuellen Welt sieht das also so aus, als ob es die Lücke oder die Sofortnachricht „Hey, würde es dir etwas ausmachen?“ Zum einen führt dies zu einer Menge Kontextwechsel, und bei diesem Kontextwechsel geht Zeit verloren. Und der andere Teil ist, dass diese Anfragen selten klar definiert oder sogar mit einer gewissen Frist eingehen. Im Marketing könnte das so aussehen: „Hey, kannst du diese Grafik für diese E-Mail erstellen, die ich versende?“ Jetzt haben Sie Ihrer armen Grafikdesignerin das Wissen gegeben, dass sie hier eine Grafik erstellen muss, aber sie hat nicht wirklich die Spezifikationen.

    Melissa Reeve:

    Es ist also sehr, sehr hilfreich, diese Dinge in Geschichten zusammenzufassen, dem Agile-Prozess zu folgen, bei dem du die Walk-up-Arbeit zum Product Owner übernimmst, wo der Product Owner mit dir zusammenarbeiten kann, um die Geschichte zu definieren, die Person, die die Arbeit macht, an der Aufgabe zu halten, sie nicht dazu zu bringen, den Kontext zu wechseln oder so. Definieren Sie die Geschichte in den Akzeptanzkriterien sehr gut und priorisieren Sie sie, bevor die Arbeit dann in die Warteschlange des Grafikdesigners kommt. Und das ist ein Anti-Muster, egal ob Sie von einer Organisation mit 50 oder 5.000 Mitarbeitern sprechen.

    Melissa Reeve:

    Und ich habe festgestellt, dass das Verhalten der Führungskräfte am schwierigsten zu ändern ist. Weil sie nicht nur unbeaufsichtigt arbeiten, sondern auch über positionelle Autorität verfügen. Und das impliziert, dass diese Person aufhört, an dem zu arbeiten, woran sie gerade arbeitet, und sofort zu der Walk-up-Arbeit übergeht, die von der Führungskraft definiert wird. Ich habe also das Gefühl, dass es wirklich gefährlich für das gesamte Agile-Ökosystem ist, weil es den Kontext wechselt, es unterbricht den Arbeitsfluss und führt zu Verschwendung in das System. Und an Ihren Punkten mit der höchsten Priorität wird möglicherweise nicht gearbeitet.

    Sean Blake:

    In Ordnung. Also, wie viele Leute haben Sie in Ihrem Marketingteam bei Scaled Agile?

    Melissa Reeve:

    Wir sind immer noch ziemlich klein. Wir sind ungefähr in den 20ern, 23, 25, mehr oder weniger.

    Sean Blake:

    Also, wie kannst du...

    Melissa Reeve:

    Ich denke, im Moment sind wir drei agile Teams.

    Sean Blake:

    Drei. In Ordnung. Also diese 20 sind in drei Agile-Teams aufgeteilt. Und haben sie jeweils einen Product Owner oder wie funktioniert die Priorisierung des Marketings in Ihren Teams?

    Melissa Reeve:

    Ja, das ist eine gute Frage. Wir haben also individuelle Product Owner für diese drei Produktteams. Und was faszinierend ist, ist, dass sich die Product Owner dann auch sehr regelmäßig treffen müssen, um sicherzustellen, dass die Prioritäten aufeinander abgestimmt bleiben. Denn wie viele Marketingteams verfügen auch wir nicht über spezielle Fähigkeiten in jedem dieser Teams. Für die Gruppe von 23 Personen haben wir also nur einen Texter. Für die Gruppe von 23 haben wir zwei Grafikdesigner. Es ist also nicht so, dass jedes Team seinen eigenen Grafikdesigner oder seinen eigenen Texter hat.

    Sean Blake:

    Ja.

    Melissa Reeve:

    Das heißt, die drei POs müssen sich zusammensetzen und die Prioritäten festlegen, die gemeinsamen Prioritäten für den Texter, die gemeinsamen Prioritäten für diese Grafikdesigner. Und ich denke, es funktioniert. Ich meine, es ist nicht ohne Schluckauf, aber ich denke, das ist die Rolle der PO und es ist eine wichtige Rolle.

    Sean Blake:

    Wie vermeidest du also die Versuchung, zu diesen Teams zu kommen und zu sagen: „Lass das, was du tust, es gibt etwas Neues, an dem wir alle arbeiten müssen?“ Finden Sie es als Führungskraft selbst eine Herausforderung, die Teams wirklich autonom und selbstorganisiert arbeiten zu lassen?

    Melissa Reeve:

    Ja, ich denke, der größte Gefallen, den wir den Teams getan haben, ist wirklich, ich möchte nicht sagen, verbotene Walk-up-Arbeit, aber als Erstes haben wir es definiert. Und wir sagten: „Walk-up-Arbeit ist alles, was länger als zwei Stunden dauert und das nicht Teil der Iterationsplanung war.“ Und die Iteration dauert nur zwei Wochen. Theoretisch haben Sie es also in den letzten 10 Tagen getan. Wenn es also nicht dazu gehörte und Sie es nicht auf die nächste Iterationsplanung verschieben können und ein Gefühl der Dringlichkeit entsteht, dann ist es Walk-up-Arbeit.

    Melissa Reeve:

    Und wir haben die Teams an einem Punkt angelangt, an dem sie die Angewohnheit haben, dann die PO anzurufen und zu sagen: „Hey, würde es dir etwas ausmachen, mit so und so zu sprechen und das zu definieren und mir zu helfen, zu verstehen, wo das in die Prioritätsreihenfolge passt.“ Und das war wirklich die größte Hürde, denn als Marketer denke ich, dass viele von uns Ja sagen wollen, wenn jemand mit Arbeit auf uns zukommt. Aber was passiert ist, ist, dass die Leute, ich eingeschlossen, aufgehört haben, sich an die Texter zu wenden, aufgehört haben, sich mit Arbeit an den Grafikdesigner zu wenden. Aber ich weiß es einfach, geh zur Polizei.

    Sean Blake:

    Das ist gut. Es ist also eine zusätzliche Verteidigungslinie für das Team, sodass es sich weiterhin auf seine Prioritäten und das konzentrieren kann, woran es bereits gearbeitet hat, ohne von diesen neuen Ideen und Prioritäten abgelenkt zu werden.

    Melissa Reeve:

    Ja. Und tatsächlich, glaube ich, haben wir in diesem letzten Fall die Arbeit vor Ort von 23% auf 11% reduziert. Wir sind also nicht bei 100% Und ich weiß nicht, ob wir jemals 100% erreichen werden, aber wir sehen sicherlich Fortschritte in dieser Richtung.

    Sean Blake:

    Oh, das ist wirklich gut. Wirklich gut. Und so arbeiten Ihre Marketingteams agil. Haben Sie das Gefühl, dass Agile auf breiter Front, nicht nur innerhalb Ihres Unternehmens, sondern auch ganz allgemein, von Teams ohne technischen Hintergrund, also von Marketing-, Rechts- und Finanzteams, übernommen wird? Setzen diese Teams ohne technischen Hintergrund Agile schneller ein, oder haben Sie das Gefühl, dass es immer noch einige Jahre dauern wird, bis die Botschaft verbreitet wird?

    Melissa Reeve:

    Ja. Und ich schätze, meine Frage an Sie wäre, schneller als was?

    Sean Blake:

    Gute Frage. Ich nehme an, was ich frage ist, haben Sie das Gefühl, dass dies ein Trend ist, dass Teams ohne technischen Hintergrund Agile einführen, oder ist das etwas, das wirklich noch in den Kinderschuhen steckt und sich noch nicht wirklich durchgesetzt hat, insbesondere bei Scaled Agile-Kunden oder Personen, mit denen Sie in der Agile-Branche verbunden sind?

    Melissa Reeve:

    Ich würde ja sagen. Ja, das ist ein Trend. Und ja, die Leute machen es. Und ja, es steckt noch in den Kinderschuhen.

    Sean Blake:

    Also, ja?

    Melissa Reeve:

    Ja. Also all das zusammen, und ich werde dir nichts vormachen, ich meine, das ist neues Zeug. Tatsächlich, als Teil der Hörsitzung, die ich erwähnt habe, und wir haben über all diese verschiedenen Bereiche des Unternehmens gesprochen. Und es wurde erwähnt, dass das Scaled Agile Framework als Leitfaden für diese Teams dient. Für die Personalabteilung, für die Rechtsabteilung und für das Marketing könnte es robuster sein. Und die Antwort ist absolut. Und der Grund ist, dass wir immer noch selbst lernen. Das ist brandneues Gebiet, auf dem wir uns die Zähne ausbeißen. Ich schätze, wir werden mehrere Jahre brauchen, ich weiß nicht, wie viele es sind, bis wir anfangen zu lernen, herauszufinden, wie das aussieht, und es wirklich umzusetzen.

    Melissa Reeve:

    Jetzt hoffe ich, dass wir an einen Punkt kommen, an dem Agile in der gesamten Organisation zum Einsatz kommt und dass es an die verschiedenen Umgebungen angepasst wurde. Wenn ich das gesehen habe und Dinge wie Agile HR, Agile Legal, Agile Procurement durchdacht habe, scheinen die Grundlagen solide zu sein. Wir können sogar Dinge wie die Continuous Delivery Pipeline von DevOps. Wenn ich an Marketing denke und an Automatisierung denke. Und ich denke über künstliche Intelligenz nach, ja, ich sehe das im Marketing und ich sehe die Notwendigkeit, dass sich das entfaltet, aber werden wir eine Weile brauchen, um diese Nuance herauszufinden? Absolut.

    Sean Blake:

    In Ordnung. Und können Sie sich weitere Trends im agilen Bereich vorstellen? Wissen Sie, wenn wir in die Zukunft schauen, sagen wir 10 Jahre, ein Jahrzehnt, wie sieht dann die Arbeitsweise aus? Sind wir alle immer noch remote oder wie werden Teams in 10 Jahren an digitale Transformationen herangehen? Was ist Ihre Perspektive auf die Zukunft?

    Melissa Reeve:

    Ja, ich meine, manchmal schaue ich gerne in die Vergangenheit, um in die Zukunft zu schauen. Und in diesem Fall schaue ich vielleicht 10 oder 12 Jahre in die Vergangenheit. Und vor 12 Jahren bekam ich mein allererstes iPhone. Ich erinnere mich, dass es 2007, 2008 war. Und du denkst darüber nach, was für eine seismische Veränderung das in Bezug auf unser Verhalten und die sozialen Medien war, wie wir uns verbinden und diesen Computer in unserer Hand haben. Also frage ich mich, welcher seismische Wandel liegt vor uns? Und sicherlich hat COVID einige dieser Veränderungen beschleunigt. Ich frage mich, werde ich so oft in Flugzeugen sitzen wie in der Vergangenheit? Oder haben wir uns alle so an Zoom-Meetings gewöhnt, dass wir gemerkt haben, dass dort Strom steckt. Und wir müssen nicht unbedingt in ein Flugzeug steigen, um den Wert zu nutzen.

    Melissa Reeve:

    Was Agile angeht, habe ich das Gefühl, dass wir es in 10 Jahren nicht mehr agil nennen werden. Ich habe das Gefühl, dass es eher nach einer Organisation mit kontinuierlichem Lernen oder einer reaktionsschnellen Organisation aussehen wird. Agile bezieht sich auf eine sehr spezifische Reihe von Praktiken. Und wenn diese neue Denkweise, nun ja, die Praktiken und die Prinzipien und die Denkweise, und wenn sich diese neue Denkweise durchsetzt und zur Norm wird, werden wir sie dann Agile nennen? Oder wird es einfach die Art und Weise sein, wie die Leute arbeiten? Ich schätze, es wird anfangen, sich dem Letzteren zuzuwenden.

    Sean Blake:

    Nun, hoffen wir, dass es normal wird, oder? Ich meine, es wäre toll, mehr Transparenz, mehr funktionsübergreifende Arbeit, weniger Außeneinsätze und mehr geschäftliche Agilität auf der ganzen Linie zu haben, nicht wahr? Ich denke, es wäre toll, wenn das zur neuen Normalität würde.

    Melissa Reeve:

    Ja, ich auch. Ja. Und ich glaube, wir rufen nicht an, wie wir mit Menschen umgehen. Wir sagen nicht: „Oh, das ist Taylorismus. Wirst du Taylorismus praktizieren? So haben wir entweder in der Schule gelernt oder von unseren Chefs gelernt, wie man mit Menschen umgeht. Und das ist meine Hoffnung für Agile, dass wir es nicht so nennen werden. So machen wir die Dinge hier einfach.

    Sean Blake:

    Großartig. Tja, Melissa, ich denke, wir lassen es dabei. Ich habe unser Gespräch wirklich genossen, besonders als Vermarkter. Es ist toll, Ihren Einblick in die Branche zu hören. Und alles, was wir heute besprochen haben, hat mir wirklich, wirklich die Augen geöffnet. Also vielen Dank, dass du das mit mir und unserem Publikum geteilt hast. Und wir hoffen, Sie in Zukunft wieder im Podcast zu haben.

    Melissa Reeve:

    Sean, es war mir eine große Freude und ich komme jederzeit gerne wieder.

    Sean Blake:

    Großartig. Vielen Dank.

    Melissa Reeve:

    Ich danke dir.

  • Podcast

    Easy Agile Podcast Ep.12 Beobachtungen zur Beobachtbarkeit

    In dieser Folge von The Easy Agile Podcast hören Sie, wie die Entwickler Angad, Jared, Jess und Jordan ihre Gedanken zum Thema Observability teilen.

    Wollongong hat eine blühende und unterstützende Tech-Community. In dieser Folge haben wir einige unserer lokalen Entwickler aus dem Siligong-Tal zu einem Gespräch am runden Tisch zum Thema Observability zusammengebracht.

    💥 Was ist Beobachtbarkeit?
    💥 Wie kann man die Beobachtbarkeit verbessern?
    💥 Was ist das Endziel?

    Angad Sethi

    „Es war eine großartige Episode, an der man teilnehmen konnte! Jess und Jordan haben einige wirklich interessante Punkte zum neuesten technischen Schlagwort — Beobachtbarkeit — geteilt.

    Abonniere unbedingt, genieße die Folge 🎧

    Transkript

    Jared Kells:

    Willkommen alle zum Easy Agile Podcast. Mein Name ist Jared Kells und ich bin Entwickler hier bei Easy Agile. Bevor wir beginnen, möchte Easy Agile den traditionellen Hütern des Landes, von dem aus wir heute senden, unsere Anerkennung aussprechen, dem Volk der Wodiwodi aus der Dharawal-Nation, und den Ältesten in der Vergangenheit, Gegenwart und aufstrebenden Ältesten unseren Respekt erweisen. Den gleichen Respekt gilt auch allen Ureinwohnern, die uns heute zuhören.

    Jared Kells:

    Der heutige Podcast ist also ein bisschen technisch. In meinem Arbeitsblatt steht, dass wir hier sind, um über einige aktuelle Themen für Ingenieure im IT-Sektor zu sprechen. Wie aufregend, dass wir ein paar hauptsächlich Frontend-Ingenieure haben und Angad und ich einige technische Frontend-Dinge mit Ihnen teilen werden und Jess und Jordan ein bisschen über Observability sprechen werden. Wir beginnen also mit Einführungen. Also werde ich es an Jess weitergeben.

    Jess Belliveau:

    Cool. Danke Jared. Danke, dass du mir auch eins gegeben hast. Also ja, mein Name ist Jess Belliveau. Ich arbeite für Apptio als Infrastrukturingenieur. Ja, Jordan?

    Jordan Simonowski:

    Ich bin Jordan Simonovski. Ich arbeite als Systemingenieur im Observability-Team von Atlassian. Ich bin ein bisschen ein Alleskönner, was die Technik angeht. Aber ja, ich arbeite daran, einige ziemlich leistungsfähige Systeme aufzubauen, um all unsere Daten bei Atlassian im Moment zu verarbeiten. Also, das macht Spaß.

    Angad Seth:

    Hallo an alle zusammen. Ich bin Angad. Ich arbeite für Easy Agile als Softwareentwickler. Nichts ausgefallenes wie ihr.

    Jared Kells:

    Nichts Besonderes!

    Jess Belliveau:

    Verkaufe dich nicht unter.

    Jared Kells:

    Ja, sage ich. Ja, also mein Name ist Jared und ja, Senior Developer bei Easy Agile, der an unseren Apps arbeitet. Also arbeite ich hauptsächlich an Programmen und Roadmaps. Und ja, es sind Frontend-Apps mit viel JavaScript. Darin liegt also unsere Erfahrung. Ich habe von diesem Ding namens Observability gehört, bei dem es sich meiner Meinung nach nur um Logs und so handelt, oder?

    Jess Belliveau:

    Ja, ja. Das war's, wir schließen ab!

    Jared Kells:

    Der Podcast ist vorbei! Erzählen Sie uns etwas über Beobachtbarkeit.

    Jess Belliveau:

    Ja, okay, ich werde, ja. Ja, ich dachte, zuerst mache ich eine kleine Sache darüber, warum Observability, warum wir darüber reden und irgendwie für die Leute, die zuhören, wie wir hierher gekommen sind. Wir haben uns kurz unterhalten, bevor wir mit den Aufnahmen begonnen haben, um herauszufinden, was ein breiteres Publikum interessieren könnte, über das die Leute vielleicht nicht viel wissen. Und ich denke, es gibt viele Entwicklungen im breiten IT-Bereich, über die Sie sprechen könnten. Es gibt jetzt so viele verschiedene Dinge, die einfach explodieren. Beobachtbarkeit ist ein Thema, das seit ein paar Jahren ein heißes Thema ist. Und es ist etwas, das ein zentraler Bestandteil meines Jobs und auch Jordans Job ist. Es ist also etwas, worüber wir leicht sprechen können, und es ist etwas, in das Sie eine Einführung geben können, ohne zu technisch zu werden. Wir wollen also nicht untergehen. Das ist etwas, das man wirklich tief ins Unkraut eintauchen kann, also haben wir es als etwas ausgewählt, das wir euch beiden hoffentlich auf einer Ebene erklären können, die auch die Leute zu Hause interessieren könnte, zuzuhören.

    Jess Belliveau:

    Jordan und ich haben diese vier Stichpunkte herausgefunden, die wir behandeln wollten, und vielleicht kann ich einen kleinen Überblick darüber machen, und dann kann ich Jordan dazu bringen, den ersten Aufzählungspunkt abzudecken, ihn einfach direkt unter den Bus werfen.

    Jordan Simonowski:

    In Ordnung!

    Jess Belliveau:

    Deshalb dachten wir, wir würden versuchen, Ihnen zunächst zu beschreiben, was Beobachtbarkeit ist. Weil das hübsch ist, der Begriff gibt Ihnen nicht viel von dem, was er ist. Es gibt Ihnen einen kleinen Hinweis, aber es ist gut, als Grundlinie festzulegen, wovon wir sprechen, wenn wir sagen, was Beobachtbarkeit ist. Und warum sollte ein Entwicklungsteam dann Observability wollen? Warum sollte ein Unternehmen Observability wollen? Ein gewisses hohes Niveau, welche Vorteile Sie daraus ziehen und wer sie möglicherweise benötigt, was eine große Sache ist. Sie können sich in diese brandaktuellen Schlagworte der Branche verwickeln und sich auf Dinge festlegen, die Sie möglicherweise nicht benötigen, oder solche Dinge.

    Jared Kells:

    Jep.

    Jordan Simonowski:

    Jep.

    Jess Belliveau:

    Wir dachten, wir würden über einige einfache Gewinne sprechen, die man mit Observability erzielen kann. Also einige der wirklich grundlegenden Dinge, die Sie ausprobieren können, und welche Vorteile Sie daraus ziehen. Und dann dachten wir einfach, weil wir nicht versuchen werden, zu tief zu gehen, könnten wir einfach ein paar Hinweise auf einige Websites und einige YouTube-Vorträge geben, um weiter zu lesen, die die Leute machen wollen, und von dort aus weitermachen. Also ja, Jordan, du willst...

    Jared Kells:

    Hört sich gut an.

    Jess Belliveau:

    Ja. Ich hoffe, hoffentlich. Wir werden sehen, wie das läuft! Und ich denke, wenn ihr auch Fragen habt, sollten wir das tun. Wenn es Dinge gibt, von denen ihr denkt, dass wir sie nicht behandeln oder die ihr mehr wissen wollt, fragen.

    Jordan Simonowski:

    Ich schätze, um mit Observability zu beginnen. Es ist ein Thema, das mich wirklich begeistert, denn als jemand, der schon so lange im Bereich Dev-Ops und SRE tätig ist, ist Observability auf den Markt gekommen und verspricht, den Kreislauf oder eine Feedback-Schleife bei der Softwarebereitstellung zu schließen. Und es fühlt sich an, als wäre das etwas, was wir im Moment nicht wirklich haben. Und ich verstehe, dass Beobachtbarkeit vielleicht neu und glänzend klingt, aber ich denke, der Begriff selbst existiert, um sich vielleicht von dem abzuheben, was es derzeit gibt. Viele von uns, die in der Tech-Branche arbeiten, kennen sich mit Überwachung und dem Laden und solchen Dingen aus. Und ich denke, sie erfüllen ihren eigenen Zweck und sie sind auch in keiner Weise veraltet. Dinge wie herkömmliche Überwachungstools. Aber Observability hat sich meiner Meinung nach als eine Möglichkeit erwiesen, die überwältigend komplexen Systeme zu verstehen, die wir gerade aufbauen. Viele Unternehmen bewegen sich wahrscheinlich in Richtung einer komplizierten Architektur verteilter Systeme, Microservices oder anderer Schlagworte.

    Jordan Simonowski:

    Aber auch für Dinge wie einen traditionellen Monolithen. Die Beobachtbarkeit hilft uns wirklich dabei, unseren Systemen neue Fragen zu stellen. Die Art und Weise, wie es erklärt wird, ist die Überwachung von Ausgängen auf unsere bekannten Unbekannten. Mit dem Dienstalter geht die Fähigkeit einher, fast vorherzusagen, auf welche Weise Ihre Systeme ausfallen werden. Sie werden es also wissen. Je länger Sie in der Branche tätig sind, Sie wissen das, zum Beispiel ein Java-Server fällt auf X, Y, Z verschiedene Arten aus, also sollten wir wahrscheinlich unseren JVM-Heap überwachen, oder was auch immer es ist.

    Jared Kells:

    Das wollte ich sagen!

    Jordan Simonowski:

    Ich werde versuchen, nicht zu viel darauf einzugehen...

    Jared Kells:

    Der Speicher geht aus!

    Jordan Simonowski:

    Ja. Also das ist etwas, von dem du erwartest, dass es irgendwann scheitern wird. Und das ist etwas, das Sie als bekannt unbekannt betrachten können. Aber das Versprechen der Beobachtbarkeit ist, dass wir genügend Daten liefern sollten, um neue Fragen stellen zu können. Die Art und Weise, wie darüber gesprochen wird, sehen Sie, es ist eine unbekannte Unbekannte in unserem System, über die wir etwas herausfinden und neue Fragen stellen wollen. Und hier wird, glaube ich, die Beobachtbarkeit eingeführt, um diese Fragen zu beantworten. Reicht die Antwort aus? Willst du, dass ich näher auf dieses Zeug eingehe? Ich kann den ganzen Tag darüber reden.

    Jared Kells:

    Ist es wie ein [Crosstalk 00:08:05]. Also, um es dir noch einmal zu sagen, um zu sehen, ob ich es verstanden habe. Also, wenn ich eine, traditionell mit einer Java-App, habe, könnte ich Erinnerungen protokollieren. Das liegt daran, dass ich weiß, dass JVMs der Arbeitsspeicher ausgeht, und das ist eine Sache, die ich überwache, aber die Beobachtbarkeit ist umfassender. Sie übertreiben quasi das, was Sie überwachen und protokollieren, sodass Sie...

    Jordan Simonowski:

    Ja. Und ich würde nicht unbedingt sagen, dass es übertrieben ist. Ich denke, es fügt Ihren Daten vielleicht etwas mehr Kontext hinzu. Wenn also jemand von Ihnen schon einmal mit Traces gearbeitet hat, ist Observability der Funktionsweise von Traces sehr ähnlich und baut einfach auf der Prämisse von Traces auf, schätze ich. Sie erstellen also diese Ereignisse, und bei diesen Ereignissen handelt es sich um verschiedene Transaktionen, die in Ihren Anwendungen stattfinden könnten, wobei normalerweise eine Anfrage eingereicht wird. Und mit dieser Anfrage können Sie ihr eine ganze Reihe von Kontext hinzufügen. Sie können hinzufügen, auf welchem Server dies möglicherweise läuft, in welcher Zeitzone. All diese zusätzlichen und all die Aufreger. Sie können die Benutzeragentur hineinwerfen, wenn Sie möchten. Die Idee der Beobachtbarkeit besteht darin, dass Sie nicht unbedingt durch Daten mit hoher Kardinalität eingeschränkt sind. Daten mit hoher Kardinalität sind Datensätze, die sich in Bezug auf die Art der Daten, die sie repräsentieren, oder die Kombinationen von Datensätzen, die Sie haben könnten, erheblich ändern können.

    Jordan Simonowski:

    Wenn Sie also Versandmetriken für etwas haben möchten, auf Benutzerbasis, und Sie sich ansehen möchten, wie verschiedene Benutzer von den Dingen betroffen sind, würde das als Metrik mit hoher Kardinalität betrachtet werden. Und in den meisten Fällen können traditionelle Überwachungsunternehmen oder Anbieter von Messwerten Ihnen das nicht wirklich als Service anbieten. Das ist der Punkt, an dem Sie anfangen, wahnsinnig hohe Rechnungen für Dinge wie Datadog oder was auch immer es ist, zu bezahlen, weil sie jetzt als neue Metriken betrachtet werden. Im Gegensatz zu Observability versuchen wir, unsere Daten zu speichern und sie so abzufragen, dass wir ziemlich große Datensätze speichern und sagen können: „Cool. Wir haben Fehler, die von dieser Art von Benutzern kommen.“ Und Sie können dort anfangen, Korrelationen zu bestimmten Dingen aufzubauen. Sie können herausfinden, dass bei Benutzern aus einer bestimmten Zeitzone oder einem bestimmten Gerät nur dieser Fehler auftritt. Und von dort aus können Sie, glaube ich, bessere Methoden entwickeln, um zu verstehen, wie eine bestimmte Änderung die Dinge kaputt gemacht haben könnte. Oder bestimmte Randfälle, die Sie sonst mit etwas wie CPU- oder Speicherüberwachung nicht erkennen könnten.

    Angad Seth:

    Wäre es fair zu sagen...

    Jared Kells:

    Ja. Es ist [Crosstalk 00:11:02].

    Angad Seth:

    Oh, tut mir leid, Jared.

    Jared Kells:

    Nein, du kannst...

    Angad Seth:

    Wäre es fair zu sagen, dass Beobachtbarkeit also im Grunde eine Reihe von Prinzipien ist oder ein Weg, unbekannte Unbekannte zu finden?

    Jordan Simonowski:

    Ja.

    Angad Seth:

    Oh.

    Jess Belliveau:

    Und ich sollte Sie besser ausrüsten, um herauszufinden, dass eine Menge Leute denken, Sie denken, dass Beobachtbarkeit eine Sache ist, die Sie einsetzen und haben und ein Kästchen ankreuzen können, aber ich mag Ihre Wortwahl, wenn es um eine Reihe von Prinzipien oder Best Practices geht. Es gibt Ihnen sozusagen eine Anleitung zu diesen Themen und sorgt dafür, dass Ihre Anwendung eine gute Protokollierung hervorbringt. Also strukturierte Protokolle. Sie erhalten also immer das gleiche Protokollformat, das Sie sich ansehen können. Tracing, worüber Jordan ein bisschen gesprochen hat. So haben Sie die Möglichkeit, zu verfolgen, wie ein Benutzer mit all den verschiedenen Microservices interagiert, und möglicherweise auch zu sehen, wo etwas schief läuft, und auch Kennzahlen. Das Gute an Metriken ist also, dass wir die Dinge ein bisschen umdrehen und versuchen, eine Anwendung zu erstellen, anstatt, und ich will nicht zu technisch werden, Black-Box-Monitoring zu machen, bei dem wir draußen sind und versuchen, mit solchen Sonden und Checks reinzuschauen. Aber die Idee bei Metriken ist, dass die Anwendung diese Metriken tatsächlich ausgibt, um uns darüber zu informieren, in welchem Zustand sie sich befindet, und sie dadurch besser beobachtbar zu machen.

    Jess Belliveau:

    Ja, mir gefällt deine Wortwahl, Angad, dass es wie diese Praktiken ist, diese Art von Leitfaden, wohin man gehen muss, was wahrscheinlich zu dem nächsten Punkt führt, warum sollte ein Team das implementieren wollen. Wenn du noch einmal anfangen willst, Jordan?

    Jordan Simonowski:

    Ja, ich kann anfangen. Und ich gebe dir auch ein bisschen mehr Zeit zum Reden, Jess in diesem. Ich werde nicht so viel schimpfen.

    Jess Belliveau:

    Oh, dafür habe ich mich nicht angemeldet!

    Jordan Simonowski:

    Ich denke, die Teams würden es wollen, weil es wirklich von Ihrer Organisation und, glaube ich, von der Größe der Teams abhängt, in denen Sie arbeiten. In den meisten Fällen würde ich sagen, dass Sie Observability nicht selbst im eigenen Haus erstellen möchten. Das ist etwas, das Sie können, Observability-Funktionen selbst, Sie werden es nicht erreichen, indem Sie einfach etwas kaufen, also Sie können Dev-Ops nicht kaufen, Sie können Agile nicht kaufen, Sie können Observability auch nicht kaufen.

    Jared Kells:

    Warte, warte. Auf meinem Runsheet steht, dass ich für Easy Agile werben soll, das klingt also nach einem guten Übergang-

    Jess Belliveau:

    Es sei denn, du willst es kaufen. Wenn du Agile kaufen möchtest, dann [Crosstalk 00:13:55] im Marketplace.

    Jared Kells:

    Ja, tut mir leid, tut mir leid, ja! Ja, mach weiter.

    Jordan Simonowski:

    Sie können Tools kaufen, die Ihnen das Leben erheblich erleichtern, und es gibt bereits eine Menge Dinge da draußen, die Dinge für Menschen tun und wirklich interessante Daten an die Oberfläche bringen, die sich die Leute vielleicht ansehen möchten. Ich denke, es gibt ein paar Start-ups wie LightStep und Honeycomb, die Ihnen eine wirklich intuitive Möglichkeit bieten, Ihre Daten in der Produktion zu verstehen. Aber warum Sie solche Dinge benötigen, ist, dass Sie den Zustand Ihrer Systeme zu einem bestimmten Zeitpunkt wissen wollen, und um, glaube ich, eine gute Betriebshygiene und eine gute Produktionsexzellenz zu entwickeln, ich denke, wie Liz Fong-Jones es ausdrücken würde, müssen Sie in der Lage sein, diese Rückkopplungsschleife zu schließen. Wir haben bereits eine ganze Reihe von Tools. Wir haben also CICD-Systeme eingerichtet. Wir haben jetzt Feature-Flags, die uns, glaube ich, helfen, Deployments von Releases zu entkoppeln. Sie können Code bereitstellen, ohne tatsächlich Code zu veröffentlichen, und Sie können diese Macht jetzt Ihren PMs geben, wenn Sie möchten, mit Feature-Flags, was großartig ist.

    Jordan Simonowski:

    Aber jetzt können Sie diesen Kreislauf auch komplett schließen, und während Sie eine Anwendung bereitstellen, können Sie sagen: „Ich möchte diese Bereitstellung kanalisieren. Ich möchte dies für 10% meiner Benutzer bereitstellen, vielleicht für Benutzer, die sich für Beta-Versionen oder etwas aus unserer Anwendung angemeldet haben, und Sie können sich tatsächlich ansehen, wie das funktioniert, bevor Sie es einem breiteren Publikum zugänglich machen. Es macht Bereitstellungen also viel sicherer. Es gibt Ihnen auch ein besseres Verständnis dafür, wie Sie sich auch auf die Benutzer auswirken. Und es gibt eine ganze Reihe von Tools, mit denen Sie auch diese Dinge ermitteln können. Wenn Sie sich also ansehen, wie viele Unternehmen derzeit SRE durchführen, oder wenn Sie wissen, wie zuverlässig ihre Anwendungen aussehen, haben Sie auch Dinge wie SLOs im Einsatz. Und SLOs-

    Jared Kells:

    Was ist ein SLO?

    Jordan Simonowski:

    Sie sind alle mit Benutzererlebnissen verbunden. Sie sagen also: „Kann mein Benutzer diese spezielle Interaktion durchführen?“ Und wenn Sie das effektiv messen und wissen, wie sich Ihre Änderungen auf die Benutzer auswirken, können Sie ganz einfach entscheiden, ob Sie weiterhin Funktionen bereitstellen oder ob Sie alles fallen lassen und an der Zuverlässigkeit arbeiten, um sicherzustellen, dass Ihre Benutzer nicht beeinträchtigt werden. Es ist also dieser sehr nutzerorientierte Ansatz, Dinge zu tun. Ich denke, wenn es darum geht, den Kreis zu schließen, liefert uns die Beobachtbarkeit die Daten, anhand derer wir sagen können: „Ja, so sind die Nutzer betroffen. Auf diese Weise, schätze ich, geht es dem 99. Perzentil unserer Nutzer gut, aber wir haben 1%, die negative Probleme mit unserer Anwendung haben.“ Und von dort aus können Sie wirklich Dinge lokalisieren und sagen: „Cool. Benutzer mit diesem bestimmten Browser oder diesem speziellen Browser oder wo wir diese App bereitgestellt haben. „Nehmen wir an, wenn Sie eine globale Bereitstellung haben, haben Sie sie zuerst auf einer Insel bereitgestellt, weil es Ihnen eigentlich egal ist, was mit ihnen passiert. Sie können sagen: „Oh, wir haben tatsächlich Sachen für sie kaputt gemacht.“ Und Sie können es rückgängig machen, bevor Sie sich auf 100% Ihrer Nutzer auswirken.

    Jared Kells:

    Ja. Mir hat gefallen, was du über den Test gesagt hast. Ich habe das Akronym vergessen, aber ich teste tatsächlich das Verhalten des Endbenutzers. Das finde ich ziemlich aufregend, weil wir all diese Metriken haben, die ein bisschen nutzlos sind. Sie sind cool: „Oh, es nutzt 1% CPU, wie es immer ist, jetzt ist mir das egal“, aber kann ein Benutzer die App öffnen und ein Problem mit der Maus herumschleppen? Es ist wie...

    Jess Belliveau:

    Ja, das ist ein wirklich gutes Beispiel, oder?

    Jared Kells:

    Das ist es, was mir wirklich wichtig ist.

    Jess Belliveau:

    Bei der CPU-Sache mit 1% könnte man sich ein Diagramm zur CPU-Auslastung ansehen und eine Bereitstellung sehen, und die CPU-Auslastung ändert sich nicht. Ist alles gesund oder nicht? Sie wissen es nicht, aber wenn Sie tiefere Informationen über die Benutzerinteraktionen erhalten, könnten Sie 1% der CPU verwenden, um HTTP500-Fehler an 80% der Kundenbasis zu verteilen, so oder so.

    Angad Seth:

    Wie macht man das? Der SLO-Bit, woher weißt du, dass sich ein Benutzer anmelden und ein Problem ziehen kann?

    Jordan Simonowski:

    Ja. Ja, das würde mit einer guten Instrumentierung einhergehen...

    Angad Seth:

    Gute Frage?

    Jordan Simonowski:

    Ja, es kommt darauf an, die Beobachtbarkeit zu berücksichtigen, wenn Sie neue Funktionen entwickeln, genauso wie Sie darüber nachdenken würden, beim Schreiben eine bestimmte Sache in Ihrem Code zu protokollieren oder Tests für Ihren Code zu schreiben, während Sie auch Code schreiben. Sie sollten darüber nachdenken, wie Sie etwas instrumentieren können und wie Sie verstehen können, wie diese spezielle Funktion in der Produktion funktioniert. Denn ich denke, viele Agile- und Dev-Ops-Prinzipien sagen uns jetzt, dass wir unsere Anwendungen in der Produktion haben wollen. Und als Entwickler endet unsere Verantwortung nicht, wenn wir etwas bereitstellen. Unsere Verantwortung als Entwickler endet, wenn wir dem Unternehmen einen Mehrwert geboten haben. Und Sie müssen verstehen, dass Sie das tatsächlich tun. Und da müssen Sie, glaube ich, über die Beobachtbarkeit bei vielen dieser Dinge nachdenken und Ihre Erfolgskennzahlen tatsächlich messen. Wenn Sie also wissen, dass Ihre Anwendung erfolgreich ist, wenn sich Ihr Benutzer anmelden und Dinge herumziehen kann, dann ist das genau das, was Sie messen möchten.

    Jared Kells:

    Ich denke, wir müssen bauen...

    Jordan Simonowski:

    Ja?

    Jared Kells:

    Oh, tut mir leid, Jordan.

    Jordan Simonowski:

    Nein, du gehst.

    Jared Kells:

    Ich wollte nur sagen, dass wir unsere Apps bereits unter Berücksichtigung von Integrationstests entwickeln müssen. Also browserbasierte Tests rund um neue Funktionen. Es würde also darum gehen, Funktionen unter Berücksichtigung dieser und derselben Sache zu entwickeln, aber für Tests und Produktion.

    Jess Belliveau:

    Ja, und das eigentliche Wie, der eigentliche Teil zum Schreiben von Code, da ist dieses wirklich großartige Projekt, das Open Telemetrie-Projekt, das all diese Arten von APIs und SDKs bereitstellt, die Entwickler nutzen können, und es ist herstellerunabhängig. Wenn du also über das Wie sprichst, etwa: „Wie mache ich das? Wie instrumentiere ich Dinge?“ Oder: „Wie gebe ich Kennzahlen aus?“ Sie bieten all diese hilfreichen Bibliotheken und Includes, die Sie haben können, denn das Letzte, was Sie tun möchten, ist, diese benutzerdefinierte Lösung auf den Markt zu bringen, weil Sie dann nur Ihre technischen Schulden erhöhen. Sie versuchen, die Dinge einfacher zu machen, verlassen sich dann aber auf: „Nun, ich muss Jared Kells weiter beschäftigen, weil er unsere Login-Engine geschrieben hat und niemand sonst weiß, wie sie funktioniert.

    Jess Belliveau:

    Und dann die andere Sache, die mir auch bei so etwas wie offener Telemetrie in den Sinn kommt, und wir haben ein bisschen über Datadog gesprochen. Datadog ist also ein SaaS-Anbieter, der sich auf Observability spezialisiert hat. Und Sie würden Ihre Metriken und Ihre Logs und Ihre Traces an sie übertragen und sie bieten Ihnen eine Benutzeroberfläche zum Anzeigen. Wenn Sie sich für etwas entscheiden, das herstellerunabhängig ist, nehmen wir einfach das Beispiel von Easy Agile. Nehmen wir an, sie starten Datadog und in sechs Monaten wollen wir Datadog nicht mehr verwenden, wir wollen SignalFX oder was auch immer das Splunk-Modell jetzt ist, verwenden.

    Jordan Simonowski:

    Ich denke NorthX.

    Jess Belliveau:

    Ja. Du kannst deinen Endpunkt ändern, dieselben Metriken und all diese Dinge, vielleicht mit ein paar kleinen Anpassungen, aber die Idee ist, dass du dich nicht auf eine einzige Sache festlegen willst.

    Jordan Simonowski:

    Ihre Datenstrukturen bleiben gleich.

    Jess Belliveau:

    Ja. Damit du es fast nahtlos machen könntest, ohne dass die Entwickler es wissen. In der Vergangenheit gab es sogar Unternehmen, die meiner Meinung nach auf mehrere Anbieter umgestellt haben. Sie könnten also Anbieter A nutzen und dann mit Anbieter B einen Machbarkeitsnachweis durchführen, um zu sehen, wie die Erfahrung ist, und Sie geben Ihre Daten einfach auch dort weiter.

    Jared Kells:

    Ja. Ich denke, unsere Verbindung zu Datadog wird aus all den Dashboards und allem, was wir gemacht haben, bestehen. Es sind nicht so sehr die Daten.

    Jess Belliveau:

    Ja. Das ist quasi der große Verkaufsschlager, richtig. Das ist die Art und Weise, wie du interagierst. Das ist der Punkt, an dem sie ins Spiel kommen wollen. Es macht es Ihnen leichter, diese Daten zu interpretieren und sie so zu manipulieren, dass sie Ihren Bedürfnissen entsprechen und so weiter.

    Jordan Simonowski:

    Observability deutet auf Dashboards hin, oder?

    Jess Belliveau:

    Ja, vielleicht. Du hast diesen Begriff auch benutzt, Jordan, „Produktionsexzellenz“. Und wenn wir darüber sprechen, wer Observability braucht, habe ich ein bisschen darüber nachgedacht, während Sie gesprochen haben. Und für mich ist Production Excellence, oder in Apptio nennen wir das Produktionsbereitschaft, Betriebsbereitschaft und diese Art von Dingen ist so, als ob wir etwas in der Produktion einsetzen wollen, wie zum Beispiel welche Best Practices wollen wir haben, bevor wir das tun? Und ich denke, Observability ist eine wirklich gute Idee, weil sie Ihnen in Zukunft hilft. Sie wissen nicht, welche Probleme Sie später haben werden, aber Sie rüsten Ihre Teams so aus, dass sie problemlos auf diese Probleme reagieren können. Wir waren wahrscheinlich alle dort, wir haben den Produktionscode implementiert und wir haben keine Observability, wir haben einen riesigen Ausfall. Was ist schief gelaufen? Nun, niemand weiß es, aber wir wissen, dass das die Lösung ist, und es ist schwer, daraus zu lernen, oder man muss wohl daraus lernen und den Benutzer vor zukünftigen Dingen schützen, ja.

    Jess Belliveau:

    Wenn ich denke, dass einfache Beobachtbarkeit gewinnt, kommt mir als Erstes die ganze Idee der strukturierten Protokollierung in den Sinn, was eigentlich die Idee ist, dass Ihre Anwendung zuallererst Sie protokollieren. Ziemlich wichtig als Ausgangspunkt, aber dann haben Sie ein strukturiertes Protokollformat, mit dem Sie die Logs auch programmgesteuert weitergeben können. Wenn Sie in der Zeit zurückreisen, sah die Protokollierung vielleicht nur wie einfacher Text mit einer Zeile, einem Zeitstempel und einer Fehlermeldung aus. Was auch immer der Entwickler beschlossen hat, in die Standardausgabe zu schreiben, oder in die Fehlerdatei oder so ähnlich. Ich denke, es gibt einen allgemeinen Trend hin zu JSON, einem tatsächlich formatierten Blob mit dieser bekannten Struktur, damit Sie ihn sich ansehen können. Tracing ist wahrscheinlich kein einfacher Gewinn. Das ist ein bisschen schwieriger. Sie können es mit offener Telemetrie und Bibliotheken und so implementieren. Ich denke, es erfordert ein bisschen mehr Verständnis Ihrer Codebasis und darüber, wo die Ablaufverfolgung ausgelöst werden soll, und solche Dinge, das Analysieren von Kontexten, solche Dinge.

    Jordan Simonowski:

    Ich denke Atlassian, wenn du wahrscheinlich einfach nur wissen willst, dass alles in Ordnung ist. Auf einer ziemlich oberflächlichen Ebene. Vielleicht willst du einfach nur eine Art Uptime für einen Trend machen. Und wenn dann, glaube ich, Ihr Code komplexer wird oder Ihr Produkt etwas komplexer wird, können Sie anfangen, Dinge hinzuzufügen. Aber ich denke, die Dinge, die Sie kennen, tatsächlich zu kennen oder an die Oberfläche zu bringen, könnte kaputt gehen. Das wären wahrscheinlich deine schnellsten Siege.

    Jess Belliveau:

    Nun, lassen Sie uns einige Dinge zur weiteren Lektüre erwähnen. Wenn Sie sich einen Überblick über das Ganze verschaffen wollen, hat das Google SRE-Buch von vor ein paar Jahren begonnen, echte Observability stark in Bewegung zu setzen. Das Google SRE-Zeug deckt die gesamte Bandbreite ihrer Praxis im Bereich Soak Reliability Engineering ab, und Observability ist ein Teil davon, dazu gibt es einige großartige Kapitel. Ich glaube, O'Reilly hat jetzt ein Buch über Observability veröffentlicht, das sich nur der Beobachtbarkeit widmet.

    Jordan Simonowski:

    Ich denke, das ist noch in der frühen Version, wenn die Leute Kapitel googeln wollen.

    Jess Belliveau:

    Das offene Telemetrie-Zeug, wir werden einen Link dazu setzen, ich denke, das ist wirklich praktisch zu wissen.

    Angad Seth:

    Aus [unverständlich 00:26:12], das ist meine Sicht als Entwickler, sage ich, ich wollte Cornflake Use Datadog bei Easy Agile einführen. Nicht sehr vertraut, ich fühle mich nicht sehr wohl damit. Ich weiß, wie man navigiert, aber wie kann ich schnell mit der Einführung von Observability beginnen? Es tut mir leid, dass ich meinen direkten Job oder meinen Arbeitsplatz gesperrt habe.

    Jordan Simonowski:

    Ich würde sagen, ich könnte hier voreingenommen sein. Jess, korrigiere mich oder gib deine Meinung dazu ab, ich würde mich dafür stark zu SLOs neigen. Und Sie können das kurz im SRE nachlesen-

    Jess Belliveau:

    Wofür steht SLO, Jordan?

    Jordan Simonowski:

    Okay, tut mir leid. Schlagworte! SLO ist ein Service Level Objective, nicht zu verwechseln mit Service Level Agreement. Eine Vereinbarung selbst ist vertraglich und Sie können den Leuten Geld zahlen, wenn Sie gegen diese verstoßen. Ein SLO ist etwas, das Sie in Ihrem Team festlegen und Sie haben ein Zuverlässigkeitsziel, weil wir an einem Punkt angelangt sind, an dem wir verstehen, dass sich alle Systeme zu jedem Zeitpunkt in einem heruntergekommenen Zustand befinden. Und ja, Zuverlässigkeit ist nicht unbedingt binär, sie ist nicht unzuverlässig oder zuverlässig. Meistens ist es meistens zuverlässig und das gibt uns eine bessere gemeinsame Sprache, denke ich. Und Sie können das SRE-Handbuch von Google lesen, das kostenlos online verfügbar ist und Ihnen ein ziemlich gutes Verständnis von Datadog vermittelt.

    Jordan Simonowski:

    Ich glaube, als ich es das letzte Mal benutzt habe, gab es ein SLO-Angebot. Aber ich denke, wie ich bereits erwähnt habe, haben Sie ein SLO für bestimmte Funktionen oder Merkmale Ihrer Anwendung festgelegt. Sie sagen: „Mein Benutzer kann das in 99% der Fälle tun“, oder was auch immer Sie sich für ein anderes Zuverlässigkeitsziel setzen möchten. Ich würde eine Zuverlässigkeit von fünf Neunern nicht empfehlen. Sie werden sich wahrscheinlich selbst ausbrennen, wenn Sie versuchen, dorthin zu gelangen. Und du hast dir dieses Ziel gesetzt. Und Sie wissen genau, was Sie messen, Sie messen bestimmte Arten von Funktionen. Und Sie wissen, dass Benutzer betroffen sind, wenn Sie gegen diese Regeln verstoßen. Und hier können Sie tatsächlich anfangen, über Observability nachzudenken. Sie können darüber nachdenken: „Welche anderen Funktionen implementieren wir, mit deren Messung wir beginnen können?“ Oder: „Welche nutzerorientierten Dinge implementieren wir, mit deren Messung wir beginnen können?“

    Jordan Simonowski:

    Andere Dinge, die Sie sich wahrscheinlich ansehen könnten, sind, ich denke, sie sind sowieso alle in dem Buch behandelt, die Aktualität der Daten in gewisser Weise. Sie möchten sicherstellen, dass die Daten, die Benutzern angezeigt werden, relativ aktuell sind. Sie möchten nicht, dass sie sich veraltete Daten ansehen, also können Sie auch versuchen, solche Dinge zu messen. Aber Sie können es so ziemlich in die meisten Funktionen einer Website unterteilen. Es ist nicht mehr wie bei einem Ping-Check, bei dem Sie nur sagen: „Ja, HTTP, okay. Meine Bewerbung ist in Ordnung.“ Sie sagen: „Meine Benutzer sind tatsächlich von Dingen betroffen, die nicht funktionieren.“ Und von dort aus können Sie anfangen, Dinge zu messen. Und das sollte Ihnen ein besseres Verständnis oder zumindest eine bessere Vorstellung davon geben, wo Sie mit dem, was Sie messen möchten, beginnen und wie Sie es messen möchten. Das wäre meine Meinung dazu, wo Sie damit beginnen sollten, wenn Sie es einführen wollen.

    Jared Kells:

    Wir werden ein bisschen über den Status sprechen und wie bei einigen davon, wie bei unseren sehr Frontend-lastigen Anwendungen, die wir erstellen, sodass die Anwendungen, die wir erstellen, einfach im Browser laufen und der traditionelle Status, wie Sie sich das vorstellen würden, einfach eine sehr einfache API abruft, die einige Dinge mit einer gewissen Authentifizierung in die Datenbank schreibt und so weiter. Was die Zuverlässigkeit der Dienste angeht, so ist es wirklich zuverlässig. Diese winzigen APIs haben einfach nie Probleme, weil es einfach so einfach ist. Und nun ja, sie haben eine Menge Überwachung rund um das Thema. Aber unser gesamter Zustand ist eigentlich, wenn Sie sagen: „Beobachten Sie den Zustand des Systems“, größtenteils der Zustand in einem Browser. Und wie bringen wir Beobachtbarkeit in das hinein?

    Jess Belliveau:

    Eine große Sache ist wirklich, es gibt keine Sache, die auch für alle passt. Wenn wir auch über SLO-Sachen sprechen, geht es darum zu verstehen, was nicht so sehr für Ihr Unternehmen, sondern auch für Ihr Team wichtig ist. Wenn Sie dieses Produkt liefern, was ist Ihnen besonders wichtig? Also ein SLO, das für mich bei Apptio funktionieren könnte, wird wahrscheinlich nicht für Easy Agile funktionieren. Das erweitert auch mein Wissen über Frontend-Sachen wirklich, aber wenn wir sagen, dass wir auch den Staat beobachten wollen, meinen wir nicht unbedingt nur den Staat. Vielleicht möchten Sie bei jeder dieser APIs wissen, wie lang die Antwortzeit für diese API ist, wenn sie ausgelöst wird. Das könnte also eine wichtige Metrik sein. Sie können also feststellen, ob eine dieser APIs zu Latenz führt und Ihre Benutzererfahrung dadurch beeinträchtigt wird. Zum Beispiel: „Hey, als wir in der dritten Version waren und Benutzer hier mit unserem Service interagierten, reagierte er mit dieser prozentualen Latenz. Wir haben eine Version veröffentlicht und seitdem sehen wir, dass es jetzt in diesem Perzentil liegt. Haben wir die Leistung herabgesetzt?“ Die Benutzer beschweren sich vielleicht nicht, aber das könnte etwas sein, das das Team dann untersuchen und zu einem Sprint hinzufügen kann. Hey, ich verwende jetzt Agile-Begriffe. Achtung!

    Jared Kells:

    Das ist ein wirklich gutes Beispiel, Jess. Leistungsprobleme sind für uns in der Regel keine API, die schlecht funktioniert. Es liegt daran, dass in dieser sehr komplizierten Frontend-Anwendung nicht mehr in der gleichen Reihenfolge wie früher ausgeführt wird, oder es gibt eine komplexe Interaktion, an die wir nicht gedacht haben, sodass mehr Daten als erwartet angefordert werden. Die APIs kehren zurück. Sie sind größtenteils nie langsam, aber wir haben Leistungsrückgänge, von denen wir vielleicht nichts wissen, ohne sie zu sehen oder zu untersuchen. Die Beobachtbarkeit erfolgt wirklich auf der Browserebene des einzelnen Benutzers. Macht das Sinn? Ich möchte wissen, wie lange es gedauert hat, bis diese spezielle Interaktion stattgefunden hat.

    Jess Belliveau:

    Ja. Solche Dinge habe ich noch nie gemacht. Außerdem, ich schätze, Sie könnten möglicherweise betroffen sein, und dann haben Sie es auch mit Endbenutzer-Manifestationen zu tun. Sie könnten wahrnehmen...

    Jared Kells:

    Ja, sicher.

    Jess Belliveau:

    ... Höhere Leistung auf ihrem Laptop oder so, oder ihrem ISP oder so. Es wäre wirklich schwierig, sicherzustellen, dass Sie von solchen Dingen nicht auch Geräusche bekommen.

    Jordan Simonowski:

    Ja. Es gibt wohl Tools wie Sentry, die existieren, um Ihnen ein bisschen besser zu verstehen, was an Ihrem Frontend passiert. Die Art und Weise, wie Sentry in der Regel mit JavaScript arbeitet, ist, dass Sie eine verkleinerte Map Ihres JS auf Sentry hochladen, Ihren Code bereitstellen und dann, wenn etwas kaputt geht oder auf ziemlich unerwartete Weise funktioniert, das in der Regel auftaucht, wobei Sentry Ihnen genau sagt, in welcher Zeile diese Art von Dingen passiert, und es ist ein wirklich cooles Tool für diese Firmenkram. Ich weiß nicht, ob es dir die richtigen Einblicke geben würde, glaube ich, in Bezug auf Leistung oder...

    Jared Kells:

    Ja, wir verwenden ein ähnliches Tool und es funktioniert bei Abstürzen und solchen Dingen. Und was die Beobachtbarkeit angeht, protokollieren wir Aktionen wie Zustandsmutationen im Frontend, nicht die tatsächliche Statusänderung, sondern nur Beschriftungen, die angeben, dass Sie eine Problemzusammenfassung aktualisiert haben oder auf diese Schaltfläche geklickt haben, so etwas, und wir senden sie mit unseren Absturzberichten. Und es ist super hilfreich, diese Art von Beobachtbarkeit zu haben. Also ich glaube, ich weiß, wovon ihr redet. Aber ich bin nur [Crosstalk 00:35:25], ja.

    Jess Belliveau:

    Ja, das ist, glaube ich, fast eine Art von Rückverfolgung. Wenn Jordan und ich über Tracing sprechen, denken wir vielleicht an 12 verschiedene Microservices in AWS, die alle miteinander interagieren, während Sie das eher verschieben. Das ist quasi alles, was im Browser interagiert, und nur diese Historie davon zu haben, ist das, was der Benutzer getan hat und wie es dazu kam...

    Jared Kells:

    In diesem Staat.

    Jess Belliveau:

    In diesem Staat, ja.

    Jordan Simonowski:

    Ich schätze, selbst wenn Sie nicht viele Microservices haben, wenn Sie über bestimmte sprechen, wie Sie sagen, sind Ihre API-Anfragen größtenteils in Ordnung, aber manchmal haben Sie besonders große Nutzlasten-

    Jared Kells:

    Wir müssen tatsächlich überwachen, ich weiß nicht, vielleicht können Sie dabei helfen, wir sollten eigentlich überwachen, mit wem wir zusammenarbeiten. Es ist tatsächlich viel wahrscheinlicher, dass wir ein Leistungsproblem mit einer Xero-API haben werden, als... Wir sehen es nicht, der Browser sieht es auch, was...

    Jordan Simonowski:

    Ja, und Tracing löst all diese Regressionen für Sie. Die meisten Tracing-Bibliotheken, z. B. wenn Sie Node-Apps oder was auch immer in Ihrem Backend ausführen. Ich kann dir nur etwas über Node erzählen, weil ich wahrscheinlich die meiste Erfahrung mit dem Schreiben von Node-Sachen habe. Du gibst quasi einfach Didi Trace ein, eine Datadog-Bibliothek für das Tracing in dein Backend und deinen Hook selbst in all die, glaube ich, gängigen Bibliotheken, mit denen du normalerweise arbeiten wirst, glaube ich. Wenn Sie zum Beispiel für Express oder nur für viele HADP-Bibliotheken sowie für ein paar AWS-Services arbeiten, wird es sich quasi von selbst einbinden. Und Sie können es tatsächlich genau bestimmen. Es wird Ihnen auf dieser ziemlich coolen Servicekarte irgendwie genau zeigen, mit welchen Diensten Sie interagieren und wo Sie möglicherweise eine Regression erleben. Und ich denke, Spuren dienen dazu, diese Informationen an die Oberfläche zu bringen, was cool ist. Das könnte also etwas sein, das es wert ist, untersucht zu werden.

    Jess Belliveau:

    Es ist lustig. Das hat etwas nichts mit Beobachtbarkeit zu tun, aber Sie haben mich gerade dazu gebracht, ein bisschen mehr darüber nachzudenken, warum Sie sagen, dass Sie auch von Drittanbietern abhängig sind. Und etwas, das meiner Meinung nach wirklich wichtig ist und manchmal übersehen wird, ist, dass sich so viele von uns heute auf Drittanbieter verlassen, da AWS eine große Sache ist. Viele Leute schreiben Apps, für die AWS-Services erforderlich sind. Und ich denke, die meiste Zeit gehen die Leute einfach davon aus, dass AWS oder Jira oder was auch immer zu 100% verfügbar ist und immer verfügbar ist. Und sie schreiben ihren Code nicht so, dass er mit Ausfällen umgeht. Und ich finde es super wichtig. Ich habe schon so oft Leute gesehen, die die AWS-API verwenden, und sie implementieren kein exponentielles Back-Off. Also versuchen sie im Grunde, die AWS-API zu erreichen. Sie schlägt fehl oder sie werden zum Beispiel gedrosselt, und dann gehen sie einfach in einen Fehlerzustand über und geben dem Benutzer einen Fehler. Aber Sie könnten möglicherweise die Benutzererfahrung verbessern, einen automatischen Wiederholungsmechanismus einbauen lassen und so weiter. Es hat nicht wirklich etwas mit der Beobachtbarkeit zu tun, aber es ist etwas Besonderes.

    Jared Kells:

    Und den Nutzern ist das egal, oder? Es interessiert niemanden, ob es sich um ein AWS-Problem handelt. Es ist dein Problem, richtig, deine App ist zu langsam.

    Jess Belliveau:

    Nun, sie benutzen deine App. Genau richtig. Es wirkt sich irgendwie auf Sie aus, also ist es in Ihrem Interesse, sich vor einem Upstream-Fehler zu schützen oder zumindest den Benutzer zu informieren, wenn dies der Fall ist. Ja.

    Jared Kells:

    Nun, ich glaube, wir müssen ihn diesen Podcast nennen, weil es eine Stunde her ist. Wir hatten maximal 45 Minuten unterrichtet.

    Jess Belliveau:

    Wir könnten einfach weitermachen. Wir könnten einen zweiten Teil brauchen! Vielleicht können wir [Cross Talk 00:39:21] anfragen.

    Jared Kells:

    Vielleicht! Ja.

    Jess Belliveau:

    Oder wir starten einfach unseren eigenen Podcast! Ja.

    Angad Seth:

    Also, was waren deine wichtigsten Erkenntnisse heute, wenn man bedenkt, dass Angad und ich gerade etwas über Beobachtbarkeit lernen, Angad, was war heute deine größte Erkenntnis über Beobachtbarkeit? Meine größte Erkenntnis war, dass Beobachtbarkeit nicht mit Datadog gleichzusetzen ist. Nein, tut mir leid! Es war einfach sehr faszinierend zu lernen, wie man die bekannten Unbekannten quantifiziert. Ich weiß nicht, ob das ein guter Imbiss ist, aber...

    Jess Belliveau:

    Jeder Imbiss ist ein guter Imbiss! Was ist mit dir, Jared?

    Jared Kells:

    Ich glaube, weil ich gerade über Zustandsmanagement sprechen wollte, und ein Teil davon war, dass wir im Moment diese Fähigkeit haben, durch die Architektur unserer Frontends den Status der App zu erfassen und einen Kunden dazu zu bringen, uns seinen Status zu senden, im Grunde genommen. Und wir können es in unsere App laden und einfach genau sehen, wie es war, genau so, wie unser Bundesstaat konzipiert ist. Aber was noch cooler sein könnte, ist vielleicht etwas Observability zur Unterstützung in das Frontend einzubauen. Ich denke, anstatt einfach zu haben, haben wir diese Schaltfläche, um uns Ihre Support-Informationen zu senden, die uns einen Haufen des Status schicken, aber anstatt die Konsole im Browserprotokoll zu protokollieren, könnten wir die Konsole protokollieren und uns irgendwo in unserem Frontend anmelden, sodass unsere Kunden uns die Aktionen senden sollten, die sie ausgeführt haben, wenn sie auf „Support-Informationen senden“ klicken.

    Jared Kells:

    Zum Beispiel: „Hey, da ist ein Bug, senden Sie uns Ihre Support-Informationen.“ Es muss kein Drittanbieter-Dienst sein, der diese Observability-Daten sammelt. Wir könnten einfach in unser... Darüber denke ich also nach.

    Jess Belliveau:

    Ja, ganz sicher. Es wird wahrscheinlich auch viel weniger aufdringlich sein, als einige der Sachen von Drittanbietern, die ich gesehen habe.

    Jared Kells:

    Ja. Bei einigen dieser Integrationen ist das ziemlich schwierig, insbesondere wenn Sie Apps entwickeln, die hinter einer Firewall ausgeführt werden.

    Jess Belliveau:

    Ja

    Jared Kells:

    Sie können nicht einfach mit einigen dieser Dritten sprechen. Also ja, es ist trotzdem cool. Es ist wirklich interessant.

    Jess Belliveau:

    Nun, ich hoffe, jemand da draußen, der zuhört, hat etwas gelernt, und Jordan und ich werden ein paar Links durchschicken, und wir können sie hoffentlich zu den Shownotes hinzufügen oder so, damit die Leute etwas mehr lesen können und...

    Jared Kells:

    Alles danke!

    Jess Belliveau:

    Danke für die Einladung, ja.

    Jared Kells:

    Vielen Dank für Ihre Zeit und danke allen fürs Zuhören.

    Jordan Simonowski:

    Danke allen.

    Angad Seth:

    Das war [unhörbar 00:41:55].

    Jess Belliveau:

    Schaltet nächste Woche ein!

  • Podcast

    Easy Agile Podcast Ep.32 Why Your Retrospectives Keep Failing (and How to Finally Fix Them)

    In this insightful episode, we dive deep into one of the most common frustrations in engineering and dev teams: retrospectives that fail to drive meaningful change. Join Jaclyn Smith, Senior Product Manager at Easy Agile, and Shane Raubenheimer, Agile Technical Consultant at Adaptavist, as they unpack why retrospectives often become checkbox exercises and share practical strategies for transforming them into powerful engines of continuous improvement.

    Want to put these insights into practice? Join Jaclyn and Shane for their live, hands-on webinar on July 10th where they'll show you exactly how to transform your retrospectives with practical tools and techniques you can implement immediately.

    Key topics covered:

    • Common retrospective anti-patterns and why teams become disengaged
    • The critical importance of treating action items as "first-class citizens"
    • How to surface recurring themes and environmental issues beyond team control
    • Practical strategies for breaking down overwhelming improvement initiatives
    • The need for leadership buy-in and organizational support for retrospective outcomes
    • Moving from "doing agile" to "being agile" through effective reflection and action

    This conversation is packed with insights for making your retrospectives more impactful and driving real organizational change.

    About our guests

    Jaclyn Smith is a Senior Product Manager at Easy Agile, where she leads the Easy Agile TeamRhythm product that helps teams realize the full benefits of their practices. With over five years of experience as both an in-house and consulting agile coach, Jaclyn has worked across diverse industries helping teams improve their ways of working. At Easy Agile, she focuses on empowering teams to break down work effectively, estimate accurately, and most importantly, take meaningful action to continuously improve their delivery and collaboration.

    Shane Raubenheimer is an Agile Technical Consultant at Adaptavist, a global family of companies that combines teamwork, technology, and processes to help businesses excel. Adaptavist specializes in agile consulting, helping organizations deliver customer value through agile health checks, coaching, assessments, and implementing agile at scale. Shane brings extensive experience working across multiple industries—from petrochemical to IT, digital television, and food industries—applying agile philosophy to solve complex organizational challenges. His expertise spans both the technical and cultural aspects of agile transformation.

    Transcript

    This transcript has been lightly edited for clarity and readability while maintaining the authentic conversation flow.

    Opening and introductions

    Jaclyn Smith: Hi everyone, and welcome back to the Easy Agile Podcast. Today I'm talking to Shane Raubenheimer, who's with us from Adaptavist. Today we're talking about why your retrospectives keep failing and how to finally fix them. Shane, you and I have spent a fair amount of time together exploring the topic of retros, haven't we? Do you want to tell us a little bit about yourself first?

    Shane Raubenheimer: Yeah, hello everyone. I'm Shane Raubenheimer from Adaptavist. I am an agile coach and technical consultant, and along with Jaclyn, we've had loads of conversations around why retros don't work and how they just become tick-box exercises. Hopefully we're going to demystify some of that today.

    Jaclyn Smith: Excellent. What's your background, Shane? What kind of companies have you worked with?

    Shane Raubenheimer: I've been privileged enough to work across multiple industries—everything from petrochemical to IT, to digital television, food industry. All different types of applied work, but with the agile philosophy.

    Jaclyn Smith: Excellent, a big broad range. I should introduce myself as well. My name is Jaclyn. I am a Senior Product Manager here at Easy Agile, and I look after our Team Rhythm product, which helps teams realize the benefits of being agile. I stumbled there because our whole purpose at Easy Agile is to enable our customers to realize the benefits of being agile.

    My product focuses on team and teamwork, and teamwork happens at every level as we know. So helping our customers break down work and estimate work, reflect—which is what we're talking about today—and most importantly, take action to improve their ways of working. I am an agile coach by trade as well as a product manager, and spent about five years in a heap of different industries, both as a consultant like you Shane, and as an in-house coach as well.

    The core problem: When retrospectives become checkbox exercises

    Jaclyn Smith: All right, let's jump in. My first question for you Shane—I hear a lot that teams get a bit bored with retros, or they face recurring issues in their retrospectives. Is that your experience? Tell me about what you've seen.

    Shane Raubenheimer: Absolutely. I think often what should be a positive rollup and action of a sequence of work turns out to normally become a checkbox exercise. There's a lot of latency in the things that get uncovered and discussed, and they just tend to perpetually roll over. It almost becomes a checkbox exercise from what I've seen, rather than the mechanism to actively change what is happening within the team—but more importantly, from influences outside the team.

    I think that's where retros fail, because often the team does not have the capability to do any kind of upward or downstream problem solving. They tend to just mull about different ways to ease the issues within the team by pivoting the issues rather than solving them.

    I think that's where retros fail, because often the team does not have the capability to do any kind of upward or downstream problem solving. They tend to just mull about different ways to ease the issues within the team by pivoting the issues rather than solving them.

    Jaclyn Smith: Yeah, I would agree. Something that I see regularly too is because they become that checkbox, teams get really bored of them. They do them because they're part of their sprint, part of their work, but they're not engaged in them anymore. It's just this thing that they have to do.

    It also can promote a tendency to just look at what's recently happened and within their sphere of influence to solve. Whereas I think a lot of the issues that sometimes pop up are things that leadership need to help teams resolve, or they need help to solve. It can end up with them really focusing on "Oh well, there's this one bit in how we do our code reviews, we've got control over that, we'll try to fix that." Or as you say, the same recurring issues come up and they don't seem to get fixed—they're just the same complaints every time.

    Shane Raubenheimer: Absolutely. You find ways that you put a band-aid on them just so you can get through to the next phase. I think the problem with that is the impact that broader issues have on teams is never completely solvable within that space, and it's no one else's mandate necessarily to do it. When an issue is relatable to a team, exposing why it's not a team-specific issue and it's more environmental or potentially process-driven—that's the bit that I feel keeps getting missed.

    When an issue is relatable to a team, exposing why it's not a team-specific issue and it's more environmental or potentially process-driven—that's the bit that I feel keeps getting missed.

    The pressure problem and overwhelming solutions

    Jaclyn Smith: Yeah, I think so too. The other thing you just sparked for me—the recurring issue—I think that also happens when the team are under pressure and they don't feel like they have the time to solve the problems. They just need to get into the next sprint, they need to get the next bit of work done. Or maybe that thing that they need to solve is actually a larger thing—it's not something small that they can just change.

    They need to rethink things like testing strategies. If that's not working for you, and it's not just about fixing a few flaky tests, but you need to re-look at how you're approaching testing—it seems overwhelming and a bit too big.

    Shane Raubenheimer: Absolutely. Often environmental issues are ignored in favor of what you've been mandated to do. You almost retrofit the thing as best you can because it's an environmental issue. But finding ways to expose that as a broader-based issue—I think that should be the only output, especially if it's environmental and not team-based.

    The problem of forgotten action items

    Jaclyn Smith: Something I've also seen recently is that teams will come up with great ideas of things that they could do. As I said before, sometimes they're under pressure and they don't feel they have the capacity to make those changes. Sometimes those actions get talked about, everyone thinks it's a wonderful idea, and then they just get forgotten about. Teams end up with this big long backlog of wonderful experiments and things that they could have tried that have just been out of sight, out of mind. Have you seen much of that yourself?

    Shane Raubenheimer: Plenty. Yes, and often teams err on the side of what's expected of them rather than innovate or optimize. I think that's really where explaining the retrospective concept to people outside fully-stacked or insular teams is the point here. You need, very much like in change management, somebody outside the constructs of teams to almost champion that directive—the same way as you would do lobbying for money or transformation. It needs to be taken more seriously and incorporated into not just teams being mini-factories supporting a whole.

    You transform at a company level, you change-manage at a company level. So you should action retrospective influences in the same way. Naturally you get team-level ones, and that's normally where retrospectives do go well because it's the art of the possible and what you're mandated to do. I think bridging the gap between what we can fix ourselves and who can help us expose it is a big thing.

    I see so much great work going to waste because it simply isn't part of the day job, or should be but isn't.

    You transform at a company level, you change-manage at a company level. So you should action retrospective influences in the same way.

    Making action items first-class citizens

    Jaclyn Smith: Yeah, absolutely. I know particularly in the pre-Covid times when we were doing a lot of retros in person, or mostly in person with stickies on walls, I also found even if we took a snapshot of the action column, it would still end up on a Confluence board or something somewhere and get forgotten about. Then the next retro comes around and you sort of feel like you're starting fresh and just looking at the last sprint again. You're like, "Oh yeah, someone raised that last retro, but we still didn't do anything about that."

    Shane Raubenheimer: I think Product Owners, Scrum Masters, or any versions of those kinds of roles need to treat environmental change or anti-pattern change as seriously as they treat grooming work—the actual work itself. Because it doesn't matter how good you are if the impediments that are outside of your control are not managed or treated with the same kind of importance as the actual work you're doing. That'll never change, it'll just perpetuate. Sooner or later you hit critical mass. There's no scenario where your predictability or velocity gets better if these things are inherent to an environment you can't control.

    Product Owners, Scrum Masters, or any versions of those kinds of roles need to treat environmental change or anti-pattern change as seriously as they treat grooming work—the actual work itself.

    Jaclyn Smith: Yeah, that's true. We've talked about action items being first-class citizens and how we help teams do that for that exact reason. Because a retro is helpful to build relationships and empathy amongst the team for what's happening for each of them and feel a sense of community within their team. But the real change comes from these incremental changes that are made—the conversations that spark the important things to do to make those changes to improve how the team works.

    That action component is really the critical part, or maybe one of two critical parts of a retro. I feel like sometimes it's the forgotten child of the retro. Everyone focuses a lot on engaging people in getting their ideas out, and there's not as much time spent on the action items and what's going to be done or changed as a result.

    Beyond team-level retrospectives

    Shane Raubenheimer: Absolutely, consistently. I think it's symptomatic potentially of how retros are perceived. They're perceived as an inward-facing, insular reevaluation of what a team is doing. But I've always thought, in the same way you have the concept of team of teams, or if you're in a scaled environment like PI planning, I feel retrospectives need the same treatment or need to be invited to the VIP section to become part of that.

    Because retrospectives—yes, they're insular or introspective—but they need to be exposed at the same kind of level as things like managing your releases or training or QA, and they're not.

    Jaclyn Smith: Yeah, I think like a lot of things, they've fallen foul of the sometimes contentious "agile" word. People tend to think, "Oh retros, it's just one of those agile ceremonies or agile things that you do." The purpose of them can get really lost in that, and how useful they can be in creating change. At the end of the day, it's about improving the business outcomes. That's why all of these things are in place—you want to improve how well you work together so that you can get to the outcome quicker.

    At the end of the day, it's about improving the business outcomes. That's why all of these things are in place—you want to improve how well you work together so that you can get to the outcome quicker.

    Shane Raubenheimer: Absolutely. Outcome being the operative word, not successfully deploying code or...

    Jaclyn Smith: Or ticking the retro box, successfully having a retro.

    Shane Raubenheimer: Yeah, exactly. Being doing agile instead of being agile, right?

    Expanding the scope of retrospectives

    Jaclyn Smith: One hundred percent. It also strikes me that there is still a tendency for retros to be only at a team level and only a reflection of the most recent period of time. So particularly if a team are doing Scrum or some version of Scrum with sprints, to look back over just the most recent period. I think sometimes the two things—the intent of a retro but also the prime directive of the retro—gets lost.

    In terms of intent, you can run a retro about anything. Think about a post-mortem when you have an incident and everyone gets together to discuss what happened and how we prevent that in the future. I think people forget that you can have a retro and look at your system of work, and even hone in on something like "How are we estimating? Are we doing that well? Do we need to improve how we're doing that?" Take one portion of what you're working on and interrogate it.

    You can run a retro about anything. I think people forget that you can have a retro and look at your system of work, and even hone in on something like "How are we estimating? Are we doing that well? Do we need to improve how we're doing that?" Take one portion of what you're working on and interrogate it.

    Understanding anti-patterns

    Shane Raubenheimer: Absolutely. You just default to "what looks good, what can we change, what did we do, what should we stop or start doing?" That's great and all, but without some kind of trended analysis over a period of time, you might just be resurfacing issues that have been there all along. I think that's where the concept or the lack of understanding of anti-patterns comes in, because you're measuring something that's happened again rather than measuring or quantifying why is it happening at all.

    I think that's the big mistake of retros—it's almost like an iterative band-aid.

    I think that's the big mistake of retros—it's almost like an iterative band-aid.

    Jaclyn Smith: Yeah. Tell me a little bit more about some of the anti-patterns that you have seen or how they come into play.

    Shane Raubenheimer: One of them we've just touched on—I think the buzzword for it is the cargo cult culture for agile. That's just cookie-cutting agile, doing agile because you have to instead of being agile. Literally making things like your stand-up or your review or even planning just becomes "okay, well we've got to do this, so we've ticked the box and we're following through."

    Not understanding the boundaries of what your method is—whether you like playing "wagile" or whether you're waterfall sometimes, agile at other times, and you mistake that variability as your agility. But instead, you don't actually have an identity. You're course-correcting blindly based on what's proportionate to what kind of fire you've got in your way.

    Another big anti-pattern is not understanding the concept of what a team culture means and why it's important to have a team goal or a working agreement for your team. Almost your internal contracting. We do it as employees, right?

    I think a lot of other anti-patterns come in where something's exposed within a team process, and because it's not interrogated or cross-referenced across your broader base of teams, it's not even recognized as a symptom. It is just a static issue. For me, that's a real anti-pattern in a lot of ways—lack of directive around what to do with retrospectives externally as well as internally. That's simply not a thing.

    A lot of other anti-patterns come in where something's exposed within a team process, and because it's not interrogated or cross-referenced across your broader base of teams, it's not even recognized as a symptom. It is just a static issue. For me, that's a real anti-pattern in a lot of ways—lack of directive around what to do with retrospectives externally as well as internally.

    Jaclyn Smith: Yeah, I think that's a good call-out for anyone watching or listening. If you're not familiar with anti-patterns, they're common but ineffective responses to recurring problems. They may seem helpful initially to solve an immediate problem, but they ultimately lead to negative outcomes.

    Shane, what you just spoke about there with retrospectives—an example of that is that the team feel disengaged with retrospectives and they're not getting anything useful out of it, or change isn't resulting from the retrospectives. So the solution is to not hold them as frequently, or to stop doing them, or not do them at different levels or at different times. That's a really good example of an anti-pattern. It does appear to fix the problem, but longer term it causes more problems than it solves.

    Another one that I see is with breaking down work. The idea that spending time together to understand and gain a shared understanding of the work and the outcome that you need takes a lot of time, and breaking down that work and getting aligned on how that work is going to break down on paper can look like quite an investment. But it's also saving time at the other end, reducing risk, reducing duplication and rework to get a better outcome quicker. You shift the time spent—development contracts because you've spent a little bit more time discovering and understanding what you're doing.

    A common anti-pattern that I see there is "we spent way too long looking at this, so we're going to not do discovery in the same way anymore," or "one person's going to look at that and break it down."

    The budget analogy

    Shane Raubenheimer: I always liken it to your budget. The retrospective is always the nice shiny holiday—it's always the first to go.

    I always liken it to your budget. The retrospective is always the nice shiny holiday—it's always the first to go.

    Jaclyn Smith: It's the contractor.

    Shane Raubenheimer: Yeah. It's almost like exposing stuff that everybody allegedly knows to each other is almost seen as counterintuitive because "we're just talking about stuff we all know." It often gets conflated into "okay, we'll just do that in planning." But the reality is the concept of planning and how you amend what you've done in the retrospective—that's a huge anti-pattern because flattening those structures from a ceremonies perspective is what teams tend to do because of your point of "well, we're running out of daylight for doing actual development."

    But it's hitting your head against the wall repeatedly and hoping for a different outcome without actually implying a different outcome. Use a different wall even. I think it's because people are so disillusioned with retrospectives. I firmly believe it's not an internal issue. I believe if the voices are being heard at a budgeting level or at a management level, it will change the whole concept of the retrospective.

    Solution 1: Getting leadership buy-in

    Jaclyn Smith: I like it, and that's a good thread to move on to. So what do we do about it? How do we help change this? What are some of the practical tips that people can deploy?

    Shane Raubenheimer: A big practical tip—and this is going to sound like an obvious one—is actual and sincere buy-in. What I mean by that is, as a shareholder, if I am basing your performance and your effectiveness on the quality and output of the work that you're promising me, then I should be taking the issues that you're having that are repeating more seriously.

    Because if you're course-correcting for five, six, or seven sprints and you're still not getting this increasing, predictable velocity, and if it's not your team size or your attitude, it's got to be something else. I often relate that to it being environmental.

    Buying into the outputs for change the same way as you would into keeping everyone honest, managing budgets, and chasing deadlines—it should all be part of the same thing. They should all be sitting at the VIP table, and I think that's a big one.

    Buying into the outputs for change the same way as you would into keeping everyone honest, managing budgets, and chasing deadlines—it should all be part of the same thing. They should all be sitting at the VIP table.

    Solution 2: Making patterns visible

    Jaclyn Smith: I think so too. Something that occurs to me, and it goes back to what we were talking about right at the beginning, is sometimes identifying that there's a pattern there and that the same thing keeps coming up isn't actually visible, and that's part of the problem, right?

    I know some things we've been doing in Easy Agile TeamRhythm around that recently, attempting to help teams with this. We've recently started surfacing all incomplete action items in retrospectives so people can see that big long list. Because they can convert their action items to Jira items or work items, they can also see where they've just been sitting and languishing in the backlog forever and a day and never been planned for anything to be done about them.

    We've recently started surfacing all incomplete action items in retrospectives so people can see that big long list. Because they can convert their action items to Jira items or work items, they can also see where they've just been sitting and languishing in the backlog forever and a day and never been planned for anything to be done about them.

    We've added a few features to sort and that kind of thing. Coming in the future—and we've been asked about this a lot—is "what about themes? What about things that are bubbling up?" So that's definitely on our radar that will be helpful.

    I think that understanding that something has been raised—a problem getting support from another team, or with a broken tool or an outdated tool that needs to be replaced in the dev tooling or something like that—if that's been popping up time and time again and you don't know about it, then even as the leader of that team, you don't have the ammunition to then say "Look, this is how much it's slowed us down."

    I think we live in such a data world now. If those actions are also where the evidence is that this is what needs to change and this is where the barriers are...

    Solution 3: The power of trend analysis

    Shane Raubenheimer: Certainly. I agree. Touching on the trend analytics approach—we do trend analysis on everything except what isn't happening or what is actually going wrong, because we just track the fallout of said lack of application. We don't actually trend or theme, to your point.

    We do trend analysis on everything except what isn't happening or what is actually going wrong, because we just track the fallout of said lack of application.

    We theme everything when we plan, yet somehow we don't categorize performance issues as an example. If everybody's having a performance issue, that's the theme. We almost need to categorize or expose themes that are outward-facing, not just inward-facing. Because it's well and good saying "well, our automated testing system doesn't work"—what does that mean? Why doesn't it work?

    I think it should inspire external investigation. When you do a master data cleanup, you don't just say "well, most of it looks good, let's just put it all in the new space." You literally interrogate it at its most definitive and lowest level. So why not do the same with theming and trending environmental issues that you could actually investigate, and that could become a new initiative that would be driven by a new team that didn't even know it was a thing?

    Jaclyn Smith: Yeah, and you're also gathering data at that point to evidence the problem rather than "oh, it's a pain point that keeps coming up." It is, but it gives you the opportunity to quantify that pain point a little bit as well. I think that is sometimes really hard to do when you're talking about developer experience or team member experience. Even outside of product engineering teams, there are things in the employee experience that affect the ability for that delivery—whatever you're delivering—to run smoothly. You want to make that as slick as possible, and that's how you get the faster outcomes.

    Solution 4: The human factor

    Shane Raubenheimer: Absolutely. You can never underestimate the human factor as well. If everything I'm doing and every member of my team is doing is to the best of not just their capability, but to the best of the ability in what they have available to them, you become jaded, you become frustrated. Because if you're hitting your head against the same issue regardless of how often you're pivoting, that can be very disillusioning, especially if it's not been taken as seriously as your work output.

    If everything I'm doing and every member of my team is doing is to the best of not just their capability, but to the best of the ability in what they have available to them, you become jaded, you become frustrated.

    We run a week late for a customer delivery or a customer project, and we start complaining about things like money, budget overspend, over-utilization. But identifying systematic or environmental issues that you can actually quantify should be treated in exactly the same way. I feel very strongly about this.

    Solution 5: Breaking down overwhelming action items

    Jaclyn Smith: We tend to nerd out about this stuff, Shane, and you're in good company. You've also reminded me—we've put together a bit of a workshop to help teams and people understand how to get the most out of their retrospectives, not just in terms of making them engaging, but fundamentally how to leverage actions to make them meaningful and impactful.

    We've spoken a lot about the incremental change that is the critical factor when it is something that's within the team's control or closely to the team's control. That's how you get that expansion of impact—the slow incremental change. We've talked about sometimes those action items seem overwhelming and too big. What's your advice if that's the scenario for a team? What do you see happen and what can they do?

    Shane Raubenheimer: I would suggest following the mantra of "if a story is too big, you don't understand enough about it yet, or it's not broken down far enough." Incremental change should be treated in exactly the same way. The "eat the elephant one bite at a time" analogy. If it's insurmountable, identify a portion of it that will make it a degree less insurmountable next time, and so on and so forth.

    If we're iterating work delivery, problem-solving should be done in rapid iteration as well. That's my view.

    Jaclyn Smith: I like it.

    The "eat the elephant one bite at a time" analogy. If it's insurmountable, identify a portion of it that will make it a degree less insurmountable next time, and so on and so forth. If we're iterating work delivery, problem-solving should be done in rapid iteration as well.

    Wrapping up: What's next?

    Jaclyn Smith: I think we're almost wrapping up in terms of time. What can people expect from us if they join our webinar on July 10th, I believe it is, where we dive and nerd out even more about this topic, Shane?

    Shane Raubenheimer: I think the benefit of the webinar is going to be a practical showing of what we're waxing lyrical about. It's easy to speak and evangelize, but I think from the webinar we'll show turning our concepts into actual actions that you can eyeball and see the results of.

    With our approach that we took to our workshop, I think people will very quickly get the feeling of "this is dealing with cause and effect in a cause and effect way." So practical—to put that in one sentence, an active showing or demonstration of how to quantify and actually do what we've been waxing lyrical about.

    the benefit of the webinar is going to be a practical showing of what we're waxing lyrical about. It's easy to speak and evangelize, but I think from the webinar we'll show turning our concepts into actual actions that you can eyeball and see the results of.

    Jaclyn Smith: Excellent. That was a lovely summation, Shane. If anyone is interested in joining, we urge you to do so. You can hear us talking more about that but get some practical help as well. There is a link to the registration page in the description below.

    I think that's about all we have time for today. But Shane, as always, it's been amazing and lovely to chat to you and hear your thoughts on a pocket of the agile world and helping teams.

    Shane Raubenheimer: Yeah, it's always great engaging with you. I always enjoy our times together, and it's been my pleasure. I live for this kind of thing.

    Jaclyn Smith: It's wonderful! Excellent. Well, I will see you on the 10th, and hopefully we'll see everyone else as well.

    Shane Raubenheimer: Perfect. Yeah, looking forward to it.

    Jaclyn Smith: Thanks.

    Ready to end the frustration of ineffective retrospectives?

    Join Jaclyn Smith and Shane Raubenheimer on July 10th for a live, hands-on webinar designed to turn your retrospectives into powerful engines for continuous improvement.

    In this highly interactive session, you will:

    • Uncover why retrospectives get stuck in repetitive cycles
    • Learn how to clearly capture and assign actionable insights
    • Identify and avoid common retrospective pitfalls and anti-patterns
    • Get hands-on experience with Easy Agile TeamRhythm to streamline retrospective actions

    Walk away equipped with practical tools, techniques, and clear next steps to immediately enhance your retrospectives and drive meaningful team improvements.

    👉 Register now and transform your retrospectives.