Agiles Mindset – aber bitte nur zu 100%

Es überrascht mich immer wieder wie viele Hardliner der agilen Welt darauf pochen, zu 100% und damit bedingungslos alle Aspekte des agilen Manifests bzw.  der jeweiligen Methodik umzusetzen. Meist quittiert mit dem Urteil:

„Sonst bist du nicht agil!“ oder „Andernfalls funktioniert Agile nicht!“

Irgendwie stellen sich mir dann die Nackenhaare. Warum? Weil Hardlinertum meiner Ansicht nach kontraproduktiv für agile Denkweisen ist. Denn es werden zwei wichtige Aspekte außer Acht gelassen: Die Sichtweise und die Reife des Teams!

Agiles Mindset vs. Dogmen

Im agilen Manifest werden meiner Ansicht nach Werte und Prinzipien beschrieben, die notwendig sind, um auf Veränderung mutig und selbstbewusst reagieren und gemeinsam im Team Großes leisten zu können. Passend dazu die ersten Worte im Agilen Manifest.

Individuals and interactions over processes and tools

Und dennoch wird von einigen schon fast dogmatisch das Gegenteil  gefordert. 100 %ige Umsetzung aller Regeln und Prinzipien! Klingt das nicht nach einem Dogma und damit nach einem Verstoß gegen dieses schön formulierte Prinzip? Ich finde schon!

Gestaltungsfreiräume und Lernkultur fordern und fördern

Um mit Veränderung klarzukommen ist es nötig, dass das Team eigene Strukturen und die Strukturen in ihrem Umfeld so mitgestalten kann, dass der gemeinsame Leistungs- und Lernwille sowie die Motivation auf einem hohen Niveau gehalten und damit die gemeinsame Mission als Teamaufgabe in den Vordergrund gestellt werden kann. Doch das ist alles andere als einfach.

Das Team muss zunächst lernen, dass man sehr wohl mit Veränderungen & Unsicherheiten gut leben kann, wenn man die Voraussetzungen dafür schafft. Diese können beispielsweise durch regelmäßige, kleine Veränderungen wie bspw. ein Rollentausch oder Übernahme neuer Aufgaben geübt und damit die notwendige Routine im Umgang mit Veränderung geschaffen  werden.

Es ist nicht leicht Veränderungen & Unsicherheiten zu akzeptieren

Die meisten von uns wachsen in fest vorgegebenen Strukturen auf. Grundschule, weiterführende Schule, Ausbildung & Studium. Innerhalb dieser vordefinierten Pfade gibt es Lehrpläne und Curricula, die wiederum genau vorgeben, was der/die Lernende zu lernen, welche Prüfungen er oder sie zu absolvieren und welche Jobaussichten er/sie schließlich zu erwarten hat. Das ist auch nicht zwingend schlecht! Denn diese Strukturen schaffen Sicherheit und damit Vertrauen in unserer komplexen Welt.

Doch kaum ist der Abschluss in der Tasche und der erste Job beginnt, fällt das ganze Kartenhäuschen in sich zusammen. Plötzlich ist Selbstorganisation & Verantwortung gefordert und Veränderungen sollen einen nicht mehr aus der Bahn werfen. Irgendwie verständlich, dass man sich da erst einmal schwer tut, oder?

Was brauchen wir denn eigentlich?

Wir brauchen keine Dogmen sondern ein lernfreundliches, auf Veränderungen und Kollegialität ausgelegtes Umfeld, das gemeinsame Erfahrungen, Erfolge, Misserfolge und – man traut es sich ja kaum auszusprechen- auch organisatorische Führung in Einklang bringt.

Insofern also ein Agiles Mindset … aber zu 100%!

Ich freue mich über Kommentare & Anregungen!

Nix mit grüne Wiese! Berufseinstieg als Softwareentwickler meistern

Als Teamleiter erlebe ich häufig, wie sich selbst ausgezeichnete Studenten  der Wirtschafts- und Angewandten Informatik beim Berufseinstieg als Java Softwareentwickler schwer tun.  Warum der Einstieg so schwer fällt, hängt vermutlich damit zusammen, dass die Notwendigkeit durch viele Klassen und Projekte zu navigieren und damit die Fähigkeit Software effektiv zu analysieren im Studium oft nachrangige Behandlung findet.

„Nix mit grüne Wiese! Berufseinstieg als Softwareentwickler meistern“ weiterlesen

Refactoring? – Papperlapapp! Es läuft doch!

Das folgende Szenario erleben Softwareentwickler insbesondere zu Beginn ihrer Karriere häufig. Vielleicht hilft dir diese Geschichte, den Wert von Refactoring, TDD und Clean Code besser einschätzen zu können.

Eine vielleicht nicht ganz unbekannte Geschichte

Endlich geschafft! Du hast dich tagelang gequält und nun funktioniert endlich das Modul, das schon seit langem fertiggestellt sein sollte. Durch Versuch und Irrtum hast du viele Varianten durchgespielt. „Keine Zeit mehr für Aufräumarbeiten“ denkst du dir, checkst den Code ein und lieferst das Modul aus.

Die neue Klasse hat zwar 1000 Zeilen, ist zuständig für den Aufbau der Datenbankverbindung und weitere 100 Dinge aber was soll’s? Es läuft und Änderungen an diesem Modul sind sowieso unwahrscheinlich!

„Refactoring? – Papperlapapp! Es läuft doch!“ weiterlesen

Statische Methoden testen – Es müssen ja nicht Mocks sein!

Statische Methoden testen ist nicht so schwer wie man denkt! Liest man jedoch Artikel oder betrachtet man Videos zu statischen Methoden und JUnit, werden meist Mocking Frameworks als Lösung diskutiert. Beispielsweise wenn man die Diskussion bei stackoverflow.com verfolgt.

„Statische Methoden testen – Es müssen ja nicht Mocks sein!“ weiterlesen

So machst du Karriere als Java Softwareentwickler

Karriere als Java Softwareentwickler

erstellt von Licht Jäger@Flickr, unbearbeitet; Lizenz CC BY-SA 2.0

Angebot und Nachfrage bestimmen den Preis / den Wert eines Produkts oder einer Dienstleistung in einem Markt (vgl. Marktgleichgewicht). Für deine Karriere als Java Softwareentwickler bedeutet das, dass dein Wert auf diesem Markt steigt, wenn du die geforderten Skills (engl. für Fähigkeiten) aufweisen kannst und das Angebot (die Anzahl Mitbewerber mit vergleichbaren Skills) gering ist. Eine Einschätzung, welche Skills aktuell gefragt sind, bekommst du von mir in diesem Artikel.

„So machst du Karriere als Java Softwareentwickler“ weiterlesen