Hallo
mein Name ist Torsten Mangner. Ich bin Softwareentwickler und Qualitätsexperte.
Ich bin sehr daran interessiert, Sie und ihr Projekt kennenzulernen und gegebenenfalls zu unterstützen. Wenn Sie ebenfalls Interesse an einer Zusammenarbeit haben oder einfach mehr über mich und meine bisherigen Tätigkeiten wissen möchten: Schreiben Sie mir
Wer bin ich?
Ich werde gerne als Generalist bezeichnet und konnte mittlerweile 20 Jahre Erfahrung in der Softwareentwicklung sammeln. Da ich mich immer zwischen den Rollen Entwickler, Tester und Coach bewegt habe, werde ich schnell zu einer echten Bereicherung für jedes cross-funktionale Team.
Als erfahrener Softwareentwickler mit starkem Fokus auf Qualität, ist es mein Ziel mein Wissen und meine Erfahrung mit meinen Teamkolleg*innen zu teilen. Dies tue ich, indem ich in der täglichen Arbeit zeige:
- wie man sauberen, lesbaren und verständlichen (und damit wartbaren) Code schreibt
- wie die richtigen Tests bei der Entwicklung helfen und nicht etwa stören
- wie alle Teammitglieder das kritische Denken eines Testers verinnerlichen können
- wie Continuous Delivery für mehr Qualität und weniger Risiko sorgen kann
- wie ein Mindestmaß an Dokumentation jedem im Team helfen kann
Seit einigen Jahren fühle ich mich in der Funktionalen Programmierung zu Hause, habe aber auch reichlich Erfahrung mit “klassischen” Paradigmen sammeln dürfen. Als polyglotter Entwickler, schaue ich mir gerne neue Sprachen an und versuche deren Besonderheiten und Stärken zu erkennen und zu nutzen. Ich habe Produktionscode in TypeScript, Clojure, Ruby und Go geschrieben, nur um die zuletzt benutzten Sprachen zu nennen.
Immer wenn ich etwas länger in Projekten verweile, ergibt es sich, dass ich mit Kolleg*innen Communities of Practice (z.B. Softwarecraft, Testing) gründe, um den Austausch auch über Team- und Unternehmensgrenzen hinweg zu fördern. Zusätzlich besuche ich regelmässig Meetups und Konferenzen (sowohl als Speaker als auch als Zuhörer) um immer wieder über meinen eigenen Tellerrand hinaus zuschauen.
Um erfolgreicher unsere Ideen von moderner Softwareentwicklung in die Welt tragen zu können, habe ich 2007 mit zwei Freunden unsere Firma gegründet: inoxio Quality Services GmbH. Seitdem haben deutschland- und europaweit unzählige Projekte unser Know-How in den Bereichen Entwicklung, Testing und Operations in Anspruch genommen.
Was habe ich bisher getan?
-
Für ein Gaming-Startup in Großbritannien, habe ich das Backend-Team geleitet, welches die Spiellogik und den Inhalt für die verschiedenen mobilen Clients mit Hilfe einer GraphQL-API bereitgestellt hat. Zusätzlich bauten wir eine ganze Reihe von Tools um das Spiel steuern und den Inhalt pflegen zu können.
TypeScript, Ruby on Rails, Clojure, Go, GraphQL -
Wir haben eine veraltete REST API zu einer neuen GraphQL API migriert und dabei kleine Services aus dem Monolithen extrahiert wo es sinnvoll war. All dies geschah ohne die Verfügbarkeit des Spiels für unsere Kunden zu beeinträchtigen.
TypeScript, Ruby on Rails, Clojure, Go, GraphQL, AWS, Terraform -
Für eine große deutsche E-Commerce-Plattform habe ich mit dem Team eine Recommendation-Lösung mit einer polyglotten Microservice Architektur aufgebaut und als vorbildliche DevOps haben wir diese selbst betrieben.
50+ Services, Clojure, Scala, Python, Kafka, Tensorflow, Redis, REST -
Die gesamte Microservice-Landschaft haben wir nachträglich und unterbrechungsfrei aus dem eigenen Rechenzentrum in Amazons Cloud migriert.
AWS, Terraform -
Für die eigene Firma habe ich ein maßgeschneidertes Invoice- and Accounting-Systems geplant und umgesetzt. Dies wird seit über 10 Jahren erfolgreich eingesetzt und immer wieder erweitert und verbessert.
Ruby on Rails, HTML, SCSS, Javascript, Docker, AWS -
Da bei komplexen Systemen häufig mangelnde Transparenz für mangelnde Qualität mitverantwortlich ist, habe ich bei verschiedenen Projekten ganzheitliche Monitoring und Alerting-Lösungen umgesetzt.
Clojure, ClojureScript, Prometheus, Grafana, Graphite, Kibana -
Neben Zeitreihendaten müssen häufig auch team-spezifische Daten plakativ sichtbar gemacht werden. Ich habe Tools entwickelt, die dem Team helfen, diese Daten nicht aus den Augen zu verlieren. Diese Tools zeigten u.a.:
- die Anzahl von noch nicht live deployten Commits aller Repos
- den Zustand von allen autoskalierten Instanzen in der Cloud
- die Dauer und den Status von langlaufenden Jobs
- die Qualität von verschiedenen Empfehlungsarten, sodass Fachbereiche diese besser einschätzen konnten
Clojure, Ruby, Python, Go, HTML, SCSS, Javascript, diverse Service-APIs
-
Software, die nicht gepflegt wird, rottet schnell vor sich hin. Es ist mir immer ein besonderes Anliegen, die Code-Qualität als tägliche Routine zu verbessern. Das Ziel ist es, am Ende des Tages weniger Technischen Schulden, eine bessere Testabdeckung oder weniger unnötige Komplexität zu haben.
Wenn sie ein eher traditionelles Profil brauchen (mit all meinen Skills, beherrschten Sprachen und Werkzeugen und allen Projekten bei denen ich mitgearbeitet habe), dann können Sie dies hier finden: Profile Torsten Mangner.
Woran glaube ich?
Für den Fall, dass Ihre Überzeugungen sich nicht mit meinen decken, sollten wir uns unbedingt unterhalten. Ich würde gerne hören, mit welchen Prinzipien Sie ihre Projekte erfolgreich meistern.
There is no silver bullet
Es gibt keine Best Practices. Keine einzelne Technologie kann die Antwort auf bestehende Probleme sein. Jede Herausforderung muss in ihrem Kontext der aktuellen Gegebenheiten gesehen werden.
Continuous Improvement
1.01 ^ 365 = 37.78
0.99 ^ 365 = 0.02
Nur wenn sich ein Team jeden einzelnen Tag verbessern will, kann es große Dinge vollbringen. Retrospektiven mit Ursachenforschung ohne Schuldzuweisungen sind der Grundbaustein für die kontinuierliche Verbesserung in einem Team. Kleine Experimente mit messbaren Resultaten helfen die Struktur und Arbeitsweise eines Teams an dessen Bedürfnisse anzupassen.
Qualität
Man braucht keine Tester, um für Qualität zu sorgen. Jedes Teammitglied kann die Denkweise eines Testers erlernen und verinnerlichen und so die Qualität des Produktes von Anfang an positiv beeinflussen. Dazu braucht es Qualitäts-Advokaten, die das Team bei diesem Lernprozess anleiten und begleiten.
Transparenz
Glauben ist nicht Wissen. Nur mit korrekt gemessenen Daten, kann man fundierte Entscheidungen treffen. Alles andere wäre Raten. Die Transparenz eines Produktes kann mit einem umfassenden Monitoring erhöht werden.
Genauso sorgen Tests durch ihre Fähigkeit, essentielle Sachverhalte zu verifizieren und zu dokumentieren, für ein klareres Bild von inneren Abläufen in einem System.
Testpyramide
Zu viele Tests auf der falschen Ebene der Testpyramide, machen Tests langsam, instabil, unnötig kompliziert und schwer zu warten. Damit einher geht der größte Vorteil einer guten Testsuite verloren: Anpassungen an der Software mit hoher Zuversicht durchführen zu können.
Eine gut ausbalancierte Testpyramide hingegen sorgt für schnelles Feedback, zeigt welche Änderungen zu ungewollten Nebeneffekten geführt haben und verifiziert sowohl die Korrektheit einzelner Komponenten als auch deren korrektes Zusammenspiel.
Was sagen ehemalige Kollegen?
John Yorke Tech Lead @ Drest LtdI was lucky enough to have worked with Torsten for nearly 2 years. Throughout that time Torsten always impressed me with his attitude, his kindness and his intelligence. A true engineer that you can share a beer with.
Carl Düvel Freelance Senior Software EngineerTorsten ist nicht nur ein Qualitätsexperte mit einem fast schon unheimlichen Gespühr für Bugs und ein erfahrener Entwickler, sondern kennt sich auch noch mit UX aus.
Eine IT-Allzweckwaffe also. Das meint er mit “recht erfahren” 😏.
Hire him & thank me later.
Christoph Burgmer Tech Lead @ ThoughtworksTorsten ist in meiner persönlichen Top 10 Liste der Leute mit denen ich Software entwickeln will.
Und er versteht auch noch was von Fussball!
Christian Stamm Tech Lead and Principal Developer @ OTTOOur fabulous DevQaOps and creator of beautiful things
Richard Filippi Tech Lead @ ThoughtworksTorsten is an extremely lovely person that I had the pleasure of working with in Hamburg.
If you need a top dev talent he’s your man, and he’s also reasonably proficient at FIFA on the Playstation. Given the chance I would love to work with him again.