Profilbild Dr. Michael Gnatz

Dr. Michael Gnatz, Diplom-Informatiker
Software Engineering Büro


„pragmatisch, flexibel, engagiert, teamorientiert“

Verfügbarkeit: ab Januar 2024
Einsatzgebiet: Raum München oder 100 % Remote
nach oben

Mein Dienstleistungsangebot

Ich stehe Ihnen mit umfassender Unterstützung zur Seite, um Ihre Projekte effizient und auf höchstem Qualitätsniveau zum erfolgreichen Abschluss zu führen.

Mit langjähriger Expertise im Bereich der IT – sowohl als Leiter eines Softwareentwicklungsteams in einem renommierten mittelständischen Unternehmen als auch durch zahlreiche Beratungsprojekte – biete ich meine umfassende Hilfe entlang des gesamten Softwareentwicklungszyklus an:

  • Software-Entwicklung im Java-Umfeld
  • Konzeption und Umsetzung von Software-Architekturen
  • Technische Projektleitung
  • Coaching von Entwicklerteams
  • Expertise in Microservices, Cloud-Technologien und DevOps

Die Vorteile für Sie sind::

  • Effiziente und zielgerichtete Softwareentwicklung im Team
  • Lösungen von herausragender Qualität und Zuverlässigkeit
  • Durchdachte und skalierbare Architektur
  • Klar strukturierte und wartbare Software

Neben meinem fundierten theoretischen Hintergrund zeichne ich mich insbesondere durch Pragmatismus aus. Meine analytischen Fähigkeiten und Kommunikationsstärke bringe ich gerne in dynamische Teams ein. Meine ideale Projektumgebung zeichnet sich durch anspruchsvolle Herausforderungen aus, die mich zu Höchstleistungen motivieren.

nach oben

Ausbildung und Erfahrung

Auch nach mehreren Jahren in der IT-Welt faszinieren mich nach wie vor die Details der Softwareentwicklung. Als Architekt, Team- und Projektleiter durfte ich zudem verantwortungsvolle Rollen übernehmen. Selbstständiges Agieren sowie die Übernahme von Verantwortung sind Stärken, die mich auszeichnen.

2019 - 2023 Projekt im Bereich Musikrechte Software-Entwicklung im Backend, Architekturberatung und DevOps
2018 Projekt im Versandhandel Architektur, Software-Entwicklung und Betrieb (DevOps)
2017 - 2018 Projekte im Bereich Identity und Access Management Architektur, Software-Entwicklung und Coaching
2016 - 2017 Projekte für die Energiewirtschaft Software-Entwicklung Backend und Frontend
2015 - 2016 Projekte in der Medienbranche Software-Entwicklung im Backend
2014 - 2015 Projektarbeit für einen Bankendienstleister Software-Entwicklung im Bereich Kreditkarten-Verwaltung
2010 - 2014 ATRON electronics GmbH (Verkehrswesen) Teamleiter Backend-Entwicklung
2008 - 2010 Sapient GmbH (IT Consulting) Consultant
2005 - 2008 PENTASYS AG (IT Consulting) Consultant
2000 - 2005 TU München,
Lehrstuhl für Software & Systems Engineering
Wissenschaftlicher Angestellter,
Promotion zum Dr. rer. nat.
1995 - 2000 Informatik-Studium an der TU München Abschluß Diplom-Informatiker

"Erkenntnisse" aus einigen Jahren IT

  • Projekte scheitern praktisch nie aufgrund von Technologie. Der Erfolg von Projekten hängt vielmehr von einer intensiven Kommunikation aller Beteiligten ab, selbst wenn ihre Perspektiven stark variieren.
  • Leichtgewichtige Architektur und gelegentlicher Verzicht auf technologische Hypes können Zeit und Ressourcen einsparen. Das Neueste ist nicht immer automatisch das beste Framework.
  • Projektrettung bedeutet oft die Architektur vom Kopf auf die Füße zu stellen, also pragmatisches Vorgehen.
  • Qualifizierte Softwarearchitekten haben bereits in der Entwurfsphase die nicht-funktionalen Anforderungen im Blick, insbesondere die Performance.

nach oben

Projektbeispiele

Sie wollen mehr zu meinen Projekten erfahren? Ich schicke Ihnen gerne mein detailliertes Profil zu.

Für folgende Unternehmen durfte ich bereits in Projekten tätig sein:

  • Atos GmbH
  • ATRON
  • ComHem
  • Conrad Electronic
  • danet Consult
  • Fiducia IT AG
  • GMX / United Internet
  • it4ipm / Gema
  • Healy Hudson
  • Maxdome GmbH
  • O2
  • PENTASYS
  • Sapient
  • sd&m
  • Siemens
  • Stadtwerke München
  • Institut für Informatik, TUM

Abrechnungssystem für Musikrechte

Architekturberatung und Entwicklung

In meiner Rolle als Senior-Entwickler hatte ich die spannende Gelegenheit, an einem anspruchsvollen Musikrechte-Projekt mitzuwirken. Hierbei entwickelte ich eine hochkomplexe Abrechnungssoftware zur automatisierten Lizenzkostenabrechnung von Tonträgern.

Mit Architekturberatung, Konzeption und Code Reviews konnte ich maßgeblich zur erfolgreichen Umsetzung des Projekts beitragen. In enger Zusammenarbeit mit einem engagierten Team von bis zu 10 Entwicklern und zahlreichen Fachexperten realisierte ich essenzielle Module wie die Produktanmeldung, Produktabrechnung sowie die Integration externer Systeme. Zudem übernahm ich im Verlauf des Projekts zusätzliche DevOps-Aufgaben, darunter die Optimierung der Infrastruktur und die Einführung von JMS-Brokern.

Ein besonderer Fokus lag auf der Etablierung eines hohen Code-Qualitätsstandards im Team, um die Zuverlässigkeit und Wartbarkeit des entstandenen Systems sicherzustellen. Zur Anwendung kamen aktuelle Technologien wie Java 11, Spring Boot, Microservices und eine breite Palette von DevOps-Tools.

Etengo Gold-Partner-Siegel 2023

Identity und Access Management als Produkt in der Cloud

Micro Service-Architektur in der Cloud, SW-Entwicklung, Coaching

In diesem Projekt hatte ich die Möglichkeit, in der Rolle eines Cloud-Architekten ein aufstrebendes Team in den Bereichen Softwareentwicklung mit Java 8 und Angular 5, Microservice-Architekturen, Cloud-Technologien und agilen Methoden zu coachen. Neben umfangreichen Code-Reviews konnte ich auch einige Microservices eigenhändig implementieren.

Das Ziel dieses Projekts bestand darin, ein Produkt für Identity und Access Management in der Cloud zu realisieren. Dies sollte auf der Open-Source-Lösung WSO2 Identity Server basieren und als Herzstück einer Microservice-Architektur dienen.

Neben der Definition der grundlegenden Micro Service-Architektur hinsichtlich Service-Schnitt, Abhängigkeiten und APIs lag der Schwerpunkt meiner eigenen Implementierungsarbeiten im Bereich der Persistierung von Audit-Events.

Die Audit-Events wurden zunächst in ActiveMQ zwischengespeichert, bevor sie in Elasticsearch persistiert wurden. Anschließend wurden sie mithilfe des Open-Source-Tools Grafana zur Anzeige gebracht. Ein weiteres Ziel war die Konzeption und Implementierung eines eigenen Microservices zur Überprüfung der Vollständigkeit und Unveränderlichkeit der gespeicherten Audit-Events. Hierfür wurde eine Lösung für langlaufende Batch-Jobs entwickelt, die das Auto-Scaling der Cloud Foundry nutzt. Dadurch wurde die Ausführung je nach Last automatisch auf mehrere Instanzen verteilt.

MDA-Entwicklungsplattform

Team-Leitung, Konzeption, technische Projektleitung, Architektur, Projektrettung

Die Aufgabe bestand hier vor allem in der Rettung des bereits laufenden Projektes, das heißt im pragmatischen „Nutzbar­machen“ bereits vorhandener (zu theoretischer) Konzepte und Implementierungen eines externen Dienstleisters. Diese Aufgabe wurde von einem 10-köpfigen, internationalen und verteilten Team bewältigt. Die Projektlaufzeit betrug rund 2 Jahre.

Die realisierte Plattform erlaubt die effiziente und modulare Entwicklung von Java Enterprise-Anwendungen. Dem Konzept der Model Driven Architecture (MDA) entsprechend wird aus einer Domänen-Sprache eine 3-Schichten-Architektur generiert, bestehend aus Standarddialogen, einer Datenzugriffsschicht (CRUD) sowie ein Datenbankschema. Im Gegensatz zu Rapid Prototyping-Ansätzen lässt sich auch ohne weitere Programmierarbeit eine vorzeigbare und unmittelbar produktiv einsetzbare Anwendung schnell erstellen. Neben modularer Entwicklung, Mandantenfähigkeit, Lizenzmanagement, Rollen, Rechten und einem einfachen Installer für den End-Kunden bietet die Plattform eine umfangreiche Anwendungs-Bibliothek.

Trotz der anfänglichen Herausforderungen wurde letztlich eine Entwicklungs-Plattform realisiert, die großen Nutzen bietet. Die Praktikabilität und Effizienz bei der Anwendungserstellung wurde bereits unter Beweis gestellt. Verschiedene auf der Plattform realisierte Anwendungen sind zudem produktiv im Einsatz.

ÖPNV-Datendrehscheibe

Architektur und Entwicklung

Im Rahmen eines Verkehrstechnik-Projekts habe ich eine Datendrehscheibe konzipiert und umgesetzt. Diese ermöglicht den Austausch von Echtzeitdaten, die von Fahrzeugen im Feld an Betriebsleitstellen verschiedener Hersteller gemeldet werden. Dadurch wird eine umfassende dynamische Fahrgastinformation ermöglicht, wie zum Beispiel die Anzeige der nächsten Abfahrten an einer Haltestelle inklusive prognostizierter Verspätungen. Die Datendrehscheibe fungiert als zentraler Vermittler und tauscht mit den angeschlossenen Partner-Systemen XML-Telegramme über HTTP aus.

Ich habe die Implementierung in Java sowie die Performance-Optimierung in diesem Projekt eigenständig durchgeführt. Eine Herausforderung in dieser auf optimistischem Sperren basierenden JEE-Standard-Architektur bestand in der Serialisierung der HTTP Requests, da die angebundenen Partner-Systeme Requests vielfach quasi gleichzeitig senden.

Der Kunde in der Schweiz lobte ausdrücklich das Verhalten der Lösung unter Last (bis zu 10 XML-Telegramme pro Sekunde) sowie deren Stabilität. Das Produkt ist seit Oktober 2013 im produktiven Einsatz.

Ticketing-Monitoring

Podukt-Konzeption, Benutzeroberfläche

Das entwickelte Monitoring-Werkzeug kann Lücken in der Abrechnung von werthaltigem Ticketing-Papier aufdecken. Diese Situation tritt ein wenn, Abschnitte einer an den Bus-Fahrer ausgegebenen Papierrolle von den Fahrzeugrechnern nicht vollständig in das Backend gemeldet werden. Die Software unterstützt die Identifizierung von Verdachtsfällen (Betrug) und ermöglicht deren nachvollziehbare Verfolgung durch eine übersichtliche und detaillierte Darstellung auf der Benutzeroberfläche.

In diesem Projekt habe ich das fachliche Produktkonzept für das Backend entwickelt und in meiner Rolle als technischer Projektleiter umgesetzt.


nach oben

Kenntnisse

Die nachfolgende Aufzählung meiner technischen Fähigkeiten bietet lediglich einen unvollständigen Einblick in mein wichtigstes technisches Rüstzeug.

Nicht jeder selbstverständliche "Skill" ist hier aufgeführt. Die Einarbeitung in neue Technologien gestaltet sich meist zügig, insbesondere da ab einem gewissen Grad an Berufserfahrung jedes neue Framework in seinen Grundprinzipien oft einem bereits Vertrauten ähnelt.

Schwerpunkte

  • Java Backends
  • Spring Boot
  • Micro Services
  • Kubernetes
  • Cloud
  • Angular

im Detail...

Skills
  • Architektur
    • Micro Services
    • Cloud
      • Amazon AWS
      • Google GCP
      • Kubernetes
      • Cloud Foundry
    • MDA / Model driven Architecture
    • DSL / Domänenspezifische Sprachen
  • Methodik
    • Test Driven Development (TDD)
    • Continuous Integration
    • agile Methoden (SCRUM)
  • OS
    • Linux (Ubuntu, CentOS, Fedora, Raspidian)
    • Windows 3.11 bis 10
  • Tools
    • Projekt
      • Redmine
      • JIRA
      • Confluence
    • IDE
      • IntelliJ IDEA
      • Eclipse IDE
    • Versioning
      • GIT
      • Bitbucket
      • Stash
      • Subversion
      • CVS
    • Build Tools
      • Jenkins Pipelines
      • Bamboo
      • Maven, ANT
      • Sonar
      • Rollup.js
    • Testing
      • JUnit, TestNG
      • Mockito
      • JMeter
      • JProfiler
      • QF-Test
    • DB
      • DBeaver
      • SQLDeveloper
    • Monitoring
      • Kibana
      • Graylog
      • Stackdriver Monitoring
      • Nagios / Shinken
      • JMX
      • Prometheus + Grafana
  • Sprachen
    • Java
    • JEE 7
    • Kotlin
    • Scala 2.11
    • Javascript
    • XML, XSD, XSLT
  • Frameworks
    • Sprint Boot 3
    • Micro Services
      • Eureka
      • Hystrix
      • Spring Cloud Config
      • Sleuth
    • Camunda Decision Tables
    • EJB 3.1
    • XText / XTend 1.0
    • JasperReport 4.5
    • Android Wear 2
  • Datenbanken
    • Zugriff
      • JPA
      • Hibernate
      • Hibernate Envers
      • SQL
      • JDBC
      • Flyway / LiquiBase
    • Produkte
      • MySQL / MariaDB
      • PostgreSQL
      • Google CloudSQL
      • Amazon RDS
      • Elasticsearch + Grafana
      • Oracle
      • Redis
      • MongoDB
  • Kommunikation
    • HTTP
    • REST
    • RabbitMQ
    • JMS Broker
      • ActiveMQ
      • Artemis
      • Google PubSub
      • AmazonMQ
    • Firebase Cloud Messaging (FCM)
    • Webservices
    • oData
    • oAuth 2
  • Container
    • Docker
    • Helm Charts (Kubernetes)
    • Glassfish 4
    • JBoss Wildfly
    • Apache Tomcat
    • Nginx
  • GUI
    • Web
      • Angular 5
      • Servlet, JSP
      • JSF
      • Struts
      • GWT
      • Vaadin 7
      • HTML, CSS
      • JQuery, ...
    • JavaFX
    • Swing

nach oben
Profilbild Dr. Michael Gnatz

Kontakt

Dr. Michael Gnatz
Software Engineering Büro
Anzinger Str. 20
D-85586 Poing

Tel. +49 (0)151 211 233 74
info@michaelgnatz.de
www.michaelgnatz.de