Software­ent­wick­lung im Scaled Agile Framework SAFe

Im Interview Heiko Lokau, Lead Scrum Master und Sven Kühnel, Release Train Engineer bei SimCorp

Post für MINT-Studierende am 15. Februar 2020

Im Gespräch sind Sven Kühnel, Release Train Engineer & Director Delivery DE und Heiko Lokau, Lead Scrum Master, Alternative Investments Development DE bei SimCorp Central Europe in Bad Homburg. Das Interview führte Kevin Anding von CONNECTINGSCIENCE.

Was ist SAFe und warum braucht man SAFe in der Softwareentwicklung?

Sven Kühnel (SK): Die Grundlage für das Scaled Agile Framework, kurz SAFe ist das Agile Manifest (https://agilemanifesto.org/iso/­de/manifesto.html). Hier werden Werte und Verhaltensvorschläge dargelegt, wie man Software entwickeln sollte. Scrum ist eine Teamsicht auf diesen Vorschlag, d.h. wie kann ein Team die agilen Werte konkret implementieren. Unternehmen wie Amazon oder Netflix bestehen bspw. aus mehr als einem Team. Wenn diese agil zusammenarbeiten wollen, braucht es ein System, um Scrum auf eine große Organisation zu skalieren. SAFe ist eine Art dieser sogenannten Skalierungsframeworks, das hilft, Scrum in einer Organisation mit mehreren Scrum Teams umzusetzen.

Sven Kühnel, Release Train Engineer & Director Delivery DE und Heiko Lokau, Lead Scrum Master, Alternative Investments Development DE bei SimCorp Central Europe in Bad Homburg

Heiko Lokau (HL): SAFe ist eine umfangreiche Sammlung von best practices, die im Markt implementiert wurden und die funktionieren. SAFe bietet darüber hinaus viele Freiheitsgrade und hilft Unternehmen, eine eigene agile Lösung umzusetzen. Das Framework ist eine Art Vorschlag, um Scrum auf Teamebene zu skalieren. Es bricht die Prinzipien von Scrum außerdem auf weitere Level im Unternehmen hoch, wenn es bspw. um Themen geht wie Product Management, System Architektur oder das Entwickeln von Product Releases.

Gibt es in SAFe mehr Scrum Master oder Product Owner? Wo liegt der Unterschied genau?

SK: In SAFe sind Teams in einzelne Züge eingeteilt, d.h. in einem Zug sind sechs Teams, mit sechs Scrum Mastern. Diese sechs Scrum Master bilden wiederum ein eigenes Team als Scrum Master Team. Dieses Team wird vom sogenannten RTE, dem Release Train Engineer geführt und weiterentwickelt. Diese Aufgabe kann man sich als Scrum Master für die Scrum Master vorstellen. Ähnlich ist es im Bereich der Product Owner. Auch hier werden die Product Owner verschiedener Teams durch einen übergeordneten Product Manager gecoached bzw. in ihrer Arbeit weiterentwickelt.

Wie ist es, als Entwickler bei SimCorp zu arbeiten und was bedeuten vier Releases pro Jahr für die Arbeit als Entwickler?

SK: In SAFe ist die Struktur so angelegt, dass unsere Program Increments (PI) an den Release Zyklus angepasst sind. Wenn wir einen PI beendet haben, sprich eine Iteration von 5 Sprints, schließen wir eine Version ab und machen sie fertig für den Release. Es ist deshalb wichtig, dass wir unsere acht Agile Release Trains alle in einem gleichmäßigen Herzschlag halten. Nur so können wir am Ende eines PIs ein Inkrement entwickeln, dass in den Markt bzw. an den Kunden releast werden kann.

HL: Für uns Entwickler ist es so, dass wir ein Program Increment in fünf zweiwöchige Sprints geteilt haben. So entsteht in diesen Sprintzyklen zwar relativ viel Druck, um das abzuarbeiten, wozu man sich committet hat. Dabei arbeiten die Teams aber selbstbestimmt. Jedes Team legt selbst fest, zu wie vielen Aufgaben es sich committet. Es kann dabei schon vorkommen, dass unerwartet Aufgaben hinzukommen, wenn bspw. Softwarefehler beim Kunden in anderen Teilen des Systems entstehen. In diesem Fall versucht das Team aber, den entstehenden Druck im Team zu kompensieren. Außerdem lernt man aus der Vergangenheit, nur so viele Aufgaben zu pullen, wie man aus der eigenen Erfahrung heraus schaffen kann.

Was ist die Herausforderung bei der Arbeit als Entwickler?

HL: Die Herausforderung bei der Arbeit als Entwickler, ist tatsächlich im Team zu arbeiten. Als Entwickler muss man bereit sein, sich ins Team zu integrieren, denn Entwickler, Tester und PO sitzen bspw. täglich zusammen. Auf diese Weise gibt es ständiges Feedback für die Arbeit.
Die Leute arbeiten als echte Teams. Das Daily ist dann nur noch da, um sich auf den Plan für die nächsten 24h zu einigen, also die Fragen zu beantworten: Was haben wir gestern gemacht? Was haben wir daraus gelernt? Und was müssen wir heute machen, damit es weitergeht?

SK: Hier bei SimCorp durchlaufen wir mit jedem Mitarbeiter, der als Entwickler, Scrum Master oder Product Owner anfängt, sogenannte Onboarding-Workshops. In diesen erklären wir, was hinter Agile und Scrum steckt und warum wir das eigentlich machen. Aber Scrum nur zu erklären genügt nicht. Man muss es letztlich ausprobieren und selbst erfahren.

Welche Rolle spielen Hygienefaktoren, wie Vertrauen und Sicherheit bei SimCorp?

HL: Vertrauen und Sicherheit sind das A und O in jedem Team. Daran muss das Team auch wachsen und permanent arbeiten. Jedes Team kann alle zwei Wochen in den Sprint Retros reflektieren, was in den letzten Wochen gut war und was sich ändern muss, damit das Team besser läuft und jeder zufrieden ist. Dafür braucht man Vertrauen.
Ganz wichtig ist deshalb, dass bei dieser Sprint Retro kein Manager dabei ist. So kann offen gesagt werden, wenn jemand Hilfe braucht. Und das Team lernt, wie der Prozess besser gestaltet werden kann.

SK: Wichtig ist dabei auch, dass SimCorp ein dänisches Unternehmen ist und damit gleich eine offene Unternehmenskultur geerbt hat. Bei uns herrscht das Du bis hoch zum Management. Wir sind diese Kultur einfach gewohnt.

Wie entwickeln sich Teams außerhalb von SAFe weiter? Gibt es Meetings oder ein anderes System, wo man seine Vorschläge abgeben kann?

SK: Um Unternehmensprozesse besser zu machen, bietet SAFe die Funktion des Communities of Practice (COP). Die sogenannten COPs gibt es bei uns in vielen Bereichen. Hier setzen sich Kollegen zu Themen wie agile Coaching zusammen und überlegen, wie die Themen Agile oder Scrum im Unternehmen weiterentwickelt werden können. Ähnliche Communities gibt es auch im Produktbereich.

Welche technologischen Fähigkeiten sollte jemand mitbringen, der sich für SimCorp interessiert?

SK: Das Wichtigste ist gutes analytisches Denken, d.h. man muss in der Lage sein, komplexe Probleme auf einfache Probleme herunterzubrechen. Welche Programmiersprache man dann am Ende beherrscht, ist eigentlich nicht so dramatisch. Wer bereits eine Sprache kann, kommt unserer Meinung nach auch schnell in andere Sprachen rein.

Was genau bedeuten gute analytische Fähigkeiten im Alltag?

HL: Bei der Arbeit als Entwickler oder Tester geht es darum, Business Anforderungen in Programmiersprache zu übersetzen. Dazu braucht man algorithmisches Denken, d.h. die Fähigkeit ein Problem zu erfassen und dieses Problem in eine Lösung zu übersetzen. Wenn ein Kunde bspw. eine Lösung benötigt, mit der er Daten jeden Tag an sein Management melden kann, muss das Team aus dieser Anforderung eine Lösung bauen können, sprich das Problem in Programmiersprache übersetzen können. Analyse ist in diesem Sinne nur ein Teil, denn ebenso wichtig ist Kreativität. Analytisches Denken bedeutet also ganz konkret, ein Problem erfassen zu können und von diesem Problem ausgehend, eine Lösung zu entwickeln.

Welche Karrieremöglichkeiten bietet mir SimCorp, wenn ich als Entwickler einsteige?

SK: Karrierepfade sind bei SimCorp nicht linear. Nach ein paar Jahren als Scrum Master kann man sich bspw. entscheiden, ob man mehr Menschen führen möchten. Diese Aufgabe erfüllt der Development Manager. Sucht man eher die Herausforderung in der Weiterentwicklung der Prozess-Schiene, kann man den Karriereschritt zum Release Train Engineer (RTE) gehen. Karriere bedeutet bei SimCorp nicht zwangsläufig vom Scrum Master zum RTE und dann zum Agile Coach.

Im August 2016 wurde SAFe bei SimCorp eingeführt. Was sind die Herausforderungen gewesen und was war dabei besonders wichtig?

SK: Besonders wichtig war und ist es, alle Personen mitzunehmen. Auch nach drei Jahren ist dieser Prozess noch nicht abgeschlossen. Man muss permanent hinterfragen, ob alle Personen mit der Transformation gut umgehen können. Denn bei SimCorp arbeitet nicht nur die Entwicklung agil, sondern auch die komplette Managementebene wurde in diese Release-Train Logik von SAFe überführt.

Ist es etwas Ungewöhnliches in der Branche, dass agile Unternehmenskultur so gelebt wird?

HL: Mittlerweile ist SimCorp beim Thema Agilität keine Ausnahme mehr. Auch Unternehmen wie KfW, Deutsche Bank, Daimler und Porsche nutzen agile Methoden und Scrum Teams. Es ist heute eher noch eine Minderheit, die im alten Wasserfallsystem arbeitet.

Ist es für den Jobeinstieg wichtig, Scrum Erfahrung zu haben oder sogar schon einmal ein Praktikum im agilen Bereich gemacht zu haben?

SK: Es ist sicherlich von Vorteil, wobei SimCorp explizit Teamworker sucht. Wir wollen keine Solo-Performer. Wenn man sich mit dem Thema Scrum auseinandergesetzt hat und dann feststellt, dass man diese Arbeit mag, ist das sicherlich ein Vorteil für die Karriere. Denn in der heutigen Zeit kann keiner mehr alleine die Lösung für hochkomplexe Probleme finden. Menschen müssen zusammenarbeiten und gemeinsam eine Lösung finden.