Schlagwörter
Skills
Software Architektur, Cloud Native Development, Domain Driven Design, Requirements Engineering, Java / JVM Sprachen, Spring Framework, Continuous Delivery
Methodische Kenntnisse
Agile Softwareentwicklung, Agile Architecture & Design, Requirements Engineering, DDD Modellierungstechniken, Clean Code Development, Test- Driven Development, Pair Programming, Mob Programming, DevOps, Automation, Scrum Master, Product Owner, Kanban
Branchen Kenntnisse
Retail, Automotive, Telekommunikation, E-Commerce, Kundenbindungsprogramme, Brand/ Loyalty Marketing, Ticketing
Skills:
Programmiersprachen: Java, Kotlin, Groovy, JavaScript, TypeScript
Entwicklungsumgebungen: IntelliJ
Cloud Computing: Cloud Foundry, AWS
Tools: Atlassian Tools (JIRA, Confluence Stash)
Frameworks: Spring, Spring Boot
Messaging: RabbitMQ, JMS, Kafka
Persistence: Hibernate, JPA, Flyway
Web-Frameworks: Vue, Angular, Wicket
Source Verwaltung: Git, Subversion
Build Tools: Gradle, Maven
CI/CD: Jenkins, Bamboo, Ansible, AWS CloudFormation
Datenbanken: PostgreSQL, MySQL, Oracle, DynamoDB, MongoDB
Testing: JUnit, Spock, Mockito, Kotest, Spring Test, Testcontainers
Container: Docker
Projekthistorie
Projekt: MAN Perform Analysis
Entwicklung der MAN Perform Analysis Platform, die einen detaillierten Überblick über die Betriebsdaten einer LKW Flotte bereitstellt. So kann die Leistung der Flotte optimiert werden und nachhaltig Kraftstoffkosten, CO2-Emissionen und Gesamtbetriebskosten gesenkt werden.
Des Weiteren ermöglicht Perform eine Leistungsbeurteilung der Fahrer und der Fahrzeuge auf Basis der abgerufenen Sensor-Daten. Die Daten liefern Rückschlüsse auf den Verschleiß des Fahrzeugs und können auch im Fahrertraining zur Steigerung der wirtschaftlichen Fahrweise genutzt werden.
Im Rahmen des Projekts wurden eine Reihe von Services basierend auf Java, Kotlin, Spring Boot und AWS entwickelt, die die über Kafka bereitgestellten Daten speichern, aggregieren und aufbereiten. Zusätzlich wurden eine Reihe von KPIs berechnet und über eine API bereitgestellt.
Die Daten können dann über ein Frontend abgerufen werden und es lassen sich automatische Reports erzeugen, die für eine Flotte wöchentlich oder monatlich die Daten als pdf per email zum Download bereitstellen.
Folgende Aufgaben habe ich übernommen:
- technisch verantwortlich für die Reporting Domäne
- Aufbereitung der Reporting Anforderungen und Vorbereitung der Refinements
- Design, Abstimmung und Implementierung der Reporting Service Architektur
- Einführung einer Hexagonalen Architektur basierend auf Domain Driven Design
- Einführung von AWS Step Functions für den Reporting Workflow
- Entwicklung von Backend Services
- Bereitstellung einer REST API für das Reporting Frontend
- Nutzung weiterer AWS Services wie AWS Lambda Functions und SES für das Versenden von emails
- Erstellung und Anpassung von Tests auf allen Ebenen
- Automatisierung und Weiterentwicklung der CI/CD Pipeline - Sicherstellung des Betriebs
- Coaching von internen Entwicklern
Technologien: Java 14, Kotlin, Spring Boot, AWS, DynamoDB, Kafka, Maven, Docker, JUnit, TestContainers
Neuentwicklung der München App im Auftrag der Stadt München. Ziel der München App ist alle Bürger und Kunden auf die Angebote von Stadt und Unternehmen in München aufmerksam zu machen und diese zu vermarkten. Im ersten Schritt geht es in erster Linie um Ticketing für Museen und Bäder. Im nächsten Schritt dann um alle Freizeitangebote. Des Weiteren soll die App eine online Alternative zu Behördengängen anbieten.
Folgende Aufgaben habe ich übernommen:
- Moderation von User Story Mapping Workshops
- Erstellung einer User Story Map
- Ausarbeitung von User Stories
- Moderation der Refinement Termine mit dem Team
- Abstimmung der technischen Schnittstellen mit München Ticket und muenchen.de
Technologien: Confluence, Jira, Miro, Postman
Neuentwicklung der Audi Mobility Service Plattform basierend auf einer Microservice-Architektur. Die MSI-Plattform dient dazu, unterschiedliche Funktionalitäten in Form von Services bereitzustellen. Aktuell werden diverse Services u.a. in den Produkten Audi on Demand und Porsche Drive eingesetzt. Mitarbeit im Pricing und Communication Team. Einführung einer Hexagonalen Architektur mit Domain Driven Design im Pricing und Coupon Service.
Unterstützt habe ich bei folgenden Aufgaben:
- Design, Abstimmung und Implementierung der Service Architektur - Entwicklung von Backend Services
- Entwicklung von Administrationsoberflächen
- Automatisierung und Weiterentwicklung der CI/CD pipeline
- Sicherstellung des Betriebs DevOps
- Erstellung und Anpassung von Tests auf allen Ebenen
- Abstimmung Architektur relevanter Themen mit anderen Teams
Technologien: Java 8 und 11, Spring Boot, Groovy, Kotlin, Cloud Foundry, AWS, Jenkins, PostgreSQL, Flyway, Gradle, Docker, Grafana, Prometheus, OAuth2, JUnit, Spock, RabbitMQ, Angular, Typescript, Hibernate
Neuentwicklung des Breuninger online Shops basierend auf einer Hexagonalen Architektur mit Domain Driven Design. Mitarbeit im Team Kaufen (Warenkorb, Kunden, Login, Gutscheine). Verantwortlich für das Gutschein Self- Contained-System.
Technologien: Java 8, Spring (Core, Data, Boot, Security, MVC), JPA, Hibernate, REST, HTML/ CSS, Vue.js, JUnit, Mockito, Spock, Gradle, Git, PostgreSQL, gitlab CI, Docker, AWS
Entwicklung einer Webanwendung zur Unterstützung des Kampagnen und Angebotsmanagements für Retailer inklusive Anbindung externer Systeme (Batch / WebServices).
Technologien: Java, Spring (Core, Batch, Integration, Boot, Security, MVC), JPA, Hibernate, REST, HTML/CSS, Javascript (u.a. Backbone, jQuery), Apache CXF, JUnit, Mockito, Spock, Geb, Gradle, Git, PostgreSQL, Ansible, Gatling
Entwicklung von Reports basierend auf Transaktionsdaten.
Integration der Reporting Lösung webFOCUS in die bestehende IT Landschaft von emnos.
Technologien: Java, Spring (Core, Batch, Integration, MVC), Hibernate, JPA, JUnit, Mockito, Geb, Maven, Gradle, Git, svn, PostgreSQL, webFOCUS, Apache Tomcat, Bamboo, Sonar
Neuentwicklung des o2 online Shops www.o2online.de im Middletier und Frontend Bereich. Anbindung externer Systeme wie CRM, Produktkatalog oder Bestellsystem mit Hilfe von WebServices. Neuentwicklung einer internen Admin Webanwendung zur Konfiguration des online shops.
Neuentwicklung einer asynchronen OrderQueue inklusive Admin Oberfläche zur Speicherung und Verarbeitung von Bestellungen. Neuentwicklung des mobilen o2 online shops basierend auf dem bestehenden big screen online shop.
Technologien: Java, Wicket, Spring 3, Hibernate, Oracle, Tomcat, Maven, Git, Jenkins, Mockito, Selenium, Apache CXF
Neuentwicklung einer Profilverwaltung zur Individualisierung der Homepage von gmx.net.
Die Profile werden mit Hilfe von Hibernate in einer Oracle Datenbank gespeichert und mit dem Terracotta Distributed Cache im Speicher gehalten. Das Caching war notwendig um die Hohe Anzahl von Seitenabrufen der GMX Homepage verarbeiten zu können.
Die Profilservices wurden mit Spring Remoting dem Wicket basierten Frontend zur Verfügung gestellt.
Technologien: Java 6, Spring 3, Hibernate, Terracotta Distributed Cache, ehCache, Oracle 11g, Tomcat, Maven 2, Subversion. git, Wicket, CoreMedia
Weiterentwicklung und Neuentwicklung des WebPortals o2online.de im Middletier und Frontend Bereich. Anbindung externer Systeme wie CRM, Produktkatalog oder Bestellsystem mit Hilfe von WebServices. Implementierung von EJB Services für das Web- und CSC-Frontend. Codes.
Evaluierung von WebFrameworks und Auswahl von Wicket.
Technologien: Java, J2EE 5, JAX-WS, Spring, Hibernate, JPA, Oracle 10g, JBoss 4, Tomcat, Maven, svn, EasyMock, Abaxx, Wicket
Technologie und Konzeptberatung
Aufsetzen der Entwicklungsumgebung und des Build Systems. Evaluierung unterschiedlicher Continuous Integration Server. Technologie- und Konzeptberatung im Bereich Middleware / JEE.
Technologien: Java 5, Maven 2, Subversion, Hudson, MySQL, Tomcat, Archiva
In dieser Zeit arbeitete ich an einer Vielzahl von unterschiedlichen Projekten bei Loyalty Partner im Kontext von Kundenbindungsprogrammen.
Auswahl an Projekten:
- Entwicklung eines Batch Job Frameworks zur Verarbeitung von großen Dateien mit Transaktions- oder Kundendaten.
- Couponing an der Kasse
- Monitoring Konzept basierend auf JMX und AOP - Null-Punkte Prämie
- Redesign Prämienshop
- XML Stammdaten Export
- Überarbeitung Einlöseprozess / Betrugsprüfung - Visakarten Bestellprozess
Technologien: Java, JMX, AspectJ, Spring, Hibernate, JMS, DbUnit, Oracle 10g, Oracle XML- DB, Mule ESB, Bea Weblogic, Maven, JBoss, Groovy, Drools, Servlets, JSP, JDBC, webMethods