freiberufler Senior Kotlin / Javascript Fullstack Entwickler / Berater im Bereich Quarkus / Jakarta EE / Cloud auf freelance.de

Senior Kotlin / Javascript Fullstack Entwickler / Berater im Bereich Quarkus / Jakarta EE / Cloud

zuletzt online vor wenigen Stunden
  • auf Anfrage
  • 77855 Achern
  • auf Anfrage
  • de  |  en
  • 01.11.2024

Kurzvorstellung

Ich bin ein Full Stack Java Entwickler mit 16 Jahren Erfahrung im Erstellen und Erweitern von Lösungen basierend auf verschiedensten Technologien und Setups im Kotlin / Javascript Bereich zuletzt insbesondere mittels Quarkus / Azure / React / ...

Qualifikationen

  • Angular
  • DevOps
  • Java (allg.)1 J.
  • JavaScript1 J.
  • Kotlin
  • React (JavaScript library)1 J.
  • Software Architecture
  • Software Design
  • Software engineering / -technik1 J.
  • Softwareanforderungsanalyse

Projekt‐ & Berufserfahrung

Prozessanalyse und -Automatisierung mittels Camunda BPM 7.x und Quarkus 3.x
Kundenname anonymisiert, Leverkusen
1/2024 – 9/2024 (9 Monate)
Chemieindustrie
Tätigkeitszeitraum

1/2024 – 9/2024

Tätigkeitsbeschreibung

Erweiterung einer Quarkus 3.x / Java 21 / Azure Lösung als Solo-Entwickler und Architekt, u.a.


Fakten- und Vorschlagsberechnung für einen komplexen jährlichen Inventurvorgang
• Ziel: Bessere und gesichertere Entscheidungen bei deutlich reduziertem manuellem Aufwand; Kostenreduktion durch verlässlichere Entscheidungen
• Vorschlagsberechnung anhand eines Regelkatalogs und unter Einbindung einer größerer Anzahl von Stammdaten
• Einführung einzelner neuer Stammdaten mit Pflegemöglichkeiten
• Darstellung der Vorschläge und Fakten in der existierenden Oberfläche; Möglichkeit zur Übernahme
• Job für tägliche Neuberechnung

Migration und teilweise Reimplementierung der bestehenden Inbox Lösung für zwei Request Workflows
• Neuimplementierung der Inbox und Task Screens mittels React ohne Anpassung des Backends
• Einbindung und Unterstützung der alten Work Items
• Umfangreiche Filtermöglichkeiten; Bookmark support
• Vorbereitung auf spätere Camunda Migration oder Neu-Implementierungen

Implementierung eines Voting Prozesses mittels Camunda BPM
• Embedding / Integration von Camunda BPM 7.20 als BPMN workflow runtime
• Automatisierung des „Voting“ BPMN Modells mittels Camunda 7.20; Persistence und Servicelogik
• Synchronisation von Benutzern / Gruppen zu Camunda BPM
• Impementierung des WorkItem Uis als React Komponente(n) anhand von UX Vorgaben; Einbindung der Work Items in die neue Inbox Lösung
• Admin Oberfläche für Request / Prozess Status sowie Batch Bearbeitung; Aktualisierung von Benutzern

Neuimplementierung einer Schnittstelle für Umsatzdaten in verschiedenen Versionen
• Unterstützung und Prozessierung von Massendaten in granularer Form; Job für tägliche Neuberechnung
• Optimiertes Datenmodell; Berechnung und Aggregation in verschiedenen Varianten
• Anpassung der Anwendung sowie Neuerstellung von Ansichten zur Nutzung der granulareren Varianten
• Erstellung von verschiedenen Charts und Microcharts

Performance Optimierung der JPA / Hibernate Persistenzschicht
• Analyse der Schwachpunkte und Optimierungsmöglichkeiten, um das Laden wichtiger Entitäten sowie die Ausführung von Jobs zu beschleunigen
• Optimierung und Vereinfachung des Datenmodells
• Auslagerung einzelner Berechnungen und Abfragen in optimierte Datenbank Views und Procedures
• Nutzung einzelner neuer Hibernate 6.x Funktionen

AI Prototyp mittels Langchain4j
• Anbindung an LLM Modelle mittels einer existierenden OpenAI kompatiblen API und Langchain4j
• Implementierung einzelner Usecases wie strukturierte Text Extraktionen zur Verifikation des Prototyps

Sonstiges
• Allgemeine Maintenance, Support, Monitoring
• Optimierung der GitHub Actions basierte Build- und Deployment pipelines; Fortlaufendes Ausrollen neuer Releases
• Neuimplementierung oder Erweiterung einzelner Schnittstellen; Vorbereitung eines Clients an eine existierende Kafka Datenquelle
• Neuimplementierung einzelner Reports
• Einbindung eines Power BI Dashboards in die Anwendung mittels PowerBi Embedded und Microsoft Entra ID / OpenID connect
• Aktualisierung wichtiger Stammdaten über verschiedene Inline Cell Editoren; Unterstützung von Batch Updates
• Anpassung der Anwendung an UX Vorgaben und Verbesserungen
• Sprint- und Releaseplanung
• ...


Rolle: Entwickler, Architekt
Verwendete Technologien: Quarkus 3.x, Kotlin 2.x, Java 21, Eclipse Microprofile, Jakarta EE, JPA, Hibernate 6.x,, React, OpenId Connect, Microsoft Entra ID / Azure AD, Github Actions, Langchain4j, OpenAI API, chart.js
Verwendete Tools: GitHub, Azure DevOps, IntelliJ, Figma, Gradle 8.x, Camunda BPM 7.20, Apache Kafka
Verwendete Azure Dienste: Microsoft Entra ID / Azure AD, Azure DevOps, App Service, Key Vault, Monitor, Azure SQL, Data Factory, Azure DNS, etc

Eingesetzte Qualifikationen

Business Process Model and Notation, Kotlin, Langchain

Cloud Migration einer Java EE 6 Anwendung auf Quarkus 3.x / React / Azure
Kundenname anonymisiert, Leverkusen
1/2023 – 12/2023 (1 Jahr)
Chemieindustrie
Tätigkeitszeitraum

1/2023 – 12/2023

Tätigkeitsbeschreibung

Transformation einer on premise Java EE 6 Altanwendung, mit proprietären Bestandteilen, in eine moderne cloud basierte Quarkus 3.x / Java 17 Lösung als Solo-Entwickler und Architekt

Phase 1: Planung
• Erarbeitung einer Zielarchitektur und Wahl von Zieltechnologien unter Berücksichtigung von Vorgaben und Begebenheiten;
• Berücksichtigung Wunsch nach vorübergehendem Parallelbetrieb der Altlösung und frühzeitiger Produktivnutzung der neuen Lösung für ausgewählte Benutzer
• Evaluierung und Auswahl der Azure Runtime Services: App Services, Azure Key Vault, Monitoring, Domains, etc
• Bereitstellung eines minimalen POCs u.a. um Netzwerk- bzw Firewallprobleme ausschließen zu können
• Auswahl und Verifizierung von Frontend und Backend Zieltechnologien

Phase 2: Migration Backend
• Umstellung des backend builds von einer proprietärer Ant basierten Lösung auf Gradle
• Neu-implementierung Applicationserver spezifischer Teile:
◦ Authorisierung mittels OpenId Connect / Azure AD
◦ Benutzerverwaltung mittels Azure AD / MS Graph API als Backend
• Upgrade der Systemkomponenten auf aktuelle (Quarkus 2.x) Versionen
◦ Migration der Java EE 6 Beans auf CDI und Jakarta EE apis
◦ Hibernate 3.x auf Hibernate 5.6 und Anpassungen von Inkompatibilitäten
◦ Migration von Hibernate Criteria API auf JPA 2.x Criteria API
◦ ...
• Containerisierung des Backends
• GitHub Actions basierte Build- und Deployment pipelines für Backend

Phase 3: Migration Frontend
• Anpassung des alten Javascript SPA UIs, Containeriseirung sowie neues Buildsystem
• Einbettung des Javascript UIs in ein PrimeReact basiertes Template als Ersatz für die Portallösung des Anwendungsservers und als Vorbereitung auf die spätere React Neuimplementierung
• Bereitstellung als NGINX container
• Neuimplementierung ausgewählter Uis mittels React
• GitHub Actions basierte Build- und Deployment pipelines für Frontend

Phase 5: Anpassung Schnittstellen
• Anpassungen um bestehende Schnittstellen ohne Änderungen der Konsumenten weiter betreiben zu können
• Erstellung einer Proxy-Schicht für einzelne Schnittstellen zu Legacy Systemen
• Anpassung sowie Weiterleitung verschiedener Links in / zu Altanwendung, z.B. innerhalb von Mailbenachrichtigungen

Phase 5: Azure Setup und Rollout
• Erstellung der Azure Resourcen für mehrere Stages
• Anbindung der einzelnen Azure Services in die Anwendung
• Migration bestehender Benutzer, Rechte und Gruppen zu Azure AD
• Azure Monitor Anbindung und Setup incl. Application Insights
• Schrittweise Ablösung von Funktionalitäten in Legacy System

Phase 6: Implementierung funktionaler Enhancements (migrationsunabhängig)
• …

Phase 7: Datenbank Migration (Oracle → MSSQL / AzureSQL)
• Vorbereitung der Datenbankmigration von Oracle auf Azure SQL (MS SQL)
• Anpassung der Anwendung um zusätzlich (parallel) MSSQL / AzureSQL zu unterstützen
• Initialer Datentransfer mittels bereitgestelltem Azure Data Factory
• Anpassung bzw Migration einzelner datenbankspeziefischer Funktionen

Rolle: Entwickler, Architekt
Verwendete Technologien: Quarkus 3.x, Kotlin, Java 17, Jakarta EE, JPA, Hibernate 6.x,, React, OpenId Connect, Azure AD, Github Actions
Verwendete Tools: GitHub, Azure DevOps, IntelliJ, Figma
Verwendete Azure Dienste: Azure AD, App Service, Key Vault, Monitor, Azure SQL, Data Factory, Azure DNS, etc

Eingesetzte Qualifikationen

Hibernate (Java), J2EE, Java (allg.), Microsoft Azure, React (JavaScript library), Software engineering / -technik

Erarbeitung von Webtechnologie-Integrationsoptionen in eine embedded QT Lösung
Kundenname anonymisiert, Wuppertal
3/2022 – 12/2022 (10 Monate)
Handel
Tätigkeitszeitraum

3/2022 – 12/2022

Tätigkeitsbeschreibung

* Erarbeitung und Prototypen von Integrationsoptoinen zwischen einer embedded Lösung und Webtechnologien, insbesondere mittels Chromium als Integrationstechnolgie
* Beispiele für Datenaustausch (bi-direktional) zwischen Embedded und Web technologien
* Integration von Beispiel Web Anwendungen in die Embedded Lösung
* Anpassungen und erweiterungen innerhalb der Embedded Lösung
* Entwicklung von nativen und web Beispielwidgets

Eingesetzte Qualifikationen

JavaScript, Qt (Software), Software engineering / -technik

Erstellung eines Social Media Sharing showcases mittels Quarkus/Preact/Heroku
Kundenname anonymisiert, Wuppertal
12/2021 – 2/2022 (3 Monate)
Handel
Tätigkeitszeitraum

12/2021 – 2/2022

Tätigkeitsbeschreibung

Erstellung einer Anwendung, um Benutzern zu erlauben, ihre Wochenpläne auf SocialMedia (Twitter, Facebook, Pinterest) zu teilen als Showcase für ein API Gateway sowie Marketing
Erstellung des Backend mittels Quarkus / JPA / PostgreSQL und Benutzung einer existierenden API für Wochenpläne
Erstellung des Frontends mittels Preact / MUI für Web und Mobile Web um Wochenpläne zu teilen und einer Landing Page zur Darstellung des geteilten Wochenplans
Erstellung einer React Komponente um SocialMedia Vorschaubilder aus einer variablen Anzahl von Bildern dynamisch zu erzeugen
Erstellung einer Nginx basierten Lösung um Social Media meta tags individuell für jeden geteilten Wochenplan bereitzustellen
Heroku Deployment durch zwei GitLab pipelines, die Docker / Container images für Frontend und Backend erstellen und deployen

Zweite Phase: Migration auf AWS

Bereitstellung des Frontends über AWS Cloudfront und AWS S3

Deployment des bestehenden backend containers in AWS EKS

Anbindung an vorgegebene Monitoring, Tracing, Logging, Security Scanner, und weitere Infrastruktur

Anpassungen und Optimierungen um auch größere Peaks zu ermöglichen, u.a. durch CloudFront Caching, Container Auto-scaling sowie einzelnen dedizierten Optimierungen

Planen, erstellen und durchführen (mittels Stormforgers) eines Performancetests

Produktivsetzung und Rollout

Erstellung von Deployment pipelines mittels ArgoCD / GitOps

Eingesetzte Qualifikationen

Postgresql, Amazon Web Services (AWS), Java (allg.), React (JavaScript library)

Unterstützung beim POC und Rollout eines Kong API Gateways
Kundenname anonymisiert, Wuppertal
10/2021 – 2/2022 (5 Monate)
Handel
Tätigkeitszeitraum

10/2021 – 2/2022

Tätigkeitsbeschreibung

Erstellung einer Anwendung, um Benutzern zu erlauben, ihre Wochenpläne auf SocialMedia (Twitter, Facebook, Pinterest) zu teilen als Showcase für ein API Gateway sowie Marketing
Erstellung des Backend mittels Quarkus / JPA / PostgreSQL und Benutzung einer existierenden API für Wochenpläne
Erstellung des Frontends mittels Preact / MUI für Web und Mobile Web um Wochenpläne zu teilen und einer Landing Page zur Darstellung des geteilten Wochenplans
Erstellung einer React Komponente um SocialMedia Vorschaubilder aus einer variablen Anzahl von Bildern dynamisch zu erzeugen
Erstellung einer Nginx basierten Lösung um Social Media meta tags individuell für jeden geteilten Wochenplan bereitzustellen
Heroku Deployment durch zwei GitLab pipelines, die Docker / Container images für Frontend und Backend erstellen und deployen

Eingesetzte Qualifikationen

Git, Java (allg.), Kubernetes

Entwicklung eines Share-Widgets für Rezepte als WebComponent
Kundenname anonymisiert, Wuppertal
7/2021 – 9/2021 (3 Monate)
Handel
Tätigkeitszeitraum

7/2021 – 9/2021

Tätigkeitsbeschreibung

Erstellung eines konfigurierbaren Widgets als WebComponent anhand UX Vorgaben ähnlich eines Facebook buttons um den Import von Rezepten von Partnerseiten zu ermöglichen
Bereitstellung in einer Vielzahl von Varianten: Form (einzeilig, mehrzeilig, icon, teaser), Sprache (> 20), Themes, CSS Support
Initiale Bereitstellung der Backend API und Partnerkonfiguration in einem existierend NodeJS Projekt und Übergabe an das Team
Erstellung eines Release Prozesses und einer Gitlab Deployment Pipeline in ein S3 Bucket
Unterstützung beim Rollout für mehrere Europäische Märkte und Partner

Eingesetzte Qualifikationen

Amazon Web Services (AWS), DevOps, JavaScript, Typescript

Weiterentwicklung einer Spring Boot / MongoDB / Angular Anwendung (in Teilzeit)
Kundenname anonymisiert, Berlin
6/2021 – 12/2021 (7 Monate)
Handel
Tätigkeitszeitraum

6/2021 – 12/2021

Tätigkeitsbeschreibung

*Übernahme. Refactoring und Weiterentwicklung einer Spring Boot / MongoDB / Angular 11 Anwendung (Übernahme aus Prototypenstatus)
* Erstellung einer Referenzarchitektur und Implementierung
* Anwendungskomponenten im Backend und Frontend (u.a. Orderprozess incl Invoicehandling, Fileupload mittels AWS S3 Backend für verschiedene Bereiche, Country Picker, Referenzkomponente für Tabellen, etc)
* Umzug der Anwendung nach AWS und Aufbau der AWS Architektur auf Basis von AWS ECS, Cloudfront, S3, Cognito, Route 53, Copilot; Unterstützung verschiedener Umgebungen
* Erstellung von GitLab Build und Deployment pipelines zum automatischen und semi-automatischen rollout der einzelnen Anwendungsteile
* Analyse und Beschreibung von verschiedenen Sicherheitsproblemen und Korrektur bzw Umbau nach Priorität
* Refactoring und Vereinfachung des Datenmodells, incl vereinfachung von MongoDB queries
* Mentoring von Junior Entwicklern (Frontend + Backend)

Eingesetzte Qualifikationen

Amazon Web Services (AWS), Angular, Ansible, Java (allg.), Jira, Mongodb, Spring Framework, Typescript

Bewertung, Anpassung und Erneuerung einer proprietären Blockchainlösung
Kundenname anonymisiert, Weinheim
10/2020 – 6/2021 (9 Monate)
IT & Entwicklung
Tätigkeitszeitraum

10/2020 – 6/2021

Tätigkeitsbeschreibung

* Bewertung, Anpassung und Anbindung einer proprietären Blockchainlösung an eine neue Cosmos basierte Lösung
* Evaluierung und Bewertung wichtiger am Markt befindlicher Lösungen wie Hyperledger, Cosmos, Ethereum oder DAML
* Aufbau von Detailwissen sowie Evaluierung für einen Solidity / Ethermint / NodeJS basierten Stack inklusive Auswahl von Werkzeugen und Bibliotheken wie EthersJs
* Erstellung einer Referenzarchitektur und Implementierung praxisrelevanter Usecases für den Solidity / Ethermint basierten Stack
* Erarbeitung von Migrations- und Integrationsszenarien für die bisherige propietäre Lösung und Beratung der Technischen Leitung
Bereitstellung einer Entwicklungsumgebung (Tools, Beispiele, Abhägigkeiten, etc) für den Solidity / Ethermint Stack basierend auf Vagrant und Ansible
* Erstellung einer Bewertung der bisherigen propietären Lösung und Ihrer Komponenten sowie einer priorisierten Liste an Verbesserungs- und Vereinfachungsmöglichkeiten sowie Darstellung von Problemfeldern

Eingesetzte Qualifikationen

Ansible, Blockchain (allg.), JavaScript, Solidity, Typescript, Vue.Js

Ausbildung

Diplom Informatiker (FH)
Diplom Informatiker (FH)
Hochschule Karlsruhe (HKA)
2006
Karlsruhe

Über mich

Schwerpunkte:

Design und Umsetzung von Softwareprojekten im Java und Javascript/Typescript Umfeld (insbesondere Kotlin Jakarta EE / Quarkus / Spring / React / Angular / Camunda), Selbstständig oder innerhalb eines Teams

Erarbeitung von Referenzarchitekturen (Backend und Frontend) incl Frameworkauswahl, etc unter Berücksichtigung der kundenspeziefischen Randbedingungen

Erarbeitung von Spezifikationen / Userstories / Mockups zusammen mit Fachabteilungen oder Produktverantwortlichen; Unterstützung der Projektleitung, z.B. als ScrumMaster soweit gewünscht

Analyse und Bewertung existierender Architekturen; Aufzeigen von Vereinfachungs- und Verbesserungsmöglichkeiten, Schwachpunkten, möglichen OpenSource Alternativen für einzelne Komponenten und Schichten; Erarbeitung von Migrationspfaden

Automatisierung von Businessprozessen mittels Camunda BPM incl Service- und Persistenzschicht, UIs mittels Angular oder React; Anbindung an Backends sowie Bereitstellung von Analysefunktionen; Incl Beratung und Erarbeitung einer Zielarchitektur

Persönliche Daten

Sprache
  • Deutsch (Muttersprache)
  • Englisch (Fließend)
Reisebereitschaft
auf Anfrage
Arbeitserlaubnis
  • Europäische Union
Home-Office
bevorzugt
Profilaufrufe
332
Alter
42
Berufserfahrung
18 Jahre und 2 Monate (seit 09/2006)

Kontaktdaten

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

Jetzt Mitglied werden