In unserer Interviewserie “Get to know TechTalk” stellen wir TechTalk Mitarbeitende vor. Heute unterhalten wir uns mit Agile Test Engineer Philip Rockenbauer, der seit Februar 2018 Teil des Teams ist. Wie er seine Projekte meistert oder welche Technologien und Werkzeuge dabei zum Einsatz kommen, erfährst du in diesem Interview.
Was ist dein aktuelles Aufgabengebiet in der TechTalk?
Ich arbeite in einem Team aufgeteilt auf Product Owner, Developer und Test Engineers. Wir sind für verschiedene Projekte mit unterschiedlichen Kunden zuständig. Je nach Größe dauern manche Projekte nur wenige Monate, manche laufen aufgrund der Wartung auch mehrere Jahre. Gemeinsam mit einer Kollegin bin ich für das Testing im Team verantwortlich. Das beinhaltet hauptsächlich das Abschließen von manuellen Tests sowie die Unterstützung der Developer bei der Testautomatisierung. Zudem organisiere ich unter anderem TechTalk-interne Testing Veranstaltungen.
Was fasziniert Dich am Testing?
Am meisten Spaß am Testen macht mir das Erforschen einer Anwendung. Manchmal hat man das Gefühl, ein Puzzle lösen zu müssen. Man sucht Probleme sowie deren Zusammenhänge und versucht, diese mit seiner Erfahrung sowie Kreativität zu lösen. Spannend finde ich vor allem auch, dass nicht alles vorgegeben ist und man sehr selbständig arbeitet.
Was macht für dich einen guten Tester aus?
Man sollte aufgeschlossen für Neues sein und Spaß am Entdecken einer Anwendung haben. Das Mindset sollte nicht „make-it-work“ sondern „break-it“ lauten. Ein guter Tester analysiert Probleme, geht diesen auf den Grund und nimmt nichts als gegeben hin. Außerdem ist es wichtig, Selbstdisziplin mitzubringen. Das heißt, man forscht intensiv nach, hinterfragt vieles und deckt nicht nur den Happy Path ab. Der Happy Path ist das einfachste Szenario, bei dem die Anwendung funktioniert und wäre nur das Minimum. Es gibt jedoch auch Spezialfälle und das Kreative an der Position des Test Engineers ist es, sich diese einfallen zu lassen. Außerdem ist es wichtig, im Team gut zusammenzuarbeiten, dabei ist viel Fingerspitzengefühl gefragt wenn es um Feedback zu Fehlern in der Anwendung geht.
Wie arbeitest du im Team?
Generell arbeiten wir in unserem Team agil, dabei kommen je nach Projekt entweder Scrum oder Kanban zum Einsatz. Als Tester ist man in konstantem Austausch mit Product Ownern sowie Developern. Akzeptanzkriterien werden abgeklärt und sobald etwas gefunden wird, wie zum Beispiel ein Fehler in der Anwendung, wird in Absprache mit dem Product Owner entschieden, ob dieser behoben werden muss oder nicht. Manchmal verhält sich das System nur anders als erwartet und es ist unklar, ob wirklich ein Fehler vorliegt. Mit den Devs werden die Findings besprochen und dann Bugreports erstellt.
Mit welchen Testarten und -verfahren arbeitest du?
Bevor der Entwicklungsprozess beginnt, schaue ich gemeinsam mit dem Product Owner die Kundenanforderungen durch und prüfe, ob diese Sinn machen, wie wir sie testen würden und ob weitere Informationen benötigt werden. Als Tester brauche ich konkrete Spezifikationen, damit nachher keine Fragen auftauchen. Im Idealfall definiere ich Testszenarien in Form von Gherkins. Diese werden dann als Basis für die Entwicklung der automatisierten Tests verwendet. Manuelles Testen mache ich häufig explorativ. Generell führe ich unter anderem oft auch Regressions- sowie Smoke Tests durch.
Welche Technologien und Werkzeuge kommen in deinem Projektalltag zum Einsatz?
Wir arbeiten täglich mit Azure DevOps und verwenden es als Tool für Taskboards, um Fortschritte festzuhalten und als Build Pipeline, von der wir auf unsere Testumgebung deployen. Auch Pull Requests werden darüber ausgeführt. Außerdem nutzen wir Git Repository für unsere Projekte. Ich verwende das unter anderem auch, wenn ich etwas lokal deployen muss oder um Commitments zu überprüfen. Zudem kommt SSMS zum Einsatz, um etwa SQL Statements in Datenbanken zu kontrollieren bzw. zu verändern. Wenn ich Schnittstellen teste, verwende ich SoapUI und Postman. Für die automatisierten Tests nutzen wir SpecFlow.
Wie hältst du dich selbst am Laufenden und wie tauschen sich Software Tester untereinander aus? Wie fördert die TechTalk den Wissensaustausch?
Ich selbst halte mich unter anderem durch die von TechTalk organisierten Trainings am Laufenden. Da jeder Mitarbeitende ein individuelles Weiterbildungsbudget hat, besuche ich diese je nach Interesse. Außerdem hat die TechTalk eine Lizenz für das Testing Hub „Ministry of Testing“, da höre ich mir immer wieder Vorträge an. Zusätzlich haben wir in der TechTalk einen monatlichen Austausch, bei dem sich Testerinnen und Tester, aber auch alle, die Interesse am Testing haben, zusammensetzen. Da besprechen und diskutieren wir diverse Erfahrungen und lernen projektübergreifend voneinander. Außerdem tragen unterschiedliche Formate wie Pizza Talks, TechDiscuss oder Tech & Talk Sessions zum Wissensaustausch bei.
Warum passt die TechTalk so gut zu dir und was sind deine persönlichen Highlights?
Eines der Highlights und auch einer der Punkte, die ich an der TechTalk sehr schätze, ist die wirklich gute Zusammenarbeit aller Mitarbeitenden. Dies betrifft nicht nur das Projektteam, sondern generell den zwischenmenschlichen Umgang aller TechTalker miteinander. Zudem war ich sehr positiv überrascht von der großen Wertschätzung, die man ab Tag 1 spürt. Man kann wirklich von einem kollaborativen agilen Team sprechen, in dem jeder gefordert ist.
Man bekommt außerdem ein gutes Maß an Verantwortung. Das zeigte sich bereits, als ich mein Praktikum machte. Ich war als einziger Tester im Projektteam, hatte jedoch jederzeit einen Coach sowie Buddy an meiner Seite. Beim Start bekommt man zusätzlich einen Mentor zur Verfügung gestellt. So kann man die Arbeitsweise der TechTalk kennenlernen und hat von Anfang an eine Person, die einem jederzeit weiterhilft. Zudem wird die Weiterentwicklung stark gefördert. Von Anfang an schaut man nicht einfach zu, sondern bringt sich aktiv ein. Ein weiterer wichtiger Punkt für mich ist das bereits angesprochene Weiterbildungsbudget. Dadurch hat man die Möglichkeit, je nach Interesse Konferenzen, Trainings oder Workshops zu besuchen.