freiberufler Senior Java Architect/Lead Developer auf freelance.de

Senior Java Architect/Lead Developer

zuletzt online vor 1 Tagen
  • auf Anfrage
  • 81825 München
  • National
  • de  |  en
  • 15.03.2024

Kurzvorstellung

Java-Architekt und Entwickler mit fast 20 Jahren Erfahrung in der Konzeption und Umsetzung anspruchsvoller und langlebiger Softwarelösungen.
Ich bringe in Projekte starke analytische Fähigkeiten, Führungserfahrung und Zielorientierung ein.

Qualifikationen

  • DevOps
  • Java (allg.)
  • Software Architektur / Modellierung
  • Datenmodellierung
  • J2EE (Java EE)
  • Kontinuierliche Integration (CI)
  • Kubernetes
  • Oracle Database
  • Spring
  • SQL

Projekt‐ & Berufserfahrung

Software Architect / Area Owner
Kundenname anonymisiert, Frankfurt am Main
7/2022 – 8/2023 (1 Jahr, 2 Monate)
Banken
Tätigkeitszeitraum

7/2022 – 8/2023

Tätigkeitsbeschreibung

Domain Code Management & Automation (DCMA)

- Verbesserungen für eine fachlich funktionale Entwicklungsumgebung identifizieren und definieren
- Produktivitätssteigerung in der fachlichen Umsetzung von Modulen im Meldewesen

Ziel des Projektes ist, durch einen von mir ausgearbeiteten Katalog von Verbesserungen, die Produktivität von fachlichen Entwicklern der Meldewesenplattform Abacus360 signifikant zu steigern. Auf der Standardsoftware Abacus360 arbeitet ein Team von Entwicklern an der Erstellungen von fachlichen Modulen die Anforderungen verschiedener Bereiche des regulatorischen Meldewesens für Banken abbilden. Auf der vorhandenen Entwicklungsplattform verlieren Entwickler viel Zeit durch unnötige Prozessschritte, fehlende IDE Unterstützung und Integration, lange Testzyklen, komplizierte Build Prozesse, fehlende Debug Funktionalitäten, umständliche Kollaborationsunterstützung und anderer Themen. Das Projekt besteht aus einer Sammlung von aufeinander aufbauenden Maßnahmen um die genannten Schwachpunkte zu beheben und den Entwicklungs- sowie Deploymentprozess optimal zu unterstützen. Basis der Optimierungen liegt in einem Refactoring der bestehenden Speicherung von fachlichen Codeartifakten. Im Rahmen des Projektes werden diese leichtgewichtig in GIT hinterlegt und direkt von der Anwendung aus GIT gelesen. Dadurch lässt sich auch weitere GIT Funktionalität und das GIT Ökosystem für die Entwicklung verwenden.

Java, Git, JGit, Json, Kubernetes, Micro Services, REST, Meta Models, Parser, Language Server, JPA, Infinispan

Eingesetzte Qualifikationen

Datenmodellierung, Git, Java (allg.), JavaScript Object Notation (JSON), Kubernetes, Meldewesen (Bank), Projektleitung / Teamleitung (IT), Software Architektur / Modellierung, Software engineering / -technik

Lead Developer
Regnology, Frankfurt
3/2022 – 3/2022 (1 Monat)
Banken
Tätigkeitszeitraum

3/2022 – 3/2022

Tätigkeitsbeschreibung

Analyse eines Memory Leaks in einer Apache Spark basierten Batchverarbeitung.
Prüfen aller Optionen innerhalb und außerhalb des Java Heap/Off Heap Memories auf die verursachende Komponente.
Identifikation der nativ eingebundenen zlib Kompressions Library als Grund für den Memory Leak

Eingesetzte Qualifikationen

Apache Spark, Linux (Kernel), Virtual Memory System (VMS), Java (allg.), JNI (Java Native Interface)

Lead Architect / Area Owner
Regnology, Frankfurt
7/2020 – 7/2023 (3 Jahre, 1 Monat)
Banken
Tätigkeitszeitraum

7/2020 – 7/2023

Tätigkeitsbeschreibung

- Fachliche Führung der Entwicklung
- Ausarbeitung und Kommunikation der Software Architektur
- Evaluation der technischen Machbarkeit
- Erarbeiten und Erprobung des Technologstacks
- Lead Developer

Das Projekt entwickelt eine Datenzugriffsschicht, die die physische Datenhaltung abstrahiert und die Performance und Skalierbarkeit für Batch- und Onlineoperationen verbessert. Die Lösung nutzt Microservices, GraphQL, ClickHouse und Calcite, um die Anforderungen an die Datenarchitektur zu erfüllen.

Java, SQL, Spring Boot, ClickHouse, Calcite, Oracle, GraphQL, Kafka, REST, OpenAPI, Kubernetes, GKE, Micro Services, VisualVM, Postman, DevOps, CI/CD, JUnit, TestContainers, Vault, Agile (Kanban), Relational Algebra Optimization

Eingesetzte Qualifikationen

Kafka, Agile Entwicklung, Apache Maven, Apache Spark, Architekturvisualisierung, Cloud (allg.), DevOps, Docker, Git, Google Cloud, HTTP, Java (allg.), JDBC (Java Database Connectivity), Kontinuierliche Integration (CI), Meldewesen (Bank), Oracle Database, Projektleitung / Teamleitung (IT), Software Architektur / Modellierung, Spring, SQL

Java Architect, Developer, Innovator
Kundenname anonymisiert, Frankfurt
3/2019 – 11/2020 (1 Jahr, 9 Monate)
Banken
Tätigkeitszeitraum

3/2019 – 11/2020

Tätigkeitsbeschreibung

- Design and implementation of a prototype - Ensuring visibility of the project within the organization and defending it against resistance - Handover and support of the go-live

(Pilot-) Projekt zur On-Demand-Bereitstellung von Test- und Entwicklungssystemen in der Cloud über ein Self-Service-Portal. Kosteneinsparungen durch elastische Ressourcenzuweisung: Die Legacy-Anwendung musste effizient in einem Container bereitgestellt werden, einschließlich der Möglichkeit von Updates auf aktuelle Entwicklungsversionen. Die Erstellung der notwendigen, parameterabhängigen Oracle-Datenbankschemata und die Bereitstellung von Oracle-Instanzen mit entsprechenden Schemata war eine der größten Herausforderungen. Leere Datenbankschemata werden als Oracle PDBs erstellt, gespeichert und dynamisch eingehängt Testsysteme können so von nicht-technischen Entwicklern schnell und selbstständig angefordert und konfiguriert werden. Die Anzahl der Systeme kann elastisch erhöht und bei Bedarf wieder reduziert werden.

Java, Vaadin, Kubernetes, Oracle, Docker, GCP, GKE, Azure, Git, Gitlab, Jenkins, Postman, REST, DevOps, Cloud, Elastic, Agile (Scrum), ELK, Kibana, Fluent

Eingesetzte Qualifikationen

Apache Maven, Cloud (allg.), Docker, Git, Google Cloud, Java (allg.), Konfigurationsmanagement (KM), Kontinuierliche Integration (CI), Kubernetes, Oracle Database, Software Architektur / Modellierung, SQL, SQL*Plus

Software Architect / Lead Developer Apache Spark
Kundenname anonymisiert, Frankfurt am Main
3/2017 – 10/2018 (1 Jahr, 8 Monate)
Banken
Tätigkeitszeitraum

3/2017 – 10/2018

Tätigkeitsbeschreibung

Spark als Meldewesen Batch Prozessor (SQLx)

Evaluierung und Design eines Backends basierend auf Apache Spark zur performanten und skalierbaren Ausführung von Meldewesen Batchverarbeitungen für die Standardsoftware Abacus360. Im Rahmen der Evaluierung ging es insbesondere um die Frage der Skalierbarkeit, der Immutabilität von Spark und dem Umgang mit der Spark "Lineage", die für eine große Anzahl komplexer, aufeinander aufbauender Verarbeitungsschritte nicht geeignet ist. Am Anfang gestaltete es sich schwierig eine annehmbare Performance insbesondere für kleinere Datenbestände zu erreichen, doch später konnten wir das Problem durch die Implementierung von "Checkpoints" überwinden. Heute ist Spark als Engine für das Abacus360 Batchprozessing bei über 200 Kunden im Einsatz.

Apache Spark, Java, Scala, JProfiler, VisualVM, Wildfly, Infinispan, ADM, Agile (Scrum)

Eingesetzte Qualifikationen

Apache Spark, Agile Entwicklung, jboss, Software Design, Java (allg.), Scala

Java Architect
Kundenname anonymisiert, Frankfurt am Main
2/2016 – 10/2018 (2 Jahre, 9 Monate)
Banken
Tätigkeitszeitraum

2/2016 – 10/2018

Tätigkeitsbeschreibung

Distributed Processing Engine

Entwicklung einer Fullstack Plattform zur Definition und Ausführung von fachlichen Datenverarbeitungen im Bankenbereich. Für diese Zecke wurde eine teilweise grafische low-code Sprache definiert, mit deren Hilfe fachliche Experten und Entwickler komplexe Verarbeitungsschritte und Ableitungen definieren können, ohne über Programmier Know-How zu verfügen. Die Plattform deckte alle Bereiche der fachlichen Entwicklung ab, inkl. Test, Auslieferung und betrieb beim Endkunden. Technisch beruht der Ansatz auf einer mehrfachen Gruppierung der Eingangsdaten und Verteilung auf mehrere Workernodes. Message Queues, Kafka und ein verteilter In-Memory Cache dienten zur Verteilung und Synchronizierung der Arbeitspakete.

Java, Wildfly, JEE, JPA, Hibernate, Infinispan, JMS, Message Queues, ActiveMQ, HornetQ, Low-Code, ADM

Eingesetzte Qualifikationen

Kafka, Hibernate (Java), J2EE (Java EE), Java (allg.), Java Message Service (JMS), jboss, JDBC (Java Database Connectivity), Projektleitung / Teamleitung (IT)

Java Developer
Kundenname anonymisiert, Frankfurt am Main
2/2014 – 12/2015 (1 Jahr, 11 Monate)
Banken
Tätigkeitszeitraum

2/2014 – 12/2015

Tätigkeitsbeschreibung

Entwicklung einer XBRL Library inkl. einer partiellen Implementierung der Formula Linkbase

Entwicklung einer XBRL Bibliothek mit Fokus auf die zu diesem Zeitpunkt relevanten Taxonomien im Bereich regulatorisches Meldewesen für Banken. Wichtiger Punkt bei der Entwicklung war eine gute Performance bei der Ausführung der definierten Validierungen und Berechnungen in der Formula Linkbase.

Java, XBRL, XPath, XML, JProfiler

Eingesetzte Qualifikationen

Meldewesen (Bank), Software Design, Java (allg.), XML, Xpath (XML Path Language), XPointer (XML Pointer Language)

Senior Software Developer
Kundenname anonymisiert, Frankfurt am Main
5/2013 – 11/2014 (1 Jahr, 7 Monate)
Banken
Tätigkeitszeitraum

5/2013 – 11/2014

Tätigkeitsbeschreibung

Performante Implementierung einer Standardschnittstelle von SAP Bank Analyzer zum Meldewesen Tool ABACUS/DaVinci

Performance Analyse und Redesign kritischer Komponenten einer in Entwicklung befindlichen Standard Schnittstelle vom SAP Bank Analyzer zur Standardsoftware für das regulatorische Meldewesen ABACUS/DaVinci. Herausforderungen lagen in den unterschiedlichen Granularitäten und historischen Abbildungen der Daten zwischen Bank Analyzer und dem Zielsystem.

ABACUS/DaVinci, SQL, Oracle, Java, Webservices, MSSQL

Eingesetzte Qualifikationen

Microsoft SQL-Server (MS SQL), Datenbankentwicklung, Datenmodellierung, Java (allg.), Meldewesen (Bank), Oracle Database, PL/SQL, SQL, SQL*Plus

Ausbildung

Informatik
Diplom-Informatiker
Technische Universität München
2001
München

Über mich

Als Java-Softwareentwickler und -Architekt mit 20 Jahren Erfahrung habe ich wiederholt komplexen und skalierbaren Software Backends erstellt. Meine umfassende Erfahrung, gepaart mit einem tiefgreifenden Verständnis des Java Umfelds, guten analytischen Fähigkeiten und einer Mischung aus Effizienz und Kreativität, befähigen mich, Systeme mit komplexen Anforderungen und großen Datenmengen/vielen Transaktionen zu entwerfen und umzusetzen. Ich verfüge über gutes Verständnis der Prozesse im Bankenbereich - insbesondere im regulatorischen Meldewesen - arbeite aber auch in anderen Bereichen erfolgreich mit Fachteams zusammen.
ich arbeite mich schnell und mit Begeisterung in neue Themen und Technologien ein und treibe technologische Innovation und Verbesserung.

Persönliche Daten

Sprache
  • Deutsch (Muttersprache)
  • Englisch (Fließend)
Reisebereitschaft
National
Arbeitserlaubnis
  • Europäische Union
Home-Office
bevorzugt
Profilaufrufe
259
Alter
47
Berufserfahrung
22 Jahre (seit 04/2002)
Projektleitung
10 Jahre

Kontaktdaten

Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.

Jetzt Mitglied werden