Architekt / Lead-Developer im Java EE & Microservices-Umfeld, Requirements Engineer, Clean Code-Coach & Domain-driven Design
Aktualisiert am 05.04.2024
Profil
Referenzen (4)
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 22.04.2024
Verfügbar zu: 100%
davon vor Ort: 10%
Fachliche Konzeption / Anforderungsermittlung mit Durchführung von Workshops
Coaching von Software-Entwicklern (Clean-Code, TDD)
Architektur- Design und Entwicklung im Java EE Umfeld
Requirements-Engineering
Domain-driven Design
UseCases
Refactoring
Microservices
Deutsch
Englisch
fließend in Wort und Text
Französisch
Grundlagen (7 Jahre in der Schule, aber außer Übung)
Spanisch
Anfänger

Einsatzorte

Einsatzorte

Deutschland, Österreich
derzeit Full-Remote / nur punktuelle Vorort-Präsenz stark bevorzugt (insofern sollte der Standort des Kunden sekundär sein)
möglich

Projekte

Projekte

1 Jahr 4 Monate
2023-01 - 2024-04

Durchführung von Proof-of-Concepts im Umfeld der Kfz-Steuer

Software-Architekt Java 11 UML 2.0 BPMN
Software-Architekt

Durchführung von zwei Proof-of-Concepts zur Ablösung veralteter Komponenten im Umfeld der Kfz-Steuer:

  • Evaluierung verschiedener Lösungsalternativen jeweils durch Implementierung eines Prototypen
  • Definition der zugehörigen Ziel-Architektur für die neu zu entwickelnden Applikationen
  • Erstellung von zwei jeweils ca. 90-seitigen Ergebnis-Dokumenten
  • Durchführung von Last- und Performancetests mit den Prototypen
  • Durchführung von Präsentationen für den Auftraggeber und den Endkunden
  • PoC 1: Ablösung von IBM ODM durch eine DMN-basierte Lösung (Camunda DMN, Drools DMN)
  • PoC 2: Ablösung IBM Process Server durch Spring Integration mit JMS und/oder Camunda 8


Camunda Drools Spring Integration Spring Atlassian Confluence ActiveMQ Eclipse Maven Spring Boot
Java 11 UML 2.0 BPMN
ITZ Bund
Straubing
9 Monate
2022-04 - 2022-12

Neuentwicklung/Ablösung eines Stammdatensystems

Architekt und Lead-Entwickler UML 2.0 Java 11 Java EE ...
Architekt und Lead-Entwickler

Phase 1:

  • Konzeption eines Adapters für die Anbindung des alten Stammdatensystems an die neue Portal-IT-Landschaft des BzSt
  • Architekturdokumentation gemäß ARC42
  • Erstellung der Arbeitspakete für die Entwickler
  • Coaching der Entwickler bzgl. Clean-Code
  • Durchführung von Code-Reviews

Phase 2:

  • Review der Fachkonzepte und fachlichen Datenmodelle
  • Architektur und Design des neuen Stammdatensystems
  • Design des technischen Datenmodells auf Basis von Domain-driven Design
  • Analyse der Schnittstellen des Altsystems
  • Abstimmung der neuen Architektur mit den Architekten der Umsysteme und den Gesamtprojekt-Architekten
  • Architekturdokumentation gemäß ARC42
  • Erstellung der Arbeitspakete für die Entwickler
  • Coaching der Entwickler
JBoss Application Server Atlassian JIRA Atlassian Confluence JDK Message Queuing IntelliJ
UML 2.0 Java 11 Java EE CDI JMS Domain-driven Design ARC42
Bundeszentralamt für Steuern / ITZ-Bund
Remote
4 Monate
2022-01 - 2022-04

Redesign eines Billingsystems

Architekt und Requirements-Engineer REST UML 2.0 BPMN ...
Architekt und Requirements-Engineer

- Fachliche Analyse IST/SOLL-Stand mit Durchführung von Online-Analyse-Workshops

- Design von REST-Services a) als Ersatz der direkten DB-Zugriffe des Billingsystems und b) zur Eliminierung von vielen Hartcodierungen im Billingsystem

- Integration der REST-Services in die bestehende Applikationslandschaft / Zuordnung der Services zu den passenden Bounded Contexts

- Bereitstellung der REST-Schnittstellen als Swagger/OpenApi3 Spezifikation

- Erstellung UML Diagramme (Usecases, Komponenten)

- Mockups für neue Billing-Administrations-UI (Balsamiq)

- Aufwandsabschätzung für Migration von Activiti BPM nach Camunda

Java 8 WildFly Application Server PostgreSQL NetBeans Activiti OpenApi3 Atlassian Confluence Enterprise Architect Balsamiq
REST UML 2.0 BPMN Domain Modelling
G-Fit Gmbh
Remote
11 Monate
2021-02 - 2021-12

Neuentwicklung einer Verwaltungs- und Abrechnungsapplikation im Baugewerbe

Senior Backend-Entwickler mit Architekturaufgaben Java BPMN CDI
Senior Backend-Entwickler mit Architekturaufgaben
  • Entwicklung eines Java EE8-basierten Backends inkl. Camunda Business-Process-Engine
    • REST-Service-Design mit Swagger/Yaml
    • Business-Prozess Design und Implementierung
    • Datenbank-Zugriff mit JPA2
  • Definition von Architekur- und Design-Rahmenbedingungen unter Berücksichtigung von Domain-driven Design Prinzipien (Bounded Contexts, Aggregates)
  • Vorgehensweise nach Scrum
  • Abstimmung der Anforderungen mit den Business-Analysten
Camunda BPM IntelliJ IDEA Jboss EAP
Java BPMN CDI
Full Remote
3 Monate
2020-12 - 2021-02

Umsetzung eines Hundeportals

Fullstack-Entwickler Java 1.8 JavaScript
Fullstack-Entwickler
  • Design und Umsetzung des Datenmodells (ER-Diagramm, Cayenne Modeler)
  • Umsetzung / Programmierung Frontend mit Play2
  • Umsetzung / Programmierung Backend mit Java 8, Play2-Framework, Apache Cayenne
  • Anbindung des here.com Geocoding Services für eine Umkreissuche
  • Umsetzung der Bezahlfunktion mit Paypal
Eclipse Postgis Postgres sbt Apache Cayenne MongoDB Docker
Java 1.8 JavaScript
mackoy consulting
Homeoffice
3 Monate
2020-10 - 2020-12

Design und Entwicklung einer Angebots- und Vertragsverwaltung

Fullstack-Entwickler Java PrimeNG Angular ...
Fullstack-Entwickler
  • Ermittlung der fachlichen Anforderungen mit Usecases und UI-Mockups (Balsamiq)
  • Design und Umsetzung des Datenmodells (ER-Diagramm, Cayenne Modeler)
  • Umsetzung / Programmierung Frontend mit Angular und PrimeNG
  • Umsetzung / Programmierung Backend mit Java 8, Play2-Framework, Apache Cayenne
  • Zentrale Definition der REST-Services mit Swagger incl. Generierung der Interfaces und Value-Objekte mit Swagger Codegen
  • Anbindung des Systems an das Zammad Ticketsystem per REST
  • Anbindung des Systems an das Easybill-System per REST

Apache Cayenne Play2 JDK 1.8 Eclipse Angular 10 Visual Studio Code PostgreSQL MongoDB Swagger Cayenne Modeler Zammad
Java PrimeNG Angular REST SQL Open API
Seefeld und Remote
6 Monate
2020-04 - 2020-09

Design und Entwicklung einer E-Commerce Anwendung

Fullstack Entwickler und Architekt Angular Eclipse Microprofile OpenID Connect ...
Fullstack Entwickler und Architekt

Design und Entwicklung einer E-Commerce Anwendung zur Automatisierung von Java 9 Modul-Konfigurationen (Jigsaw) in hexagonalen Microservice-Architekturen (Webbasiertes Entwickler-Tool).

Hinweis: Dies ist ein eigenes Lernprojekt, das ich in meiner Freizeit wenn möglich zu einer real genutzten, gewerblichen E-Commerce-Anwendung ausbauen möchte.

  • Angular 9 (Frontend)
  • Keycloak als Backend zur Authentifizierung und Authorisierung
  • Java Backend mit Jax-RS REST Services als Backend / Eclipse Microprofile auf Openliberty Server

Balsamiq Visual Studio Code NetBeansIDE JDK Keycloak Prime NG Openliberty
Angular Eclipse Microprofile OpenID Connect OAuth2 JAX-RS CDI Java9
Eigenes Gewerbe in Vorbereitung
Straubing
1 Jahr 9 Monate
2019-01 - 2020-09

Refactoring / Modularisierung eines bestehenden Monolithen

System-Architekt / Software-Architekt Domain Driven Design UML2 Java ...
System-Architekt / Software-Architekt
  • Analyse des > 10 Jahre alten monolithischen, Java EE7-basierten Systems
  • Definition und Abstimmung der Zielarchitektur
    • Einführung von Anwendungsschichten und neuen Musterelementen
    • Restrukturierung der bestehenden Module / fachlichen Modulcluster zur Reduzierung der Abhängigkeiten
    • Identifikation und Abstimmung von Refactorings
    • Aufsplittung des Monolithen in 8 separate Deployment-Units
  • Durchführung von Refactorings
  • Einführung von Maven als Build-System (Ablösung Ant/Ivy)
  • Knowhow-Transfer zum Entwicklerteam bzgl. Software-Architektur, Testing/TDD, Maven, Sonargraph, Domain-driven Design, Clean-Code
  • Coaching der Entwickler bei der Umsetzung der Refactorings

Enterprise Architect Sonargraph Eclipse Maven SonarQube Jenkins
Domain Driven Design UML2 Java Microservice-Architecture Maven Buildmanagement Continuous Integration
Landesamt für Digitalisierung, Breitband und Vermessung
München
4 Monate
2018-09 - 2018-12

Architektur eines Prototypen und Domain-driven Design

Architekt Domain Driven Design UML2 Java ...
Architekt
  • Design von Domain-Modellen / Bounded Contexts / Aggregates
  • Design des Komponentenmodells für den Prototypen
  • Design der Datenflüsse und Abläufe zwischen den Komponenten
  • Design von APIs anhand von UI-Mockups
  • Design der physischen Deployment-Struktur unter Berücksichtigung der Amazon Cloud (EKS) / Kubernetes
Enterprise Architect Kubernetes
Domain Driven Design UML2 Java Microservice-Architecture
Marktforschungsunternehmen
Nürnberg
1 Monat
2018-08 - 2018-08

Beratung / Evaluierung

Beratung / Evaluierung zum Upgrade der verwendeten Software:

  • Evaluierung Upgrade von Java 8 auf Java 10
  • Evaluierung Upgrade der Business Process Engine "Activiti" von 5.16 auf 5.22 oder 6.x
  • Evaluierung Upgrade Jboss Wildfly von 8.2.0.Final auf 13.0.0.Final
  • Evaluierung aller Upgrades im Zusammenspiel
Telekommunikationsunternehmen (selber Kunde wie im Projekt von 05/2014 - 02/2016)
1 Jahr 6 Monate
2017-02 - 2018-07

Analyse und Architektur New KYC

Business Analyst / Solution Architekt / Software-Architekt Camunda BPMN-Modeler Sparx Enterprise Architect Confluence ...
Business Analyst / Solution Architekt / Software-Architekt

Als Business Analyst:

Erstellung von Business Usecases, Business Requirements, Durchführung/Leitung von fachlichen Workshops

Als Solution Architect:

Review von Fachkonzepten, Durchführung/Leitung von technischen Workshops, Erstellung von IT-Konzepten zur Integration eines neuen Scoring-Systems und einer neuen Business-Process-Engine in die bestehende Systemlandschaft mit der Zielarchitektur einer stark asynchronen Entkopplung. Erstellung UML- und BPMN2-Modelle.

Als Software-Architekt:

Design eines neuen Scoring-Systems, Design der externen System-API, Schnittstelle zum Entwickler-Team, Umsetzung der Requirements in technische Arbeitspakete, Modularisierung des Systems, Design des ER-Modells. Vorgaben zur Code-Qualität.

Camunda BPMN-Modeler Sparx Enterprise Architect Confluence MS Office Git Java 8 Spring Boot JAX-RS 2.0 (Jersey) JPA 2 JMS 2 ESB Apache Camel
Bank
Nürnberg
1 Jahr
2016-02 - 2017-01

Design, Entwicklung von Basis-Komponenten, REST-Architektur

Technischer Architekt Idea IntelliJ 15.x Java 8 Sparx Enterprise Architect ...
Technischer Architekt
  • Design, Entwicklung und Dokumentation Basis-Komponenten unter Berücksichtigung von Clean-Code-Prinzipien, d.h. Erstellung des technischen Domainmodells der Basis-Entitäten incl. REST-Service Implementierung
  • Querschnittliche Architekturthemen: REST-Service-Architektur (RMM Level 2), Java + JSON Serialization, Optimierung der Modul- und Package-Dependencies,
  • Unterstützung der Entwickler speziell bei Java EE und Clean Code Fragestellungen, Durchführung Code-Reviews.
  • Design und Entwicklung eines generischen Rest-Clients unter Berücksichtigung von Clean-Code-Prinzipien
Idea IntelliJ 15.x Java 8 Sparx Enterprise Architect Git Jboss Arquillian Team Foundation Server (TFS) weiteres Projektumfeld: BigData-Technologien: Apache HBase Apache Spark (in diesem Bereich jedoch nicht selbst programmiert sondern nur Verständnis des Technologiestacks erarbeitet) Apache HttpComponents / HttpClient
Markforschungsunternehmen
Nürnberg
1 Jahr 10 Monate
2014-05 - 2016-02

Ablösung Altsystem, Anforderungsanalyse, Architektur, Prototyping, Lead-Developer, Clean-Code-Coaching, BPMN

Architekt, Lead-Developer, Requirements-Engineer Netbeans 8.x JDK 1.8 JEE7 ...
Architekt, Lead-Developer, Requirements-Engineer
  • Fachliche Anforderungsanalyse anhand von Usecases und Requirements.
  • Definition der IT-Architektur mit Java EE7 und einer Business-Process-Engine (Erstellung eines IT-Architektur-Dokuments und diverser Prototypen)
  • Zerlegung einer monolithischen Altanwendung in Domains / Microservices
  • Design der Komponenten und Schnittstellen mit XSD/XML/REST und EJBs
  • Einführung einer SCRUM-basierten, agilen Vorgehensweise
  • Erstellung eines Entwicklerleitfadens incl. Definition des Softwareentwiklungsprozesses und Java-Programmierrichtlinien
  • Durchführung von Inhouse-Schulungen zu Java EE, BPMN / Activiti, Clean-Code, TDD, Maven
  • Analyse und Design der einzelnen Arbeitspakete für die Entwickler
  • Coaching der Entwickler bei der Umsetzung der Arbeitspakete
  • Review, Anpassung und Weiterentwicklung des Datenmodells incl. Design der Datenzugriffsschicht mit JPA2
  • Design des Administrations-Frontends mit Balsamiq
  • Design und Umsetzung eines Integration-Test-Frameworks incl. Frontend
  • Einführung Java8 Functional Style Programmierung
  • Konfiguration der CI-Umgebung (Git, Jenkins)
Netbeans 8.x JDK 1.8 JEE7 EJB 3.1 JSF 2.2 mit Primefaces 5 JMS 2.0 Glassfish 4.x Jboss Wildfly 8.2 Magic Draw 18 Activiti 5.16 Junit Mockito Sonar Qube Jenkins Jira Git Clean Code REST Balsamiq SOAP UI Linux
Telekommunikationsunternehmen
4 Monate
2014-01 - 2014-04

Umsetzung Testtools

Lead-Developer Eclipse JDK1.6 JEE6 ...
Lead-Developer
  • Im selben Projekt Umstieg in ein neues Teilprojekt als Lead-Developer
  • Umsetzung des im vorherigen Zeitraum konzipierten, fachlichen Testtools.
Eclipse JDK1.6 JEE6 Jboss 7.x JSF 2.x CDI EJB 3.1 MagicDraw Junit Mockito JPA2 Java DB (Derby) Sonar Clean Code
Versicherung
9 Monate
2013-04 - 2013-12

Konzeption von Architekturänderungen und Redesigns

Architekt Eclipse JDK1.6 JEE6 ...
Architekt
  • Im selben Projekt Aufstieg zum Architekt für alle Java-Teilprojekte.
  • Konzeption von Architekturänderungen und Redesigns für eine Version 2.0. Definition / Einführung einer an den Kunden angepassten, an SCRUM angelehnten, agilen Vorgehensweise.
  • Durchführung von Code-Reviews, Erarbeitung von Refactoring-Maßnahmen-Paketen auf Basis der Code-Reviews
  • Durchführung beispielhafter Refactorings gemäß "Clean-Code" und TDD, Konzeption eines fachlichen Testtools für automatisierte Beitragsberechnungstests mit Balsamiq und UML
Eclipse JDK1.6 JEE6 Jboss 7.x Jboss Drools JSF 2.x CDI EJB 3.1 MagicDraw Junit Mockito JPA2 Java DB (Derby) Balsamiq Sonar Clean Code
Versicherung
1 Jahr 5 Monate
2011-11 - 2013-03

Architektur und Entwicklung

Architekt und Lead-Designer-Developer Eclipse JDK1.6 JEE6 ...
Architekt und Lead-Designer-Developer
  • Architekt und Lead-Designer-Developer im Frontend-Teilprojekt zur Erstellung eines generischen Webfrontends (JSF 2.x) für eine businesskritische Verkaufssoftware für den Vertrieb (Außendienst / Vermittler).
  • Definition Architektur, Design, Arbeitspakete für das Teilprojekt im Rahmen von Java EE6, Abstimmung mit dem Fachbereich, der Projektleitung und Coaching der Team-Mitglieder, UML-Modellierung, Implementierung mit Java / JEE6, Usecaseanalyse / Maskendefinitionen und Maskenfluss, Definition der generischen Maskeninformations-Schnittstelle, dabei Abstimmung mit dem Backend-Teilprojekt
Eclipse JDK1.6 JEE6 Jboss 7.x JSF 2.x CDI EJB 3.1 MagicDraw Junit Mockito JPA2 Java DB (Derby) Balsamiq
Versicherung
7 Monate
2011-04 - 2011-10

Design und Entwicklung

Eclipse Oracle MagicDraw ...
  • Design und Entwicklung einer Callcenter-Anwendung (Middleware, Backend) in einem Entwicklungsteam von ca. 10 Mann.
  • Coaching der Usecase-Analyse, UML-Modellierung, Datenmodell-Erstellung, Implementierung mit Java
Eclipse Oracle MagicDraw JBoss JDK1.6 XML/XSD Junit Hibernate Spring
Bank
1 Jahr 7 Monate
2010-04 - 2011-10

Analyse, Design und Implementierung einer zentralen Prozesssteuerungskomponente

Java 1.5 Eclipse 3.4 Magic Draw 16.5 ...

Kontext:

Einführung einer generischen Prozess-Steuerungskomponente auf Basis einer Business Process Engine (BPE) zum Management des Lebenszyklus von fachlichen Prozessen. Integration der Prozesssteuerung in die Systemlandschaft d.h. in den Rahmen der bestehenden Middleware.

 

Aufgaben:

  • Durchführung diverser IT-Konzeptionen in Abstimmung mit den internen Kollegen des selben Teilprojekts sowie den anderen Teilprojekten (Business-Analysten, Fachservice-Entwickler, Frontend-Entwickler, BPE-Entwickler), dabei Teilnahme an diversen Workshops.
  • Implementierung des generischen Prozess-Steuerungsservices
  • Durchführung der IT-Konzeption für diverse Erweiterungen im Rahmen einer 2. Leistungsstufe, dabei Abstimmung mit den beteiligten IT-Teams und Durchführung von Review-Meetings (standortübergreifend zwischen Nürnberg und Frankfurt).
  • Implementierung diverser Erweiterungen, Analyse und Behebung von Softwarefehlern.
Java 1.5 Eclipse 3.4 Magic Draw 16.5 Spring-Framework Hibernate Jira CVS JBoss jBPM Junit
5 Monate
2010-11 - 2011-03

Umsetzung eines Fachkonzepts in eine Usecase-Analyse

Magic Draw UML Eclipse ...

Federführende, prototypische Usecase-Analyse auf Basis des Fachkonzepts sowie dem Ist-Stand der betreffenden IT-Systeme, damit neue Features künftig auf Basis der Usecases besser eingeplant und abgeschätzt werden können. Vorgehensweise basiert auf den „Effective Usecases“ von A. Cockburn und konnte beim Kunden als neuer Standard etabliert werden.

Magic Draw UML Eclipse TOAD Oracle MS Word
Bank
1 Monat
2010-03 - 2010-03

Java Entwicklung / Unterstützung des Core-Teams bei der Java 5 / Java 6 Migration

Eclipse Java 5 Java 6 ...
  • Zur Sicherstellung von Source-Kompatibilität mussten "Dynamic Proxies" für die Klassen entwickelt werden, die sich von in Java 6 geänderten Interfaces ableiten - mit dem Ziel, den neuen Code sowohl unter Java 5 als auch unter Java 6 compilier- und ausführbar zu haben.
  • Testing der Lösung mit "Out-of-Server" Unittest und innerhalb des JBoss5 Applicationservers (incl. Setup eines lokalen JBoss 5).
Eclipse Java 5 Java 6 JBoss 5
Bank
1 Monat
2010-02 - 2010-02

Umsetzung des Backends des Prototypen

UML2 Magic Draw 16.5 Java 5 ...

Umsetzung des Backends des Prototypen mit Java EE5: EJB3, JPA, Glassfish 2.1, MySQL, JDK 1.6, Ant, Maven2, Web-Adminfrontend mit Servlets/JSPs/JSTL, Testfrontend mit Eclipse RCP (SWT/JFace)

UML2 Magic Draw 16.5 Java 5 JEE5 EJB3 Adobe Dataservices Glassfish 2.1
Kommunale Einrichtung
3 Monate
2009-12 - 2010-02

Konzeption

UML2 Magic Draw 16.5 Java 5 ...

Konzeption (Architektur, Design) und Entwicklung eines selbstgebauten Finanzierungsdaten-Datawarehouse als JEE5 Prototyp "Neuer, budgetorienter Einstieg in die BMW Homepage"

  • Konzeption mit UML 2: Aktivitätsdiagramme, Deploymentdiagramm, Klassendiagramme
  • Tool- und Frameworkauswahl
  • Konzeption des Datenmodells
  • Design der Anwendungsschichten und APIs (Facade, Services, DAOs)
  • Design-Patterns und Design-Entscheidungen: DTO vs. Entity-Pattern, Dependency-Injection (Spring vs. EJB-Injection), Interceptor-Pattern, Generic DAO Pattern, Eager- vs. Lazy-Loading, Cascading, Threadlocal, Errorhandling etc...
  • Konzeption des asynchronen Messagings (JMS)
  • Umsetzung in Java als Java EE5 Applikation.
  • Codequalitätssicherung mit Checkstyle und Jdepend
UML2 Magic Draw 16.5 Java 5 JEE5 EJB3 Adobe Dataservices Glassfish 2.1 Magic Draw 16.6 Eclipse 3.4 + 3.5 Glassfish Servlets JSPs EJB3 Message-Driven Beans (MDB) JPA/Hibernate MySQL SVN Java 1.6 JEE5 Ant
Bank
3 Monate
2009-09 - 2009-11

Umsetzung des Backends des Prototypen

UML2 Magic Draw 16.5 Java 5 ...

Umsetzung des Backends des Prototypen mit Java EE5: EJB3, JPA, Glassfish 2.1, MySQL, JDK 1.6, Ant, Maven2, Web-Adminfrontend mit Servlets/JSPs/JSTL, Testfrontend mit Eclipse RCP (SWT/JFace)

UML2 Magic Draw 16.5 Java 5 JEE5 EJB3 Adobe Dataservices Glassfish 2.1
Kommunale Einrichtung
7 Monate
2009-03 - 2009-09

Redesign einer bestehenden Anwendung

Websphere 5.1 WSAD Java 1.4 ...

Redesign einer bestehenden Anwendung wg. Integration eines neues Backend-Systems (Host) und eines Upgrades von Middleware-Services. Technische Analyse des Ist-Standes und der erforderlichen Änderungen. Umsetzung in der Anwendung als auch in den Middleware-Services.

Websphere 5.1 WSAD Java 1.4 Spring
Bank
2 Monate
2009-06 - 2009-07

Konzeption

UML2 Magic Draw 16.5 Java 5 ...

Konzeption (Architektur und Design) eines Prototypen für eine Anwendung zur Erfassung von Klientendaten

wahlweise per Dialog oder PDF-Formular.

  • Fachliches Design: Usecase-Analyse, Domain-Modell Erstellung, GUI-Grobkonzept mit "Clickdummy" (Netbeans GUI Builder)
  • Technisches Design des Java Backends (JEE5, EJB3)
  • Analyse der Technologien für den Zugriff von Client auf Server (Flex-Client, Adobe DataServices)
  • Anfertigen von detaillierten UML2-Deployment-Diagrammen für verschiedene Technologie-Varianten, Rollen-Rechte Konzeption mit JEE5 Security
  • Tool- und Frameworkauswahl
  • Konzeption des Datenmodells
  • Design der Anwendungsschichten und APIs (Facade, Services, DAOs)
  • Design-Patterns und Design-Entscheidungen: DTO vs. Entity-Pattern, Dependency-Injection (Spring vs. EJB-Injection), Interceptor-Pattern, Generic DAO Pattern, Eager- vs. Lazy-Loading, Cascading, Threadlocal, Errorhandling etc...
  • Codequalitätssicherung mit Checkstyle und Jdepend
UML2 Magic Draw 16.5 Java 5 JEE5 EJB3 Adobe Dataservices Glassfish 2.1
Kommunale Einrichtung

Aus- und Weiterbildung

Aus- und Weiterbildung

1996

Studium der Informatik (technischer Zweig) an der FH Regensburg

Abschluss zum Diplom Informatiker (FH)

2005

  • Zertifizierung zum OMG-Certified UML Professional (fundamental)
  • Zertifizierung zum OMG-Certified UML Professional (intermediate)

 

2007

  • Zertifizierung ITIL Foundation V2

Position

Position

  • Erfahrung als Lead-Developer mit Clean-Code-Coaching incl. Durchführung von Code Reviews, Definition des Software-Designs und der Entwickler-Arbeitspakete.
  • mehrj. Erfahrung als SW-Architekt/Solution Architekt und Requirements-Engineer, Langjährige Erfahrung in der Durchführung von Workshops mit Fachbereichen: Ermittlung von Requirements gemäß Sophisten und Erstellung Usecases nach Cockburn und/oder Geschäftsprozess-Modellierung mit BPMN2, Technische Modellierung mit UML2

Kompetenzen

Kompetenzen

Top-Skills

Fachliche Konzeption / Anforderungsermittlung mit Durchführung von Workshops Coaching von Software-Entwicklern (Clean-Code, TDD) Architektur- Design und Entwicklung im Java EE Umfeld Requirements-Engineering Domain-driven Design UseCases Refactoring Microservices

Produkte / Standards / Erfahrungen / Methoden

Activiti 5.16
Angular
Angular 10
Apache Camel
Apache Cayenne
Balsamiq
Camunda BPMN-Modeler
CDI
Clean Code
Confluence
Continuous Integration
Docker
Domain Driven Design
Eclipse
Eclipse Microprofile
EJB 3.1
Enterprise Architect
ESB
Git
Glassfish 4.x
Idea Intellij
Idea IntelliJ 15.x
JAX-RS
Jboss Arquillian
Jboss Wildfly 8.2
JDK
JEE7
Jenkins
Jira
JMS 2.0
JSF 2.2 mit Primefaces 5
Junit
Keycloak
Kubernetes
Eigenständige Einarbeitung (kein Einsatz im Projekt)
Magic Draw
Magic Draw 18
Maven
Maven Buildmanagement
Microservice-Architecture
Mockito
MS Office
Netbeans 8.x
NetBeansIDE
OAuth2
Open API
OpenID Connect
Openliberty
Play2
Prime NG
PrimeNG
SOAP UI
Sonargraph
SonarQube
Sparx Enterprise Architect
Spring Boot
Swagger
Team Foundation Server (TFS)
UML2
Visual Studio Code
Zammad

Erfahrungen:

  • IT-Konzeption und Entwicklung von Java/JEE- basierten Anwendungen inkl. Integration von Business Process Engines.
  • Java-Entwicklung gemäß "Clean-Code"-Prinzipien und Test-Driven Development (TDD)
  • Koordination und Coaching von Java-Entwicklern als Lead-Developer von Teilprojektteams
  • Domain-Driven Design für Microservice-artige Architekturen
  • Business Analyse / Requirements Engineering (nach Sophisten) / Usecase Analyse (nach Cockburn)
  • Software-Design mit UML2
  • Frontend-Entwicklung mit JSF 2.1 und Angular 6-8

 

Methoden:

  • Cleancode-Richtlinien, TDD, SOLID Principlies
  • Usecase basierte Analyse, Usecasebeschreibungen (nach A. Cockburn)
  • UML, UML2
  • Agile Vorgehensweisen (SCRUM, Crystal Clear)

 

Produkte:

  • IntelliJ IDE
  • Netbeans IDE
  • Eclipse IDE
  • Magic Draw (UML Modellierung)
  • Sonargraph
  • Glassfish
  • JBoss Wildfly
  • JBoss EAP
  • Oracle Weblogic 12
  • Activiti 5.16
  • Sonarqube
  • Balsamiq
  • XML Spy
  • BEA Weblogic 5.1/6.1/8.1
  • Testdirector / Quality Center
  • JPA / Hibernate / eclipselink
  • Spring
  • Docker / Kubernetes

 

Standards:

  • Java EE 6/7 (JSF 2.x,EJB3.x,JPA, CDI, JMS)
  • Jakarta EE
  • XML/XSD
  • JSON
  • BPMN2
  • REST/HTTP
  • SSL/TLS
  • SOAP/Webservice/WSDL

Betriebssysteme

Linux
MS-DOS
SUN OS, Solaris
Unix
Windows

Programmiersprachen

Java
seit ca. 1999 als Haupt-Sprache
Java 8
Java EE 7
Java9
JavaScript
JDK 1.8

Datenbanken

Apache Derby
Cayenne Modeler
H2
JDBC
MongoDB
MySQL
ODBC
Oracle
Als Developer, nicht als Admin
PostgreSQL
SQL

Datenkommunikation

EJB
Remote + Local EJB
HTTP
incl. HTTPS
Messaging
JMS-basiert
REST
Jax-RS 1.x, 2.x
Router
Konfig. von kleineren Cisco-Routern (1997-1999)
SMTP
TCP/IP

Hardware

PC
SUN

Branchen

Branchen

Bank

  • Architektur-Redesign Backendsysteme f. Finanzierungs- und Leasing-Kalkulator (Pilot Deutschland, danach EU-Rollout)
  • Integrationsprojekte Finanzierung- und Leasing mit Internet Fahrzeug Konfigurator (Pilot Deutschland, danach EU-Rollout)

 

Versicherung

  • Teilprojekt-Tech-Lead und Architekt einer Vermittler-Applikation

 

Telekommunikation

  • Architekt und Lead-Entwickler einer prozessgesteuerten JEE-Anwendung mit Abbildung der Kerngeschäftsprozesse in BPMN2

 

Internet

  • EPayment, Design + Entwicklung eines Zahlungssystems über das Internet (Kreditkarten + Lastschrift)
  • Design + Entwicklung eines Content-Management Systems für Sportvereine (eigenes Gewerbe)

 

ISP

  • Systemadministration "managed customer server" unter Sun Solaris, Linux und Windows

Einsatzorte

Einsatzorte

Deutschland, Österreich
derzeit Full-Remote / nur punktuelle Vorort-Präsenz stark bevorzugt (insofern sollte der Standort des Kunden sekundär sein)
möglich

Projekte

Projekte

1 Jahr 4 Monate
2023-01 - 2024-04

Durchführung von Proof-of-Concepts im Umfeld der Kfz-Steuer

Software-Architekt Java 11 UML 2.0 BPMN
Software-Architekt

Durchführung von zwei Proof-of-Concepts zur Ablösung veralteter Komponenten im Umfeld der Kfz-Steuer:

  • Evaluierung verschiedener Lösungsalternativen jeweils durch Implementierung eines Prototypen
  • Definition der zugehörigen Ziel-Architektur für die neu zu entwickelnden Applikationen
  • Erstellung von zwei jeweils ca. 90-seitigen Ergebnis-Dokumenten
  • Durchführung von Last- und Performancetests mit den Prototypen
  • Durchführung von Präsentationen für den Auftraggeber und den Endkunden
  • PoC 1: Ablösung von IBM ODM durch eine DMN-basierte Lösung (Camunda DMN, Drools DMN)
  • PoC 2: Ablösung IBM Process Server durch Spring Integration mit JMS und/oder Camunda 8


Camunda Drools Spring Integration Spring Atlassian Confluence ActiveMQ Eclipse Maven Spring Boot
Java 11 UML 2.0 BPMN
ITZ Bund
Straubing
9 Monate
2022-04 - 2022-12

Neuentwicklung/Ablösung eines Stammdatensystems

Architekt und Lead-Entwickler UML 2.0 Java 11 Java EE ...
Architekt und Lead-Entwickler

Phase 1:

  • Konzeption eines Adapters für die Anbindung des alten Stammdatensystems an die neue Portal-IT-Landschaft des BzSt
  • Architekturdokumentation gemäß ARC42
  • Erstellung der Arbeitspakete für die Entwickler
  • Coaching der Entwickler bzgl. Clean-Code
  • Durchführung von Code-Reviews

Phase 2:

  • Review der Fachkonzepte und fachlichen Datenmodelle
  • Architektur und Design des neuen Stammdatensystems
  • Design des technischen Datenmodells auf Basis von Domain-driven Design
  • Analyse der Schnittstellen des Altsystems
  • Abstimmung der neuen Architektur mit den Architekten der Umsysteme und den Gesamtprojekt-Architekten
  • Architekturdokumentation gemäß ARC42
  • Erstellung der Arbeitspakete für die Entwickler
  • Coaching der Entwickler
JBoss Application Server Atlassian JIRA Atlassian Confluence JDK Message Queuing IntelliJ
UML 2.0 Java 11 Java EE CDI JMS Domain-driven Design ARC42
Bundeszentralamt für Steuern / ITZ-Bund
Remote
4 Monate
2022-01 - 2022-04

Redesign eines Billingsystems

Architekt und Requirements-Engineer REST UML 2.0 BPMN ...
Architekt und Requirements-Engineer

- Fachliche Analyse IST/SOLL-Stand mit Durchführung von Online-Analyse-Workshops

- Design von REST-Services a) als Ersatz der direkten DB-Zugriffe des Billingsystems und b) zur Eliminierung von vielen Hartcodierungen im Billingsystem

- Integration der REST-Services in die bestehende Applikationslandschaft / Zuordnung der Services zu den passenden Bounded Contexts

- Bereitstellung der REST-Schnittstellen als Swagger/OpenApi3 Spezifikation

- Erstellung UML Diagramme (Usecases, Komponenten)

- Mockups für neue Billing-Administrations-UI (Balsamiq)

- Aufwandsabschätzung für Migration von Activiti BPM nach Camunda

Java 8 WildFly Application Server PostgreSQL NetBeans Activiti OpenApi3 Atlassian Confluence Enterprise Architect Balsamiq
REST UML 2.0 BPMN Domain Modelling
G-Fit Gmbh
Remote
11 Monate
2021-02 - 2021-12

Neuentwicklung einer Verwaltungs- und Abrechnungsapplikation im Baugewerbe

Senior Backend-Entwickler mit Architekturaufgaben Java BPMN CDI
Senior Backend-Entwickler mit Architekturaufgaben
  • Entwicklung eines Java EE8-basierten Backends inkl. Camunda Business-Process-Engine
    • REST-Service-Design mit Swagger/Yaml
    • Business-Prozess Design und Implementierung
    • Datenbank-Zugriff mit JPA2
  • Definition von Architekur- und Design-Rahmenbedingungen unter Berücksichtigung von Domain-driven Design Prinzipien (Bounded Contexts, Aggregates)
  • Vorgehensweise nach Scrum
  • Abstimmung der Anforderungen mit den Business-Analysten
Camunda BPM IntelliJ IDEA Jboss EAP
Java BPMN CDI
Full Remote
3 Monate
2020-12 - 2021-02

Umsetzung eines Hundeportals

Fullstack-Entwickler Java 1.8 JavaScript
Fullstack-Entwickler
  • Design und Umsetzung des Datenmodells (ER-Diagramm, Cayenne Modeler)
  • Umsetzung / Programmierung Frontend mit Play2
  • Umsetzung / Programmierung Backend mit Java 8, Play2-Framework, Apache Cayenne
  • Anbindung des here.com Geocoding Services für eine Umkreissuche
  • Umsetzung der Bezahlfunktion mit Paypal
Eclipse Postgis Postgres sbt Apache Cayenne MongoDB Docker
Java 1.8 JavaScript
mackoy consulting
Homeoffice
3 Monate
2020-10 - 2020-12

Design und Entwicklung einer Angebots- und Vertragsverwaltung

Fullstack-Entwickler Java PrimeNG Angular ...
Fullstack-Entwickler
  • Ermittlung der fachlichen Anforderungen mit Usecases und UI-Mockups (Balsamiq)
  • Design und Umsetzung des Datenmodells (ER-Diagramm, Cayenne Modeler)
  • Umsetzung / Programmierung Frontend mit Angular und PrimeNG
  • Umsetzung / Programmierung Backend mit Java 8, Play2-Framework, Apache Cayenne
  • Zentrale Definition der REST-Services mit Swagger incl. Generierung der Interfaces und Value-Objekte mit Swagger Codegen
  • Anbindung des Systems an das Zammad Ticketsystem per REST
  • Anbindung des Systems an das Easybill-System per REST

Apache Cayenne Play2 JDK 1.8 Eclipse Angular 10 Visual Studio Code PostgreSQL MongoDB Swagger Cayenne Modeler Zammad
Java PrimeNG Angular REST SQL Open API
Seefeld und Remote
6 Monate
2020-04 - 2020-09

Design und Entwicklung einer E-Commerce Anwendung

Fullstack Entwickler und Architekt Angular Eclipse Microprofile OpenID Connect ...
Fullstack Entwickler und Architekt

Design und Entwicklung einer E-Commerce Anwendung zur Automatisierung von Java 9 Modul-Konfigurationen (Jigsaw) in hexagonalen Microservice-Architekturen (Webbasiertes Entwickler-Tool).

Hinweis: Dies ist ein eigenes Lernprojekt, das ich in meiner Freizeit wenn möglich zu einer real genutzten, gewerblichen E-Commerce-Anwendung ausbauen möchte.

  • Angular 9 (Frontend)
  • Keycloak als Backend zur Authentifizierung und Authorisierung
  • Java Backend mit Jax-RS REST Services als Backend / Eclipse Microprofile auf Openliberty Server

Balsamiq Visual Studio Code NetBeansIDE JDK Keycloak Prime NG Openliberty
Angular Eclipse Microprofile OpenID Connect OAuth2 JAX-RS CDI Java9
Eigenes Gewerbe in Vorbereitung
Straubing
1 Jahr 9 Monate
2019-01 - 2020-09

Refactoring / Modularisierung eines bestehenden Monolithen

System-Architekt / Software-Architekt Domain Driven Design UML2 Java ...
System-Architekt / Software-Architekt
  • Analyse des > 10 Jahre alten monolithischen, Java EE7-basierten Systems
  • Definition und Abstimmung der Zielarchitektur
    • Einführung von Anwendungsschichten und neuen Musterelementen
    • Restrukturierung der bestehenden Module / fachlichen Modulcluster zur Reduzierung der Abhängigkeiten
    • Identifikation und Abstimmung von Refactorings
    • Aufsplittung des Monolithen in 8 separate Deployment-Units
  • Durchführung von Refactorings
  • Einführung von Maven als Build-System (Ablösung Ant/Ivy)
  • Knowhow-Transfer zum Entwicklerteam bzgl. Software-Architektur, Testing/TDD, Maven, Sonargraph, Domain-driven Design, Clean-Code
  • Coaching der Entwickler bei der Umsetzung der Refactorings

Enterprise Architect Sonargraph Eclipse Maven SonarQube Jenkins
Domain Driven Design UML2 Java Microservice-Architecture Maven Buildmanagement Continuous Integration
Landesamt für Digitalisierung, Breitband und Vermessung
München
4 Monate
2018-09 - 2018-12

Architektur eines Prototypen und Domain-driven Design

Architekt Domain Driven Design UML2 Java ...
Architekt
  • Design von Domain-Modellen / Bounded Contexts / Aggregates
  • Design des Komponentenmodells für den Prototypen
  • Design der Datenflüsse und Abläufe zwischen den Komponenten
  • Design von APIs anhand von UI-Mockups
  • Design der physischen Deployment-Struktur unter Berücksichtigung der Amazon Cloud (EKS) / Kubernetes
Enterprise Architect Kubernetes
Domain Driven Design UML2 Java Microservice-Architecture
Marktforschungsunternehmen
Nürnberg
1 Monat
2018-08 - 2018-08

Beratung / Evaluierung

Beratung / Evaluierung zum Upgrade der verwendeten Software:

  • Evaluierung Upgrade von Java 8 auf Java 10
  • Evaluierung Upgrade der Business Process Engine "Activiti" von 5.16 auf 5.22 oder 6.x
  • Evaluierung Upgrade Jboss Wildfly von 8.2.0.Final auf 13.0.0.Final
  • Evaluierung aller Upgrades im Zusammenspiel
Telekommunikationsunternehmen (selber Kunde wie im Projekt von 05/2014 - 02/2016)
1 Jahr 6 Monate
2017-02 - 2018-07

Analyse und Architektur New KYC

Business Analyst / Solution Architekt / Software-Architekt Camunda BPMN-Modeler Sparx Enterprise Architect Confluence ...
Business Analyst / Solution Architekt / Software-Architekt

Als Business Analyst:

Erstellung von Business Usecases, Business Requirements, Durchführung/Leitung von fachlichen Workshops

Als Solution Architect:

Review von Fachkonzepten, Durchführung/Leitung von technischen Workshops, Erstellung von IT-Konzepten zur Integration eines neuen Scoring-Systems und einer neuen Business-Process-Engine in die bestehende Systemlandschaft mit der Zielarchitektur einer stark asynchronen Entkopplung. Erstellung UML- und BPMN2-Modelle.

Als Software-Architekt:

Design eines neuen Scoring-Systems, Design der externen System-API, Schnittstelle zum Entwickler-Team, Umsetzung der Requirements in technische Arbeitspakete, Modularisierung des Systems, Design des ER-Modells. Vorgaben zur Code-Qualität.

Camunda BPMN-Modeler Sparx Enterprise Architect Confluence MS Office Git Java 8 Spring Boot JAX-RS 2.0 (Jersey) JPA 2 JMS 2 ESB Apache Camel
Bank
Nürnberg
1 Jahr
2016-02 - 2017-01

Design, Entwicklung von Basis-Komponenten, REST-Architektur

Technischer Architekt Idea IntelliJ 15.x Java 8 Sparx Enterprise Architect ...
Technischer Architekt
  • Design, Entwicklung und Dokumentation Basis-Komponenten unter Berücksichtigung von Clean-Code-Prinzipien, d.h. Erstellung des technischen Domainmodells der Basis-Entitäten incl. REST-Service Implementierung
  • Querschnittliche Architekturthemen: REST-Service-Architektur (RMM Level 2), Java + JSON Serialization, Optimierung der Modul- und Package-Dependencies,
  • Unterstützung der Entwickler speziell bei Java EE und Clean Code Fragestellungen, Durchführung Code-Reviews.
  • Design und Entwicklung eines generischen Rest-Clients unter Berücksichtigung von Clean-Code-Prinzipien
Idea IntelliJ 15.x Java 8 Sparx Enterprise Architect Git Jboss Arquillian Team Foundation Server (TFS) weiteres Projektumfeld: BigData-Technologien: Apache HBase Apache Spark (in diesem Bereich jedoch nicht selbst programmiert sondern nur Verständnis des Technologiestacks erarbeitet) Apache HttpComponents / HttpClient
Markforschungsunternehmen
Nürnberg
1 Jahr 10 Monate
2014-05 - 2016-02

Ablösung Altsystem, Anforderungsanalyse, Architektur, Prototyping, Lead-Developer, Clean-Code-Coaching, BPMN

Architekt, Lead-Developer, Requirements-Engineer Netbeans 8.x JDK 1.8 JEE7 ...
Architekt, Lead-Developer, Requirements-Engineer
  • Fachliche Anforderungsanalyse anhand von Usecases und Requirements.
  • Definition der IT-Architektur mit Java EE7 und einer Business-Process-Engine (Erstellung eines IT-Architektur-Dokuments und diverser Prototypen)
  • Zerlegung einer monolithischen Altanwendung in Domains / Microservices
  • Design der Komponenten und Schnittstellen mit XSD/XML/REST und EJBs
  • Einführung einer SCRUM-basierten, agilen Vorgehensweise
  • Erstellung eines Entwicklerleitfadens incl. Definition des Softwareentwiklungsprozesses und Java-Programmierrichtlinien
  • Durchführung von Inhouse-Schulungen zu Java EE, BPMN / Activiti, Clean-Code, TDD, Maven
  • Analyse und Design der einzelnen Arbeitspakete für die Entwickler
  • Coaching der Entwickler bei der Umsetzung der Arbeitspakete
  • Review, Anpassung und Weiterentwicklung des Datenmodells incl. Design der Datenzugriffsschicht mit JPA2
  • Design des Administrations-Frontends mit Balsamiq
  • Design und Umsetzung eines Integration-Test-Frameworks incl. Frontend
  • Einführung Java8 Functional Style Programmierung
  • Konfiguration der CI-Umgebung (Git, Jenkins)
Netbeans 8.x JDK 1.8 JEE7 EJB 3.1 JSF 2.2 mit Primefaces 5 JMS 2.0 Glassfish 4.x Jboss Wildfly 8.2 Magic Draw 18 Activiti 5.16 Junit Mockito Sonar Qube Jenkins Jira Git Clean Code REST Balsamiq SOAP UI Linux
Telekommunikationsunternehmen
4 Monate
2014-01 - 2014-04

Umsetzung Testtools

Lead-Developer Eclipse JDK1.6 JEE6 ...
Lead-Developer
  • Im selben Projekt Umstieg in ein neues Teilprojekt als Lead-Developer
  • Umsetzung des im vorherigen Zeitraum konzipierten, fachlichen Testtools.
Eclipse JDK1.6 JEE6 Jboss 7.x JSF 2.x CDI EJB 3.1 MagicDraw Junit Mockito JPA2 Java DB (Derby) Sonar Clean Code
Versicherung
9 Monate
2013-04 - 2013-12

Konzeption von Architekturänderungen und Redesigns

Architekt Eclipse JDK1.6 JEE6 ...
Architekt
  • Im selben Projekt Aufstieg zum Architekt für alle Java-Teilprojekte.
  • Konzeption von Architekturänderungen und Redesigns für eine Version 2.0. Definition / Einführung einer an den Kunden angepassten, an SCRUM angelehnten, agilen Vorgehensweise.
  • Durchführung von Code-Reviews, Erarbeitung von Refactoring-Maßnahmen-Paketen auf Basis der Code-Reviews
  • Durchführung beispielhafter Refactorings gemäß "Clean-Code" und TDD, Konzeption eines fachlichen Testtools für automatisierte Beitragsberechnungstests mit Balsamiq und UML
Eclipse JDK1.6 JEE6 Jboss 7.x Jboss Drools JSF 2.x CDI EJB 3.1 MagicDraw Junit Mockito JPA2 Java DB (Derby) Balsamiq Sonar Clean Code
Versicherung
1 Jahr 5 Monate
2011-11 - 2013-03

Architektur und Entwicklung

Architekt und Lead-Designer-Developer Eclipse JDK1.6 JEE6 ...
Architekt und Lead-Designer-Developer
  • Architekt und Lead-Designer-Developer im Frontend-Teilprojekt zur Erstellung eines generischen Webfrontends (JSF 2.x) für eine businesskritische Verkaufssoftware für den Vertrieb (Außendienst / Vermittler).
  • Definition Architektur, Design, Arbeitspakete für das Teilprojekt im Rahmen von Java EE6, Abstimmung mit dem Fachbereich, der Projektleitung und Coaching der Team-Mitglieder, UML-Modellierung, Implementierung mit Java / JEE6, Usecaseanalyse / Maskendefinitionen und Maskenfluss, Definition der generischen Maskeninformations-Schnittstelle, dabei Abstimmung mit dem Backend-Teilprojekt
Eclipse JDK1.6 JEE6 Jboss 7.x JSF 2.x CDI EJB 3.1 MagicDraw Junit Mockito JPA2 Java DB (Derby) Balsamiq
Versicherung
7 Monate
2011-04 - 2011-10

Design und Entwicklung

Eclipse Oracle MagicDraw ...
  • Design und Entwicklung einer Callcenter-Anwendung (Middleware, Backend) in einem Entwicklungsteam von ca. 10 Mann.
  • Coaching der Usecase-Analyse, UML-Modellierung, Datenmodell-Erstellung, Implementierung mit Java
Eclipse Oracle MagicDraw JBoss JDK1.6 XML/XSD Junit Hibernate Spring
Bank
1 Jahr 7 Monate
2010-04 - 2011-10

Analyse, Design und Implementierung einer zentralen Prozesssteuerungskomponente

Java 1.5 Eclipse 3.4 Magic Draw 16.5 ...

Kontext:

Einführung einer generischen Prozess-Steuerungskomponente auf Basis einer Business Process Engine (BPE) zum Management des Lebenszyklus von fachlichen Prozessen. Integration der Prozesssteuerung in die Systemlandschaft d.h. in den Rahmen der bestehenden Middleware.

 

Aufgaben:

  • Durchführung diverser IT-Konzeptionen in Abstimmung mit den internen Kollegen des selben Teilprojekts sowie den anderen Teilprojekten (Business-Analysten, Fachservice-Entwickler, Frontend-Entwickler, BPE-Entwickler), dabei Teilnahme an diversen Workshops.
  • Implementierung des generischen Prozess-Steuerungsservices
  • Durchführung der IT-Konzeption für diverse Erweiterungen im Rahmen einer 2. Leistungsstufe, dabei Abstimmung mit den beteiligten IT-Teams und Durchführung von Review-Meetings (standortübergreifend zwischen Nürnberg und Frankfurt).
  • Implementierung diverser Erweiterungen, Analyse und Behebung von Softwarefehlern.
Java 1.5 Eclipse 3.4 Magic Draw 16.5 Spring-Framework Hibernate Jira CVS JBoss jBPM Junit
5 Monate
2010-11 - 2011-03

Umsetzung eines Fachkonzepts in eine Usecase-Analyse

Magic Draw UML Eclipse ...

Federführende, prototypische Usecase-Analyse auf Basis des Fachkonzepts sowie dem Ist-Stand der betreffenden IT-Systeme, damit neue Features künftig auf Basis der Usecases besser eingeplant und abgeschätzt werden können. Vorgehensweise basiert auf den „Effective Usecases“ von A. Cockburn und konnte beim Kunden als neuer Standard etabliert werden.

Magic Draw UML Eclipse TOAD Oracle MS Word
Bank
1 Monat
2010-03 - 2010-03

Java Entwicklung / Unterstützung des Core-Teams bei der Java 5 / Java 6 Migration

Eclipse Java 5 Java 6 ...
  • Zur Sicherstellung von Source-Kompatibilität mussten "Dynamic Proxies" für die Klassen entwickelt werden, die sich von in Java 6 geänderten Interfaces ableiten - mit dem Ziel, den neuen Code sowohl unter Java 5 als auch unter Java 6 compilier- und ausführbar zu haben.
  • Testing der Lösung mit "Out-of-Server" Unittest und innerhalb des JBoss5 Applicationservers (incl. Setup eines lokalen JBoss 5).
Eclipse Java 5 Java 6 JBoss 5
Bank
1 Monat
2010-02 - 2010-02

Umsetzung des Backends des Prototypen

UML2 Magic Draw 16.5 Java 5 ...

Umsetzung des Backends des Prototypen mit Java EE5: EJB3, JPA, Glassfish 2.1, MySQL, JDK 1.6, Ant, Maven2, Web-Adminfrontend mit Servlets/JSPs/JSTL, Testfrontend mit Eclipse RCP (SWT/JFace)

UML2 Magic Draw 16.5 Java 5 JEE5 EJB3 Adobe Dataservices Glassfish 2.1
Kommunale Einrichtung
3 Monate
2009-12 - 2010-02

Konzeption

UML2 Magic Draw 16.5 Java 5 ...

Konzeption (Architektur, Design) und Entwicklung eines selbstgebauten Finanzierungsdaten-Datawarehouse als JEE5 Prototyp "Neuer, budgetorienter Einstieg in die BMW Homepage"

  • Konzeption mit UML 2: Aktivitätsdiagramme, Deploymentdiagramm, Klassendiagramme
  • Tool- und Frameworkauswahl
  • Konzeption des Datenmodells
  • Design der Anwendungsschichten und APIs (Facade, Services, DAOs)
  • Design-Patterns und Design-Entscheidungen: DTO vs. Entity-Pattern, Dependency-Injection (Spring vs. EJB-Injection), Interceptor-Pattern, Generic DAO Pattern, Eager- vs. Lazy-Loading, Cascading, Threadlocal, Errorhandling etc...
  • Konzeption des asynchronen Messagings (JMS)
  • Umsetzung in Java als Java EE5 Applikation.
  • Codequalitätssicherung mit Checkstyle und Jdepend
UML2 Magic Draw 16.5 Java 5 JEE5 EJB3 Adobe Dataservices Glassfish 2.1 Magic Draw 16.6 Eclipse 3.4 + 3.5 Glassfish Servlets JSPs EJB3 Message-Driven Beans (MDB) JPA/Hibernate MySQL SVN Java 1.6 JEE5 Ant
Bank
3 Monate
2009-09 - 2009-11

Umsetzung des Backends des Prototypen

UML2 Magic Draw 16.5 Java 5 ...

Umsetzung des Backends des Prototypen mit Java EE5: EJB3, JPA, Glassfish 2.1, MySQL, JDK 1.6, Ant, Maven2, Web-Adminfrontend mit Servlets/JSPs/JSTL, Testfrontend mit Eclipse RCP (SWT/JFace)

UML2 Magic Draw 16.5 Java 5 JEE5 EJB3 Adobe Dataservices Glassfish 2.1
Kommunale Einrichtung
7 Monate
2009-03 - 2009-09

Redesign einer bestehenden Anwendung

Websphere 5.1 WSAD Java 1.4 ...

Redesign einer bestehenden Anwendung wg. Integration eines neues Backend-Systems (Host) und eines Upgrades von Middleware-Services. Technische Analyse des Ist-Standes und der erforderlichen Änderungen. Umsetzung in der Anwendung als auch in den Middleware-Services.

Websphere 5.1 WSAD Java 1.4 Spring
Bank
2 Monate
2009-06 - 2009-07

Konzeption

UML2 Magic Draw 16.5 Java 5 ...

Konzeption (Architektur und Design) eines Prototypen für eine Anwendung zur Erfassung von Klientendaten

wahlweise per Dialog oder PDF-Formular.

  • Fachliches Design: Usecase-Analyse, Domain-Modell Erstellung, GUI-Grobkonzept mit "Clickdummy" (Netbeans GUI Builder)
  • Technisches Design des Java Backends (JEE5, EJB3)
  • Analyse der Technologien für den Zugriff von Client auf Server (Flex-Client, Adobe DataServices)
  • Anfertigen von detaillierten UML2-Deployment-Diagrammen für verschiedene Technologie-Varianten, Rollen-Rechte Konzeption mit JEE5 Security
  • Tool- und Frameworkauswahl
  • Konzeption des Datenmodells
  • Design der Anwendungsschichten und APIs (Facade, Services, DAOs)
  • Design-Patterns und Design-Entscheidungen: DTO vs. Entity-Pattern, Dependency-Injection (Spring vs. EJB-Injection), Interceptor-Pattern, Generic DAO Pattern, Eager- vs. Lazy-Loading, Cascading, Threadlocal, Errorhandling etc...
  • Codequalitätssicherung mit Checkstyle und Jdepend
UML2 Magic Draw 16.5 Java 5 JEE5 EJB3 Adobe Dataservices Glassfish 2.1
Kommunale Einrichtung

Aus- und Weiterbildung

Aus- und Weiterbildung

1996

Studium der Informatik (technischer Zweig) an der FH Regensburg

Abschluss zum Diplom Informatiker (FH)

2005

  • Zertifizierung zum OMG-Certified UML Professional (fundamental)
  • Zertifizierung zum OMG-Certified UML Professional (intermediate)

 

2007

  • Zertifizierung ITIL Foundation V2

Position

Position

  • Erfahrung als Lead-Developer mit Clean-Code-Coaching incl. Durchführung von Code Reviews, Definition des Software-Designs und der Entwickler-Arbeitspakete.
  • mehrj. Erfahrung als SW-Architekt/Solution Architekt und Requirements-Engineer, Langjährige Erfahrung in der Durchführung von Workshops mit Fachbereichen: Ermittlung von Requirements gemäß Sophisten und Erstellung Usecases nach Cockburn und/oder Geschäftsprozess-Modellierung mit BPMN2, Technische Modellierung mit UML2

Kompetenzen

Kompetenzen

Top-Skills

Fachliche Konzeption / Anforderungsermittlung mit Durchführung von Workshops Coaching von Software-Entwicklern (Clean-Code, TDD) Architektur- Design und Entwicklung im Java EE Umfeld Requirements-Engineering Domain-driven Design UseCases Refactoring Microservices

Produkte / Standards / Erfahrungen / Methoden

Activiti 5.16
Angular
Angular 10
Apache Camel
Apache Cayenne
Balsamiq
Camunda BPMN-Modeler
CDI
Clean Code
Confluence
Continuous Integration
Docker
Domain Driven Design
Eclipse
Eclipse Microprofile
EJB 3.1
Enterprise Architect
ESB
Git
Glassfish 4.x
Idea Intellij
Idea IntelliJ 15.x
JAX-RS
Jboss Arquillian
Jboss Wildfly 8.2
JDK
JEE7
Jenkins
Jira
JMS 2.0
JSF 2.2 mit Primefaces 5
Junit
Keycloak
Kubernetes
Eigenständige Einarbeitung (kein Einsatz im Projekt)
Magic Draw
Magic Draw 18
Maven
Maven Buildmanagement
Microservice-Architecture
Mockito
MS Office
Netbeans 8.x
NetBeansIDE
OAuth2
Open API
OpenID Connect
Openliberty
Play2
Prime NG
PrimeNG
SOAP UI
Sonargraph
SonarQube
Sparx Enterprise Architect
Spring Boot
Swagger
Team Foundation Server (TFS)
UML2
Visual Studio Code
Zammad

Erfahrungen:

  • IT-Konzeption und Entwicklung von Java/JEE- basierten Anwendungen inkl. Integration von Business Process Engines.
  • Java-Entwicklung gemäß "Clean-Code"-Prinzipien und Test-Driven Development (TDD)
  • Koordination und Coaching von Java-Entwicklern als Lead-Developer von Teilprojektteams
  • Domain-Driven Design für Microservice-artige Architekturen
  • Business Analyse / Requirements Engineering (nach Sophisten) / Usecase Analyse (nach Cockburn)
  • Software-Design mit UML2
  • Frontend-Entwicklung mit JSF 2.1 und Angular 6-8

 

Methoden:

  • Cleancode-Richtlinien, TDD, SOLID Principlies
  • Usecase basierte Analyse, Usecasebeschreibungen (nach A. Cockburn)
  • UML, UML2
  • Agile Vorgehensweisen (SCRUM, Crystal Clear)

 

Produkte:

  • IntelliJ IDE
  • Netbeans IDE
  • Eclipse IDE
  • Magic Draw (UML Modellierung)
  • Sonargraph
  • Glassfish
  • JBoss Wildfly
  • JBoss EAP
  • Oracle Weblogic 12
  • Activiti 5.16
  • Sonarqube
  • Balsamiq
  • XML Spy
  • BEA Weblogic 5.1/6.1/8.1
  • Testdirector / Quality Center
  • JPA / Hibernate / eclipselink
  • Spring
  • Docker / Kubernetes

 

Standards:

  • Java EE 6/7 (JSF 2.x,EJB3.x,JPA, CDI, JMS)
  • Jakarta EE
  • XML/XSD
  • JSON
  • BPMN2
  • REST/HTTP
  • SSL/TLS
  • SOAP/Webservice/WSDL

Betriebssysteme

Linux
MS-DOS
SUN OS, Solaris
Unix
Windows

Programmiersprachen

Java
seit ca. 1999 als Haupt-Sprache
Java 8
Java EE 7
Java9
JavaScript
JDK 1.8

Datenbanken

Apache Derby
Cayenne Modeler
H2
JDBC
MongoDB
MySQL
ODBC
Oracle
Als Developer, nicht als Admin
PostgreSQL
SQL

Datenkommunikation

EJB
Remote + Local EJB
HTTP
incl. HTTPS
Messaging
JMS-basiert
REST
Jax-RS 1.x, 2.x
Router
Konfig. von kleineren Cisco-Routern (1997-1999)
SMTP
TCP/IP

Hardware

PC
SUN

Branchen

Branchen

Bank

  • Architektur-Redesign Backendsysteme f. Finanzierungs- und Leasing-Kalkulator (Pilot Deutschland, danach EU-Rollout)
  • Integrationsprojekte Finanzierung- und Leasing mit Internet Fahrzeug Konfigurator (Pilot Deutschland, danach EU-Rollout)

 

Versicherung

  • Teilprojekt-Tech-Lead und Architekt einer Vermittler-Applikation

 

Telekommunikation

  • Architekt und Lead-Entwickler einer prozessgesteuerten JEE-Anwendung mit Abbildung der Kerngeschäftsprozesse in BPMN2

 

Internet

  • EPayment, Design + Entwicklung eines Zahlungssystems über das Internet (Kreditkarten + Lastschrift)
  • Design + Entwicklung eines Content-Management Systems für Sportvereine (eigenes Gewerbe)

 

ISP

  • Systemadministration "managed customer server" unter Sun Solaris, Linux und Windows

Vertrauen Sie auf GULP

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das GULP Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.