In unserer Interviewserie “Get to know TechTalk” stellen wir TechTalk Mitarbeitende vor. Diesmal verrät uns Senior Developer und Tech Lead Michael Altmann, der bereits seit 2013 bei TechTalk tätig ist, mit welchen Methoden er arbeitet, was die Rolle eines Tech Leads ausmacht und welche Herausforderungen es im Entwicklungsprozess gibt.
Was ist dein aktuelles Aufgabengebiet bei TechTalk?
An vier Tagen pro Woche arbeite ich als Tech Lead eines 7-köpfigen Developer Teams für einen Kunden aus dem öffentlichen Bereich. Freitags bin ich meist im TechTalk Büro. Dabei unterstütze ich unter anderem Teams und Developer innerhalb der TechTalk bei der Umsetzung von Projekten, führe Bewerbungsgespräche und trage durch die Organisation sowie Moderation von internen Formaten wie z.B. dem TechDiscuss zum Wissensaustausch bei.
Was macht die Rolle des Tech Leads aus und was gefällt dir besonders daran?
Ich finde die Rolle des Tech Leads sehr spannend und vor allem abwechslungsreich. Gemeinsam mit dem selbstorgansierten Team werden technische Lösungen entworfen und umgesetzt. In Zusammenarbeit mit Product Ownern sowie UX Designern bei der Anforderungserhebung ist man mit dem technischen Input auch am Produktdesign beteiligt. Die Rolle erfordert aber auch Leadership-Fähigkeiten. Die Skills jedes Teammitglieds müssen erkannt und Dynamiken im Team beobachtet werden. Nichtsdestotrotz muss auch Zeit zum Programmieren bleiben, damit die Beziehung zum Code nicht verloren geht.
Mit welchen Methoden löst du Herausforderungen im Entwicklungsprozess?
Als Tech Lead löse ich Herausforderungen an mehreren Fronten. Je nach Problem, Ziel und Team setze ich entweder eine spezifische oder eine Kombination aus mehreren Methoden ein, wobei ich darauf achte, dass mich die Methode im Daily-Doing unterstützt und nicht einschränkt. Dabei kommen immer agile Vorgehensweisen zum Einsatz, meistens Scrum, manchmal auch Kanban.
Darüber hinaus nutze ich bei komplexeren Domänen das Konzept des Domain Driven Designs. Das Ziel ist ein vereinfachtes Modell der Domäne, die das gesamte Team versteht, im Code abzubilden. Domain Driven Design lässt sich sehr gut mit Behavior Driven Development kombinieren, da beide eine gemeinsame Sprache zwischen Entwicklungsteam und Stakeholder als Ziel haben. Impact Mapping und Story Mapping sind ebenfalls Methoden, die ich regelmäßig verwende. Darüber hinaus ist Continuous Integration/Continuous Delivery wichtig, um in kurzen Zeitabständen das System in Betrieb zu setzen und Business Value liefern zu können. Wir experimentieren aber auch gerne mal und probieren unterschiedliche Methoden wie Event oder Story Storming aus.
In welchen Projekten hast du bei TechTalk bereits gearbeitet?
Zu Beginn meiner Karriere habe ich vor allem in In-House sowie Wartungsprojekten gearbeitet. Das waren eher kleine Teams, in denen ich meist mehrere Rollen übernommen habe, zum Beispiel die des Entwicklers und auch die des Product Owners. Besonders spannend war, in die verschiedenen Positionen hineinschnuppern zu können. Hierfür bin ich TechTalk sehr dankbar, dass so viel Vertrauen in mich gesetzt wurde. Mittlerweile bin ich hauptsächlich für Kundenprojekte zuständig. Beim aktuellen Kunden haben wir ein Scrum-of-Scrum Setup, welches aus 7 “cross functional teams” besteht.
Wie sieht dein Arbeitsumfeld aus?
Unabhängig vom Projekt ist es generell so, dass die TechTalk eine flache Hierarchie hat. Für mich bedeutet das, dass ich mich aktiv einbringen kann und so der Wissensaustausch unter Devs, UX Designern und Testern gefördert wird. Was ich zudem sehr schätze sind die netten Kolleginnen und Kollegen, von denen man sehr viel lernen kann. Ich bin bereits fast sieben Jahre bei TechTalk, dabei sind schon einige gute Freundschaften entstanden.
Wie kann man sich den Wissensaustausch unter EntwicklerInnen bei TechTalk vorstellen? Wie teilt ihr euer Wissen?
Zum einen gibt es den Austausch intern im Projektteam. Damit jedoch keine Wissenssilos entstehen, wurden bei TechTalk einige Formate etabliert, die dazu beitragen, den Austausch über Teamgrenzen hinweg zu fördern. In diesen Sessions werden unterschiedliche Themen diskutiert – von „Code Kommentare“ bis zu „Aufgaben des Tech Leads“ ist alles dabei. Aber auch Coding Dojos und Projektvorstellungen werden regelmäßig abgehalten. Dabei stehen immer die Diskussion sowie der Austausch im Vordergrund. Durch die verschiedenen Formate werden regelmäßig Entwickler-News, Updates oder Buchempfehlungen geteilt. Eine meiner Empfehlungen ist das Buch „Unit Testing Principles Practices Patterns“ von Vladimir Khorikiv.
Wie unterstützt dich TechTalk, damit du dich Themen abseits deiner Kundenprojekte widmen kannst?
In dem Rahmenbedingungen geschaffen werden, um Ideen zu diskutieren und diese auch umsetzen zu können. Das fördert den Mut, Experimente zu machen. Generell ist man nicht zu 100% seiner Arbeitszeit in Projekten verplant. Zudem gibt es sogenannte Circles, Interessensgruppen, welche dazu motivieren, sich der Themen abseits des Arbeitsalltags anzunehmen und voranzutreiben. Hier kann man unabhängig einer Rolle beitreten und mitwirken.
Welche Konferenzen und Meetups würdest du Devs ans Herzen legen – auch in Zeiten von Corona?
Ich wähle Konferenzen und Meetups, die ich besuche, je nach persönlicher sowie beruflicher Weiterentwicklung und Interesse aus. Derzeit ist das Domain Driven Design, weil es mir eine Sammlung von Methoden bietet, mit denen ich gute Erfahrungen gemacht habe. Erst vor kurzem habe ich am remote DDD Meetup in London teilgenommen. Zum Schluss ein kleiner Tipp: Jetzt in Zeiten von Corona bieten die meisten Meetups Videoübertragungen an – wieso also nicht mal ein Meetup in New York, Oslo oder Sydney besuchen?
Auch die TechTalk organisiert regelmäßig Trainings und Workshops mit international hochkarätigen Speakern. Wirf einen Blick auf unser Trainingsangebot oder kontaktiere uns gerne direkt.