I am specialized in crafting robust and scalable solutions mainly using Spring Boot, Java, Angular and cloud technologies.
Aktualisiert am 17.09.2025
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 17.09.2025
Verfügbar zu: 100%
davon vor Ort: 100%
Fullstack-Developer
Java
Typescript
Angular
ReactJS
Scala
Python
Rust
Kotlin
Azure
DevOps
REST
GraphQL
Node.js
Spring Boot
Deutsch
Muttersprache
Englisch

Einsatzorte

Einsatzorte

Deutschland, Schweiz, Österreich
möglich

Projekte

Projekte

1 year
2025-06 - now

Gesetzesdatenbank mit Navigation via Paragrapreferenzen

Software-Ingenieur / System-Architekt Rust Askama Axum ...
Software-Ingenieur / System-Architekt
  • Im Rahmen dieses Projektes wird eine alternative Navigation durch Gesetzestexte im Internet angeboten. In der Regel gibt es lediglich ein Inhaltsverzeichnis und dort können die einzelnen Gesetze angesteuert werden. Referenzierte Paragrafen müssen manuell herausgesucht werden, da es in der Regel keine Verlinkungen gibt. Dieser Mangel soll durch diese Anwendung behoben werden.
  • Dazu habe ich mir die vom Bund angebotene Schnittstelle für den Download der Gesetze zu Nutze gemacht. Die Texte werden dann anhand eines LLM analysiert, Referenzen auf andere Paragrafen extrahiert und im Anschluss in einer Graphdatenbank (Neo4j) abgelegt. Der andere Teil ist die Weboberfläche, mit der diese Daten dann navigiert werden können.
  • Zusätzlich werden Embeddings verwendet, um die Semantik der Daten abzubilden damit, via Chat, Anfragen an ein LLM gestellt werden können, der dann auf diese Daten zugreift (RAG ? Retrieval Augmented Generation).
  • Das ganze Projekt ist in Eigenverantwortung und aktuell noch ein proof-of-concept.
  • Als Sprache kommt exklusiv Rust zum Einsatz. Die Weboberfläche wird über Templates und HTMX implementiert.
Rust Askama Axum AI Neo4j Docker Linux
Lawtech
1 year 11 months
2024-07 - now

Umsetzung eines Konfigurators für den Schutz von Band- und Rundschlingen

Software-Ingenieur Angular Go Typescript ...
Software-Ingenieur
  • Band- und Rundschlingen kommen in der Regel zum Heben von Lasten zum Einsatz, dabei kann es sich um Lasten von mehr als 10 Tonnen handeln. Entsprechend hoch sind die Kosten dieser Hebebänder. Damit diese hinreichend geschützt werden können, bietet der Kunde unterschiedliche Produkte an. Zum Automatisieren des Auswahlprozesses hat der Kunde mich beauftragt eine Anwendung zu entwickeln, die ihre Endkunden online nutzen, um Produkte entsprechend ihrem Hebeband vorgeschlagen zu bekommen.
  • Die in Angular gestaltete Oberfläche wurde von einem Designer entworfen und durch mich die Logik/Funktionalität umgesetzt. Der Anwender wählt erst das Hebeband aus, das er schützen möchte. Anschließend gibt er weitere Informationen an, betreffend des Einsatzes des Bandes (Nutzlänge, Belastung, etc.). Dann kommt er auch schon auf die Liste aller Schutzprodukte und kann dort auswählen, welche und wie viele er haben möchte. Im letzten Schritt gibt es eine Übersicht und ein Kontaktformular dessen Inhalt an den Vertrieb weitergeleitet wird. Hier war die Besonderheit, dass die Produkte als auch die Bedingungen, unter denen sie zur Auswahl stehen als CSV-Datei geliefert wurden. Um diese Daten bei Änderungen nicht manuell einpflegen zu müssen oder gar den Code anpassen zu müssen, habe ich eine Routine implementiert, die die Umwandlung in eine JSON-Struktur vornimmt und so der UI bereitgestellt werden kann. Die Notwendigkeit entsteht dadurch, dass der Kunde das Sortiment erweitert bzw. verändert und eine Anpassung der CSV-Datei in Excel stattfindet.
  • Das Entgegennehmen der Daten und die Weiterleitung an den Vertrieb erfolgt über ein Backend (Go), das eine E-Mail mit den Angaben an den Vertrieb und den Kunden sendet. Zur Absicherung vor Spamattacken wurde Google ReCAPTCHAv3 verwendet.
  • Die gesamte Anwendung wurde internationalisiert und ist in 6 Sprachen verfügbar.
  • Um dem Kunden ein einfaches Hosting und Deployment zu ermöglichen, habe ich eine Dockerfile, sowie eine DockerCompose-Datei erstellt. Diese können dann mit einem einfachen Befehl automatisiert eingerichtet werden.
Angular Go Typescript HTML CSS 2D Programmierung mit HTMLCanvas in Typescript Docker Docker Compose
Logistik (Hebetechnik)
1 year 11 months
2024-07 - now

Umsetzung eines Konfigurators für Ladungssicherungsnetze zum Einsatz in LKWs

Software-Ingenieur Angular Go Typescript ...
Software-Ingenieur
  • Der Kunde hat eine Software benötigt, um Ladungssicherungsnetze für LKWs zu konfigurieren. Dieser Konfigurator wird intern als auch offiziell für Kunden angeboten, damit diese sich selbst Netze zusammenstellen können. Das Ganze ist notwendig, da die Netze in ihren Maßen hoch individuell sind. Dabei geht es um Bandbreite, Maschenweite, sowie die Gesamtgröße (Länge/Breite). Jedoch sind nicht alle Maße miteinander kombinierbar und es gibt bestimmte Vorgaben, da sie hinsichtlich Belastbarkeit CE-Geprüft werden müssen.
  • Meine Aufgabe war die gesamte Umsetzung der Funktionalität und Koordination mit dem Kunden. Die eigentliche Anwendung ist durch Angular umgesetzt. Ein Designer hat das Layout entworfen.
  • Das Datenmodell im Hintergrund ist über eine JSON-Datei definiert, das heißt die Auswahlmöglichkeiten und die Reihenfolge in denen Optionen ausgewählt und Felder ausgefüllt werden dürfen sind dort enthalten.
  • Die Bedingungen und Vorgaben werden durch eine eigens implementierte WorkflowStateMachine umgesetzt. Diese liest die JSON-Datei ein und deaktiviert Felder, limitiert die Eingaben und reagiert auf die Eingaben des Nutzers. Während der Anwender Daten eingibt, wird das Netz in der Mitte des Bildschirms in einem Canvas Maßstabsgetreu dargestellt und reagiert live. Nach der Angabe der Maße kann der Anwender zusätzlich Spannelemente und Verbindungselemente aus einer Liste auswählen, sowie die Positionen bestimmen. Im Anschluss kann der Anwender die Konfiguration abschließen und in einem Kontaktformular seine Daten angeben die dann abgesendet und an den Vertrieb weitergeleitet werden.
  • Das Entgegennehmen der Daten und die Weiterleitung an den Vertrieb erfolgt über ein Backend (Go), das eine E-Mail mit den Angaben an den Vertrieb und den Kunden sendet. Zur Absicherung vor Spamattacken wurde Google ReCAPTCHAv3 verwendet.
  • Die gesamte Anwendung wurde internationalisiert und ist in 6 Sprachen verfügbar.
  • Um dem Kunden ein einfaches Hosting und Deployment zu ermöglichen, habe ich eine Dockerfile, sowie eine DockerCompose-Datei erstellt. Diese können dann mit einem einfachen Befehl automatisiert eingerichtet werden.
Angular Go Typescript HTML CSS 2D Programmierung mit HTMLCanvas in Typescript Docker Docker Compose
Logistik (Ladungssicherung)
6 years 5 months
2020-01 - now

Entwicklung einer Anwendung für den Austausch von Daten und Informationen

Technische Leitung / Fullstack-Entwickler / Softwarearchitekt Microservices Spring Boot 2.x Angular 12 ...
Technische Leitung / Fullstack-Entwickler / Softwarearchitekt
  • In diesem Projekt entstand eine SaaS-Plattform zur Bündelung und zum Austausch von Informationen und Daten. Die Plattform ermöglicht es, die Daten in einer individuell gestaltbaren, übersichtlichen Struktur darzustellen. Sie richtet sich primär an B2B-Kunden.
  • Das SaaS ermöglicht das Erstellen von Listen, die beliebig viele Einträge in einer hierarchischen Struktur darstellen. Die einzelnen Einträge sind mit Titel, Beschreibung, End- und Startzeitpunkt sowie den Verantwortlichen versehen. An die Einträge können jeweils Dateien gehängt, Stati gesetzt und Kommentare geschrieben werden. Die Erweiterung um Individuelle Felder ist zusätzlich vorgesehen.
  • Ein zentraler Aspekt des Projekts war die Benutzerfreundlichkeit, um sowohl technisch versierte als auch weniger erfahrene Nutzer gleichermaßen anzusprechen. Ein weiteres wichtiges Feature lag auf der Kommunikation und kleinen Features, die die Arbeit mit den Listen vereinfachen und stets die Übersicht maximieren.
  • Das Projekt war in zwei Hauptphasen eingeteilt:
    • Entwicklung eines MVP
    • Weiterentwicklung nach Agiler Vorgehensweise
  • In der ersten Hauptphase übernahm ich die Rolle des technischen Projektleiters und Software-Architekten und war nur bei technisch komplexen Anforderungen in die Entwicklung eingebunden.
  • Meine Aufgaben waren dabei die Koordination der Entwicklung und Fachabteilung sowie die Kontrolle der Zielvorgaben. Da es sich um ein zeitkritisch angelegtes Projekt handelte, entschied ich, dass in der ersten Iteration ein MVP erstellt werden sollte, der bei erfolgreichem Feedback in kurzen Iterationen entsprechend ergänzt werden würde.
  • Mit blick in die Zukunft und dem Austausch mit dem Product-Owner, entschied ich eine Microservice-Architektur zu verwenden. Zum Einsatz kamen hier Spring Boot, Angular und MongoDB.
  • Aufgrund der vorhandenen Server, mit Virtualisierung durch VMWare ESXi, wurde Docker eingesetzt.
  • Nachdem das Feedback zu dem MVP positiv war, wurde ich in die Entwicklung maßgeblich involviert. Ich implementierte u.a. einen Dienst in Spring Boot, der den OAuth Prozess vollständig abbildete und eine granulare Definition der Berechtigungen zuließ. Anschließend wurden alle noch fehlenden Features eingepflegt. Die Ergänzung um Unit-Tests mit JUnit und E2E-Tests für komplexe Use-Cases wurde mit Cypress stetig durchgeführt.
  • Durch den dauerhaften Einsatz im Unternehmen und daher ständig neuen Feature vorgaben, hielt die Entwicklung dauerhaft an. Mit dem Ziel ein vollständiges Produkt mit breiter Einsatzmöglichkeit zu entwickeln
  • Im Rahmen des öffentlichen Go-Lives wurde ein weiteres Team involviert, um den Betrieb der Anwendung dauerhaft zu gewährleisten. Hier habe ich den vollständigen Wissenstransfer und das On-Boarding des Teams übernommen.
  • Für notwendige Datenmigrationen zwischen unterschiedlichen Versionen kam Rust zum Einsatz.
  • Die Anwendung steht aktuell zur Registrierung offen und wird mit meiner Unterstützung weiterentwickelt. Der Betrieb ist ausgelagert, jedoch fungiere ich hier als zentraler Ansprechpartner bei technischen Fragestellungen.
Microservices Spring Boot 2.x Angular 12 Typescript HTML CSS Javascript Java JUnit Rust Bash Docker Docker Compose Linux-Administration Cypress Stripe MongoDB YAML JSON Web-Apps Git npm JWT TailwindCSS SCSS VM Ware ESXi Java JKS certbot Let's Encrypt SSL
Steuerberatung und Wirtschaftsprüfung
1 month
2024-11 - 2024-11

Kassenanbindung und Datenübernahme von zwei Restaurants an die Buchhaltung

Kassenbuch TSE Lightspeed ...

Systemanbindung und Datenanalyse

  • Der Kunde betreibt zwei Restaurants, dabei hat eines ab dem 19.03.2024 den Steuerberater gewechselt (iNUX Meyer & Partner mbB) und das zweite im Oktober eröffnet.
  • Meine Aufgabe bestand darin das Lightspeed Kassensystem mit dem Datev Kassenarchiv zur Weiterleitung in das Kassenbuch und damit in die Buchhaltung des Steuerberaters anzubinden.
  • Dazu kam die Anbindung eines Zahlungsterminals für die Kartenzahlung und die Übernahme der Daten des alten Steuerberaters.
  • Bei der Datenübernahme musste ich zusätzlich die Daten im Kassenbuch analysieren, um hier fehlerhafte Buchungen in der alten Buchhaltung zu ermitteln. Dies lief in enger Zusammenarbeit mit dem Steuerberater.

Kassenbuch TSE Lightspeed DATEV Kassenarchiv Buchhaltung
Con Gusto GbR (Con Gusto / Fatto Per Te)
3 months
2024-06 - 2024-08

Coderefactoring, Bugfixing einer komplexen Codebase

Software-Ingenieur Angular HTML CSS ...
Software-Ingenieur

Coderefactoring, Bugfixing einer komplexen Codebase zum Zeichnen von Elementen mit Verbindungen

  • Der Kunde hatte eine bestehende Anwendung die Elemente auf ein Canvas gezeichnet hat und je nach Konfiguration verbunden werden konnten. Es konnten zusätzlich Unterknoten erzeugt werden, die dann entsprechend auf einem 2D Canvas dargestellt werden. Die Elemente sind mit SVG-Grafiken hinterlegt worden und hatten dann zusätzliche Metadaten in Form von JSON beigefügt
  • Das heißt es konnte beliebig ergänzt werden. Hier habe ich eng mit einem Entwickler des Kunden zusammengearbeitet, um diesen zu entlasten und Deadlines einhalten zu können.
  • Meine Aufgabe bestand darin kleinere Funktionen wie Zooming und Panning effizient zu implementieren. Die Mischung von SVG auf Canvas sowie CSS erlaubt es nicht die eingebauten Funktionen zu verwenden
  • Es gab noch unterschiedlichste Fehler beim Verbinden der Elemente und der Unterelemente, dort habe ich bei der Behebung ausgeholfen, sodass am Ende alle gewünschten Features funktional vorhanden waren
  • Die Codebase war historisch gewachsen und alles betreffend die Logik für die Elemente war in einer Datei mit ca. 5000 Zeilen angesiedelt. Meine Hauptaufgabe war es den Code in logische Teile zu zerlegen sowie Coderedundanzen zu entfernen
  • Im Anschluss meiner Tätigkeit habe ich dem Kunden eine erheblich kleinere und redundanzbefreitere Version der eingänglichen Codebase hinterlassen.

Angular HTML CSS 2D Programmierung mit HTML-Canvas in Typescript
Elektroindustrie
2 months
2024-05 - 2024-06

Implementation einer Standard-BWA mit Erweiterungsmöglichkeit

Software-Ingenieur / Wirtschaftliche Beratung Angular Typescript Go ...
Software-Ingenieur / Wirtschaftliche Beratung
  • Der Kunde betreibt ein maßgeschneidertes ERP-System, das bereits erfolgreich bei mehreren Unternehmen implementiert ist
  • Um den Anwendern des ERP-Systems zu ermöglichen unterjährig vergleichbare Auswertungen zu erhalten, habe ich eine Standard-BWA implementiert. Also eine gestaffelte Auflistung der Erträge, Aufwendungen und Umsatzerlöse
  • Die Angular Anwendung habe ich so implementiert, dass eine Anfrage an einen Endpoint gesendet wird, die den Typ der BWA beinhaltet anhand dessen das Backend die Daten aufbereitet und zurücksendet
  • Im Backend wird die eigentliche Berechnung vorgenommen, dazu wird eine neue Datenbanktabelle angelegt, die einzelne Zeilen abbildet und Kontenbereiche zugeordnet hat. Gemäß dieser Definition werden anschließend die Daten aus der Buchhaltung zusammengestellt und an das Frontend gesendet. 
  • Diese Umsetzung ermöglicht es, weitere BWAs hinzuzufügen indem einfach weitere Definitionen in die Datenbank eingetragen werden und diese zusätzlich im Frontend hinterlegt.
Angular Typescript Go Gorm (OR-Mapper) MariaDB npm git
SymblCrowd GmbH
2 months
2024-05 - 2024-06

Anlagenmanagement eines ERP-Systems

Software-Ingenieur / Wirtschaftliche Beratung Angular Typescript Go ...
Software-Ingenieur / Wirtschaftliche Beratung

Ergänzung um eine automatische Abschreibungsfunktion im Anlagenmanagement eines ERP-Systems

  • Der Kunde betreibt ein maßgeschneidertes ERP-System, das bereits erfolgreich bei mehreren Unternehmen implementiert ist.
  • Die vorhandene Eingabe für Eingangsbelege wurde von mir durch eine automatische Abschreibefunktion erweitert.
  • Vorbereitend auf das Kundengespräch zur Aufwandsabschätzung habe ich die gesetzlich relevanten Regelungen durchgearbeitet, um den Funktionsumfang und notwendige Anpassungen ermitteln zu können.
  • Bei der Umsetzung in Angular musste ich sicherstellen, dass bei der Erfassung einzelner Eingangsrechnungspositionen geprüft wird, ob ein Konto aus der Anlagenbuchhaltung ausgewählt wurde. In diesem Fall wird eine Option zur Aktivierung der automatischen Abschreibung angeboten. Zusätzlich besteht die Möglichkeit, eine bestehende Anlage auszuwählen, falls es sich beispielsweise um ein Bauteil einer bereits vorhandenen Anlage handelt.
  • Das in Go implementierte Backend wurde dahingehend von mir ergänzt, dass gemäß den Angaben durch den Kunden die Abschreibung gespeichert wird, um monatlich eine Buchung auszulösen. Falls es sich um einen Bestandteil einer Anlage handelt, werden ggf. direkt die Abschreibungsbuchungen durchgeführt oder die Laufzeit der Anlage verlängert.

Angular Typescript Go Gorm (OR-Mapper) MariaDB npm git
SymblCrowd GmbH
2 months
2024-04 - 2024-05

Entwicklung unterschiedlicher Reports in einem ERP-System

Software-Ingenieur / Wirtschaftliche Beratung Angular Typescript Go ...
Software-Ingenieur / Wirtschaftliche Beratung
  • Der Kunde betreibt ein maßgeschneidertes ERP-System, das bereits erfolgreich bei mehreren Unternehmen implementiert ist. Trotz des Erfolgs waren die Reporting-Funktionen des Systems bisher sehr begrenzt, bestehend aus lediglich zwei einfachen Reports, die downloadbare Excel-Dateien erzeugen (keine Darstellung im Frontend). Angesichts der wachsenden Datenanforderungen und der Notwendigkeit, umfassendere Einblicke in operative Prozesse zu gewinnen, bestand meine Aufgabe darin, eine Reihe von detaillierten Reports zu entwickeln. Diese sollten nicht nur die bestehenden Berichtsanforderungen erfüllen, sondern auch die Grundlage für zukünftige Analysefunktionen bilden:
    • Umsätze
    • Umsätze je Kunde
    • Umsätze je Artikel
    • Umsätze je Fahrzeug
    • Umsätze je Fahrer 
  • und im Zusammenhang mit Fahrtdaten:
    • Fahrtenbericht
    • Fahrtenbericht detailliert
    • Nachtfahrten
    • Fahrten ? 24 Stunden Auswertungen 
  • Die Struktur und der Aufbau eines Reports ließ zu ein eigenes Reportingsystem zu erstellen, um Coderedundanz zu vermeiden. Jeder Report besitzt in der Regel den Funktional gleichen Aufbau. Das heißt ich entwickelte eine generische Struktur, die die Darstellung im Frontend mitlieferte und deklarativ Sortierung und Suche abbildet. 

  • Das heißt durch die Angabe, ob Felder sortierbar sein sollen und welche Sortierlogik den jeweiligen Feldern obliegt (Datum, Zahl, Zeichenkette), muss nichts Weiteres implementiert werden. Sofern die Implementation einer individuellen Logik notwendig ist, kann dies entsprechend als Funktion angegeben werden. Im Frontend musste dann diese generische Struktur entgegengenommen und für die mit der kundeneigenen Angular-Komponente dargestellt werden. Mit diesem von mir umgesetzten Reportingsystem bestand der maßgebliche Aufwand bei der Realisierung der Reports in dem Zusammenstellen der Daten und die Deklaration der Strukturen zur Darstellung im Frontend. 

  • Im Zusammenhang mit den Fahrtenreports begab sich die Eigenheit, dass der Kunde hier ein eigenes System implementiert hat, dass das Tracking von Fahrzeugen umsetzt und die Daten aufbereitet. Hier musste ich lediglich die Endpoints einrichten und mit einem der Mitarbeiter abstimmen, was ich im Einzelnen benötige.

Angular Typescript Go Gorm (OR-Mapper) MariaDB npm git
SymblCrowd GmbH
1 month
2024-03 - 2024-03

Kassenanbindung und Datenübernahme von zwei Restaurants an die Buchhaltung

Kassenbuch TSE Lightspeed ...

Systemanbindung und Datenanalyse

  • Der Kunde betreibt zwei Restaurants, dabei hat eines ab dem 19.03.2024 den Steuerberater gewechselt (iNUX Meyer & Partner mbB) und das zweite im Oktober eröffnet.
  • Meine Aufgabe bestand darin das Lightspeed Kassensystem mit dem Datev Kassenarchiv zur Weiterleitung in das Kassenbuch und damit in die Buchhaltung des Steuerberaters anzubinden.
  • Dazu kam die Anbindung eines Zahlungsterminals für die Kartenzahlung und die Übernahme der Daten des alten Steuerberaters.
  • Bei der Datenübernahme musste ich zusätzlich die Daten im Kassenbuch analysieren, um hier fehlerhafte Buchungen in der alten Buchhaltung zu ermitteln. Dies lief in enger Zusammenarbeit mit dem Steuerberater.

Kassenbuch TSE Lightspeed DATEV Kassenarchiv Buchhaltung
Con Gusto GbR (Con Gusto / Fatto Per Te)
3 months
2024-01 - 2024-03

Erzeugung von XRechnung/ZUGFeRD

Software-Ingenieur / Wirtschaftliche Beratung Angular Typescript Go ...
Software-Ingenieur / Wirtschaftliche Beratung

Entwicklung einer Komponente zur Erzeugung von XRechnung/ZUGFeRD aus einem bestehendem ERP-System

  • Der Kunde entwickelt ein eigenständiges ERP-System, das bereits bei mehreren Kunden im Einsatz ist.
  • Mein Verantwortungsbereich umfasste die umfangreiche Recherche und Implementierung von Prozessen zur Erzeugung und Einbettung von XML-Rechnungen in PDFs aus einem bestehenden Datenmodell. Die Aufgaben im Detail:
    • Recherche der EN16931 konformen Formate (UBL/CII)
    • Auswahl des zu implementierenden Zielformats
    • Rücksprache mit dem Kunden
    • Implementation des gewählten Formates (UBL)
    • Umwandlung von UBL nach CII mit Hilfe einer externen Java-Bibliothek, um ZUGFeRD zu unterstützen.
    • Einlesen beider Formate bei Eingangsrechnungen, da dies gesetzliche Vorgabe ist
    • Abbildung auf die Datenstruktur des ERP, damit die Daten automatisch angezeigt werden
    • Anbindung der Endpoints an die Oberfläche
  • Das Backend ist in Go umgesetzt und im Frontend kommt Angular (noch v13) zum Einsatz. Den aufwendigsten Teil stellte die Abbildung des internen Datenmodells auf die XML-Struktur dar aufgrund der Komplexität. Sowohl die des Datenformats im ERP als auch die Vorgaben und Struktur des XML-Formats.
  • Um auch ZUGFeRD zu unterstützen, ist es gefordert CII, als eingebettetes Format, zu verwenden. Indes kam eine Java-Bibliothek zum Einsatz, die die Umwandlung von UBL zu CII erlaubt. Hier waren jedoch noch einige Anpassungen durch mich notwendig.
  • Um das Einlesen von Eingangsrechnungen zu unterstützen musste entsprechend auch der umgekehrte Prozess abgebildet werden, also von XML zu ERP-Datenformat
  • Im Rahmen des Frontends war meine Aufgabe die Anbindung des Datenmodells und das Ansprechen der korrekten Endpoints. Das Design und Layouting wurde vom Kunden übernommen
Angular Typescript Go Gorm (OR-Mapper) MariaDB npm git
SymblCrowd GmbH
2 months
2023-07 - 2023-08

Entwicklung einer Anwendung

Softwareentwickler Angular Typescript AWS Lambda ...
Softwareentwickler

Entwicklung einer Anwendung zur Anzeige von Live-Daten über die aktuellen Gaspreise

  • Das Projekt zielte darauf ab, ein System zur Echtzeit-Überwachung der Gaspreise zu entwickeln. Es ermöglichte Händlern, auf Basis von Live-Daten Handelspositionen zu erstellen und zu simulieren, um deren Performance zu beurteilen.
  • Meine Aufgabe im Projekt bestand in der Entwicklung einer anspruchsvollen Benutzeroberfläche, die es ermöglicht, Abfragen an ein Livedatensystem für Gaspreise zu stellen. Die generierten Abfragen wurden über AWS Lambda in einer DynamoDB-Datenbank gespeichert.
  • Ich realisierte die Anwendung in Angular und Typescript, wobei NX als Build-Tool zum Einsatz kam. Weiterhin erweiterte ich die Anwendung um eine spezialisierte Anzeigeoberfläche, die für die Visualisierung der Ergebnisse der zuvor erstellten Abfragen dient, unter Verwendung von AgGrid.

Angular Typescript AWS Lambda AgGrid NX npm git SonarQube DynamoDB Azure DevOps Scrum
Energiewirtschaft
1 year 2 months
2022-05 - 2023-06

Entwicklung einer Anwendung für den Austausch von Daten und Informationen

Software-Architect / Full-Stack-Developer / DevOps-Engineer Java TypeScript JavaScript ...
Software-Architect / Full-Stack-Developer / DevOps-Engineer

Ziel des Projektes war es eine Anwendung zu entwickeln, die den Informations- und Datenaustausch in einem SaaS ermöglicht und diese in einer übersichtlichen frei erstellbaren Struktur bündelt. Die Zielgruppe sind dabei andere Unternehmen (B2B).


Das SaaS ermöglicht das Erstellen von Listen, die beliebig viele Einträge in einer hierarchischen Struktur darstellen. Die einzelnen Einträge sind mit Titel, Beschreibung, End- und Startzeitpunkt sowie den Verantwortlichen versehen. An die Einträge können jeweils Dateien gehängt, Stati gesetzt und Kommentare geschrieben werden.


Die einfache Bedienbarkeit lag maßgeblich im Fokus, da die Benutzerprofile von technisch versiert bis technischen Laien reichten.

Ein weiteres wichtiges Feature lag auf der Kommunikation und kleinen Features, die die Arbeit mit den Listen vereinfachen und stets die Übersicht maximieren.


In meiner Rolle habe ich die Entwickling von der Aufnahme der Anforderungen bis zum produktiven Einsatz begleitet. 

Dabei habe ich zuerst die Anforderungen anhand eines konkreten Falls festgehalten. Hier wurde der Datenaustausch zwischen der Wirtschaftsprüfungskanzlei und den Mandanten im Rahmen der Jahresabschlussprüfung als Use-Case verwendet. 


Im initialen Betrieb wurde die Anwendung auf vorhanden Servern in Docker gehostet. Es wurde dabei auf Angular 12 mit Typescript im Frontend und Spring Boot mit Java bei den Backend-Diensten gesetzt. Zur Kommunikation kam dabei REST zum Einsatz und die Datenhaltung wurde mit MongoDB umgesetzt. Die Software wurde kontinuierlich im internen Betrieb mit über 20 Mandanten verwendet und stetig weiterentwickelt. Das öffentliche Go-Live wurde auf einem Virtual Private Server vorgenommen. Die autmatisierte Kauffunktion mit Registrierung nach Bezahlung wurde mit Stripe umgesetzt.


Die gesamte Entwicklung wurde zu Beginn maßgeblich von einem Auszubildenden umgesetzt hier diente ich nur als Projektleiter und Ansprechpartner. In diesem Rahmen wurde ein vorläufer entwickelt. Diesen Vorläufer habe ich im Anschluss

Spring Boot Git MongoDB Angular Docker Stripe TailwindCSS
Java TypeScript JavaScript JSON JsonWebToken (JWT) Microservice Cypress YAML HTML SCSS Rust REST
iNUX Meyer & Partner mbB Wirtschaftsprüfungsgesellschaft Steuerberatungsgesellschaft
Bornheim, Rheinland
1 year 2 months
2022-02 - 2023-03

SaaS zur Grundsteuerklärung für Wohn- und Geschäftsgrundstücke

Technische Leitung / Fullstack Developer / Softwarearchitekt Spring Boot 2.x Angular 12 Typescript ...
Technische Leitung / Fullstack Developer / Softwarearchitekt

SaaS zur Grundsteuerklärung für Wohn- und Geschäftsgrundstücke mit Übermittlung an das Finanzamt (ohne Zertifikat)
  • Das Ziel des Projekts war die Entwicklung einer alternativen Lösung zur ELSTER-Software des Finanzamtes für die Grundsteuererklärung. Der Fokus lag dabei auf Endkunden (B2C), insbesondere Nutzern ohne technische Vorkenntnisse
  • Neben der hohen Benutzerfreundlichkeit war es erforderlich, zu allen Eingabeoptionen umgangssprachliche Erläuterungen bereitzustellen, die keine Vorkenntnisse im Steuerrecht voraussetzen. Eine besondere Herausforderung bei der Entwicklung war der Transfer des fachlichen Know-Hows in die technische Umsetzung, da die Grundlage ein noch nicht verabschiedetes Gesetz bildete
  • Im Rahmen des Projektes entschied ich mich für eine Serverless-Architektur unter dem Einsatz von Microsoft Azure, um eine möglichst minimale Infrastruktur zu ermöglichen, gesetzt
  • Bei der Umsetzung habe ich dabei auf Angular 13 mit Typescript und TailwindCSS gesetzt. Das Backend wurde unter Verwendung von Azure Functions mit Typescript gemäß REST umgesetzt. Die Datenhaltung basierte auf Azure CosmosDB (MongoDB). Dateien die Hochgeladen werden mussten, um steuerrechtlichen Regelungen zu entsprechen wurden in Azure Blob Storage abgelegt. Die Autorisierung wurde mit Azure AD B2C umgesetzt. Für den Individuellen Bezahlprozess wurde die API von Paypal verwendet
  • Die Anwendung wurde erfolgreich in Betrieb genommen und blieb bis zum Ende der offiziellen Abgabefristen für Registrierungen geöffnet. Sie ist weiterhin für Kanzleien im Einsatz. Bereits registrierte Anwender können nach wie vor auf ihre abgesendeten Daten zugreifen, diese einsehen und herunterladen.
Spring Boot 2.x Angular 12 Typescript HTML CSS Javascript Java Azure Functions Azure Web-Apps Azure AD B2C Azure CosmosDB Azure Blob Storage NodeJS npm npx JSON YAML XML ELSTER ERiC git Serverless Architecture Paypal API
iNUX Meyer & Partner mbB Wirtschaftsprüfungsgesellschaft Steuerberatungsgesellschaft
Bornheim, Rheinland
1 year 2 months
2022-02 - 2023-03

Entwurf und Erstellung eines Reports zum Stundencontrolling der Mitarbeiter

KNIME JasperReports Controlling

Entwurf und Umsetzung mit KNIME und JasperReports

  • Dieses Projekt wurde zum internen Kostencontrolling umgesetzt. Vor der Umsetzung gab es eine Excelliste, die alle Daten enthielt und Zwischentabellen für bestimmte Berechnungen. Die große Problematik bot die Flexibilität, da neue Mandate und neue Mitarbeiter aufwendig nachgepflegt werden mussten
  • An diese Stelle habe ich nach Rücksprache ein Modell entworfen, das die Daten aus dem Quellsystem (DATEV) heranzieht und auf Basis dieser einen übersichtlichen Report erzeugt. Dabei wurden Metriken, wie Anzahl an Buchungen je Stunde für Buchhaltungstätigkeiten oder der durchschnittliche Gesamtaufwand für einzelne Mandanten unterteilt in individuelle Tätigkeitsfelder dargestellt.
  • Die gesamte Verarbeitungspipeline wurde zur Transparenz und Analyse auch durch fachliche Mitarbeiter in KNIME umgesetzt. Hier wurde maßgeblich auf die Datenverarbeitungsfähigkeiten diese Anwendung gesetzt.
  • Die visuelle Darstellung wurde durch den Entwurf eines entsprechenden JapserReports umgesetzt, da es sich nahtlos an KNIME anbinden lässt und im selben Ökosystem implementiert ist.

KNIME JasperReports Controlling
iNUX Meyer & Partner mbB
5 years 11 months
2016-03 - 2022-01

Anwendung zur Überführung von Kontenplänen

Software-Engineer / Full-Stack-Developer TypeScript Java HTML ...
Software-Engineer / Full-Stack-Developer

  • Das Projekt wurde mit dem Ziel durchgeführt, eine Anwendung zu schaffen, die eine Überführung von Kontensalden aus einem Quellsystem in die Kontenstruktur eines Zielsystems ermöglicht. Besonders wichtig war, dass diese initiale Arbeit nur einmal gemacht werden muss und der Aufwand in den Folgejahren damit auf ein Minimum reduziert ist.
  • In der ersten Phase habe ich eine Pilotanwendung in Scala mit ScalaFX entwickelt, die auf eine eigens entwickelte Workflow Bibliothek zugriff (Scala), um die Weiterverarbeitung der Eingabedaten zu definieren. Die Eingabedaten sind dabei eine beliebige Anzahl an CSV-Dateien, die mindestens eine Kontonummer, den Saldo und eine Kontenbeschriftung beinhalten müssen.
  • In der Anwendung wird ein Zielkontenplan hinterlegt, der jedoch so aufgebaut ist, dass er einer Bilanzstruktur gemäß der E-Bilanz gleicht. Die Importierten Konten aus der CSV-Datei werden dann via Drag-and-Drop den Zielkonten zugeordnet. Da diese Übertragung jährlich geschieht, müssen in den Folgejahren lediglich neue Konten zugeordnet werden. Das Ganze wird anschließend exportiert und kann in das neue Zielsystem importiert werden.
  • Das ganze Projekt orientierte sich im Rahmen der Pilotierungsphase an einem konkreten Fall bei einem der Mandanten meines Arbeitgebers. Für mich standen dabei zwei beteiligte aus der Fachabteilung als Ansprechpartner zur verfügung sowie 2 Ansprechpartner aus der Technik zur beschaffung der Daten.
  • Die Anwendung wurde zuerst mit ScalaFX für die UI entwickelt. Aufgrund der hohen Nutzung im Betrieb wurde sie so weit refactored, dass Electron und Angular 8 zum Einsatz kamen, um eine wesentlich bessere User Experience zu erzielen und da die Implementierung neuer Features erheblich schneller ging.
  • Die Anwendung wurde bis 2022 stetig weiterentwickelt und ist weiterhin im Einsatz. Die Quellsysteme reichen dabei von Navision über Addisson bis hin zu SAP.

Electron JavaFX Angular Node.js
TypeScript Java HTML CSS Scala Electron npm Git
iNUX Meyer & Partner mbB Wirtschaftsprüfungsgesellschaft Steuerberatungsgesellschaft
Born
4 months
2019-02 - 2019-05

Teilnahme an WirVsVirus vom Bund: ITO ? Entwicklung eines Vorläufers der Corona-App

Softwarearchitekt / Frontend-Developer TypeScript HTML SCSS
Softwarearchitekt / Frontend-Developer

  • Im Rahmen des Hackathons WirVsVirus ging es um die Entwicklung innovativer Ideen in allen Bereichen, die im Umgang mit der Pandemie stehen. Ich habe mich einem Team angeschlossen, dass versucht hat den Kontakt zwischen Personen so nachzuvollziehen, dass der Kontakt mit infizierten Personen über das Mobiltelefon sichergestellt werden kann.
  • Der Hackathon ging nur über das Wochenende hinweg, jedoch gab es mehrere Gruppen, die sich dem Tracking verschrieben hatten. Unser Team hat anschließend vorgeschlagen, dass wir uns mit den anderen Teams zusammentun und eine solide Anwendung für alle mobilen Endgeräte entwickeln. Der wichtigste Punkt sollte hierbei die Wahrung der Privatsspähre sein, daher haben wir mit einer Gruppe aus den USA zusammengearbeitet die sich auf privacy-preserving-technologies fokussiert haben. Dazu haben wir ein Schlüsselaustausch- und -erzeugungsverfahren entwickelt, dass die Privatsphäre schützt und keine Rückschlüsse auf die Anwender zulässt ? hier war ein Team von 6 Personen einschließlich mir involviert.
  • In meiner Rolle als Softwarearchitekt habe ich über den Einsatz der Technologie, den Aufbau des Backends und den technischen Problemstellungen meine Expertise geteilt. Diese war maßgeblich auf das Scaling und die Möglichkeit der schnellen Entwicklung fokussiert.
  • Als Frontend-Developer habe ich maßgeblich die Entwürfe unseres Designers mit React-Native umgesetzt und die Kommunikation zwischen dem Frontend- und Backend-Team koordiniert.
  • Die Entwicklung von den systemspezifischen Komponenten (Android, Apple) wurden von anderen Teamsmitgliedern übernommen. Unter anderem wurden Tests zur Distanzmessung von Bluetooth vorgenommen und wissenschaftliche Veröffentlichungen zu Rate gezogen, um die Genauigkeit bestimmen zu können.
  • Die Entwicklung ging bis zu einem Prototyp. Es wurde alles öffentlich geteilt, einschließlich der Protokolle unserer Besprechungen sowie Dokumentationen. Im Rahmen unserer Bemühungen gab es einen Call mit Verantwortlichen aus dem Gesundheitsministerium, Telekom und SAP, da diese an unserer Entwicklung interessiert waren und das Know-How gerne verwenden wollten. Ohne unser direktes Mitwirken kam dann die Corona-Warn-App an den start. Unser Angebot die Anwendung als staatlich gefördertes Projekt zu entwickeln, wurde nicht angenommen.

ReactNative Atlassian Confluence Atlassian JIRA Git
TypeScript HTML SCSS
Bochum
1 year 10 months
2015-01 - 2016-10

Entwicklung einer Web-Anwendung zur Statusnachverfolgung von betrieblichen Prozessen

Software-Engineer Java Scala JavaScript ...
Software-Engineer

  • Dieses Projekt wurde dazu ins Leben gerufen, um die Statusnachverfolgung interner Prozesse von Excellisten auf eine einheitlichere und automatisierte Umsetzung zu bringen. Einzelne Schritte können dabei organisiert in Listen festgehalten und anschließend als Vorlage angelegt werden. Diese Vorlagen werden dazu verwende, um Listen mit Verantwortlichen und der Zuordnung zu Mandanten zu erzeugen. Da der Großteil der Prozesse sich regelmäßig wiederholt (z.B. monatlich, quartalsweise, etc.) ist die Anwendung um eine Schedulingfunktionalität ergänzt. Hier kann der Rhytmus beliebig eingestellt und die zu erstellende Liste ausgewählt werden.
  • Die Anwendung habe ich ursprünglich in AngularJS geschrieben, aber im Folgejahr auf Angular 2 umgestellt. Das Backend wurde als Microservice-Architektur umgesetzt, bestehend aus 4 Services: Einer für die Kernfunktion, einer für die Metadaten, einen Scheduler und einen Authorisierungs- & Authentifizierungs Service. Die Dienste sind bis auf den AuthService in Vert.X mit Scala implementiert. Der AuthService ist in Spring Boot entwickelt. Die Datenhaltung findet in MongoDB statt.
  • Das Web-Anwendung ist weiterhin bei meinem ehemaligen Arbeitgeber in Betrieb und wird dort täglich für die Nachverfolgung der rekurrierend anfallenden Arbeiten verwendet.

Angular Vert.X sbt Quartz Node.js Spring Boot
Java Scala JavaScript TypeScript HTML CSS
iNUX Meyer & Partner mbB Wirtschaftsprüfungsgesellschaft Steuerberatungsgesellschaft
Bornheim, Rheinland
9 months
2013-10 - 2014-06

Arbeitsplananwendung für Mitarbeiter im Betrieb Umstellung auf Windows 7

Software Developer Visual Basic 6
Software Developer

  • Bei diesem Projekt ging es um die Migration einer bestehenden Anwendung, die auf den Laptops der Mitarbeiter im Außenbetrieb eingesetzt wurde, um Wartungsarbeiten zu koordinieren.
  • Die Anwendung kommunizierte über EDI mit SAP und ermöglichte damit auch den Offlinebetrieb und die spätere Synchronisierung der Daten. Die Anwendung war vollständig in Visual Basic 6 umgesetzt und greifte entsprechend auf systembezogene Komponenten zurück.
  • Meine Aufgabe bestand darin, alle Funktionen auf einem Windows 7 PC zu testen, fehler zu dokumentieren und diese im Anschluss zu beheben. Daher nahm ich erst die Rolle des Testers ein, um anschließend die von mir Dokumentierten Fehler mit den Productownern zu besprechen und zu beheben bzw. Vorschläge für den Weiterbetrieb der Anwendung zu machen.
  • Die firmenweite Migration auf Windows 7 haben ich nicht mehr mitbegleitet, jedoch war die Anwendung am Ende vollständig auf Windows 7 einsatzfähig.

Visual Basic 6
E.On Ruhrgas AG
Essen, Ruhr
6 months
2010-01 - 2010-06

Entwicklung einer Im- & Exportkomponente in das Flottenmanagementsystem ?TORMAXX? in SAP

Software Developer ABAP
Software Developer

  • Das Projekt zielte auf den Import und Export von einem -komplex strukturierten Datenformat in das bestehende SAP Flottenmanagement. 
  • Innerhalb des Projektes wurde ich als Softwareentwickler eingesetzt. Um das Ziel zu erreichen habe ich das Datenformat analysiert und entsprechende Funktionsbausteine in ABAP implementiert, um diese im Anschluss für die Umsetzung eines DynPros zu verwenden. Dabei mussten die Daten angezeigt werden und geprüft werden, ob diese bereits im Bestand vorhanden sind. Im Anschluss war es möglich die zu importierenden Daten zu selektieren und den Import anzustoßen.
  • Der besondere Aufwand bestand in dem Abstimmen der Bestandsdaten mit dem Import und die Implementation als DynPro in ABAP. Betrieben wurde das ganze auf einem SAP/R3.

DynPro for ABAP
ABAP
E.On Ruhrgas AG
Essen, Ruhr
4 months
2008-06 - 2008-09

Entwicklung einer Anwendung zur Verwaltung der Lehrstuhl Bibliothek

Software Developer (Fachinformatiker/Anwendungsentwicklung) Java JSP JavaScript ...
Software Developer (Fachinformatiker/Anwendungsentwicklung)

  • Dieses Projekt sollte die große Sammlung an wissenschaftlichen Magazinen, Arbeiten und Literatur, die an unserem Lehrstuhl vorzufinden war, in einer Software archivieren und die Verfügbarkeit anzeigen - kurz gesagt eine Bibliotheksverwaltung.
  • Meine Aufgabe bestand darin, gemäß der Anforderungen, die gesamte Anwendung umzusetzen.
  • In erster Linie wurden die konkreten Anforderungen aufgenommen, die sich besonders auf den wissenschaftlichen Betrieb konzentriert haben.
  • Die Anwendung sollte zentral als Web-Anwendung verfügbar sein, daher wurden Java-Server-Pages als grundlegende Technologie verwendet. Um die Oberfläche möglichst interaktiv zu machen und Ladezeiten zu verhindern, wurde AJAX verwendet. Die gesamte Persistenzschicht wurde durch eine MySQL Datenbank umgesetzt, die mit Hibernate als OR-Mapper angesteuert wurde.
  • Eine Exportmöglichkeit der einzelnen Daten in BibTeX war eine weitere Anforderung, damit diese direkt in wissenschaftliche Arbeiten als Zitatquelle eingefügt werden konnten.
  • Im Anschluss der Umsetzung habe ich einzelne Teile der Bibliothek in die Software eingepflegt, diese Aufgabe hat nach Abschluss des Projektes eine andere Fachkraft durchgeführt.

Hibernate Java EE
Java JSP JavaScript HTML CSS Ajax
Ruhr-Universität-Bochum Lehrstuhl für Softrwaretechnik
Bochum
3 months
2007-10 - 2007-12

Entwicklung eines Tätigkeitstrackers

Software-Developer Java JSP JavaScript ...
Software-Developer

  • Im Rahmen dieses Projektes ging es darum den Mitarbeitern am Lehrstuhl eine zentralisierte Anwendung für das Verfolgen ihrer Tätigkeiten bereitzustellen.
  • Die Anwendung wurde im Rahmen meiner Abschlussprüfung zum Fachinformatiker/Anwendungsentwicklung umgesetzt, daher war ich für die gesamte Umsetzung verantwortlich.
  • Durch die Anforderung, dass die Anwendung zentral verfügbar sein sollte, wurde eine klassische Client-Server Architektur gewählt, wobei der Client im Web laufen sollte. Das Frontend wurde mit JSP und AJAX implementiert (Frameworks waren in dem heutigen Außmaß noch nicht verfügbar). Im Backend lief entsprechend ein Tomcat-Web-Server und die Datenhaltung wurde in MySQL realisiert. Als OR-Mapper fungierte, das damals noch in der Betaversion befindliche, Hibernate.
  • Dies stellte auch die größte schwierigkeit dar, mangels ausgereifter Dokumentation und des Betazustandes, war es besonders schwer die Annotation so zu verwenden, dass das gewünschte Datenmodell abgebildet wurde.
  • Das Projekt war erfolgreich und wurde vollständig umgesetzt.

Hibernate Java EE
Java JSP JavaScript Ajax HTML CSS
Ruhr-Universität-Bochum Lehrstuhl für Softrwaretechnik
Bochum

Aus- und Weiterbildung

Aus- und Weiterbildung

11 years 9 months
2014-09 - now

Informatik (Computer-Science)

Master of Science in Computer-Science (M.Sc. Informatik), Fachhochschule Dormund
Master of Science in Computer-Science (M.Sc. Informatik)
Fachhochschule Dormund
Nur noch Abschlussprojekt und Masterthesis offen.
7 months
2020-02 - 2020-08

Ausbilderschein der IHK

Ausbilderschein, IHK des Mittleres Ruhrgebiet, Bochum
Ausbilderschein
IHK des Mittleres Ruhrgebiet, Bochum
4 years 8 months
2009-09 - 2014-04

Informatik (Computer-Science)

Bacheolor of Science in Computer-Science (B.Sc. Informatik), Fachhochschule Dortmund
Bacheolor of Science in Computer-Science (B.Sc. Informatik)
Fachhochschule Dortmund
10 months
2008-08 - 2009-05

Fachabitur (Elektrotechnik)

Fachhochschulreife, Technische berufliche Schule 1 Bochum
Fachhochschulreife
Technische berufliche Schule 1 Bochum
3 years
2005-08 - 2008-07

Ausbildung: Fachinformatiker Anwendungsentwicklung

Fachinformatiker Anwendungsentwicklung, Bochum
Fachinformatiker Anwendungsentwicklung
Bochum

Position

Position

The roles I fit in are generally all in the field of Software-Engineering - from Developer to tech lead or Architect.

Kompetenzen

Kompetenzen

Top-Skills

Fullstack-Developer Java Typescript Angular ReactJS Scala Python Rust Kotlin Azure DevOps REST GraphQL Node.js Spring Boot

Produkte / Standards / Erfahrungen / Methoden

Spring Boot
Fortgeschritten
Java
Experte

Profil:

Mit über 15 Jahren Berufserfahrung bin ich besonders auf die Entwicklung von Microservice-Architekturen im SaaS-Umfeld fokussiert. Unter dem Einsatz modernster Technologien, wie Azure, AI und Edge-Computing, entwerfe und entwickle ich für meine Kunden robuste, skalierbare und zukun5ssichere Lösungen.


Arbeit mit Kunden

  • Im Rahmen meiner BerufslauSahn habe ich als So5wareentwickler und So5ware-Architekt spezialisierte technische Lösungen für komplexe Herausforderungen für Unternehmen aller Größenordnungen entwickelt. Dieser Prozess umfasst alles, von der Analyse des Ist-Zustands bis hin zur Umsetzung der individuellen Kundenanforderungen. 
  • Dabei berücksichNge ich stets die bestehenden Systeme und Technologien des Kunden, um eine nahtlose IntegraNon zu gewährleisten. 
  • Meine langjährige Erfahrung, sowohl im fachlichen Bereich als auch im Kundenkontakt, ermöglicht es mir, professionell aufzutreten und mich effizient in unterschiedliche Teamdynamiken einzufügen. 
  • Meine Arbeitsweise ist von einem offenen, fairen und respektvollen Miteinander geprägt, da ich überzeugt bin, dass dies die Grundlage für erfolgreiche Projekte ist.


Wie kann ich Sie bereichern?

  • Durch meine Erfahrung und der engen fachlichen Zusammenarbeit mit meinen Au5raggebern und Vorgesetzten bin ich in der Lage, die Anforderungen der Au5raggeber zügig in technische Lösungskonzepte umzuwandeln und diese verständlich zu vermitteln. Anschließend entwerfe ich einen detaillierten Projektplan, der die Planungssicherheit für die Umsetzung maßgeblich erhöht. 
  • Meine Erfahrungen als So5wareentwickler, insbesondere als Fullstack-Entwickler und So5warearchitekt, ermöglichen es mir, direkt im Projekt meine Fähigkeiten einzusetzen und den Aufbau der So5ware unter Berücksichtigung zukünftiger Ziele zu gestalten und umzusetzen.
  • Dank meiner Erfahrung als Ausbilder kann ich lernenden Teamkollegen hilfreiche und konstruktive Lösungswege bieten, die durchdacht und lernfördernd sind. Diese kommuniziere ich respektvoll und auf Augenhöhe.


Skills

  • Beratung
  • Produktentwicklung
  • Softwareentwicklung
  • Software-Architekturen
  • Datenbanken, Netzwerke
  • verteilte Systeme
  • Betriebssysteme
  • Projektmanagement


Software-Engineering

UML, OOA, OOD, StarUML, EnterpriseArchitect, Java, Spring Boot, JavaEE, JSP, JSF, Tomcat, Vert.x, HTML, CSS, Javascript, Typescript, AngularJS, Angular 2+, NodeJS, GoLang, Rust, Axum, Askama, WebAssembly (WASM), Scala, Spray. io, Akka, Swagger, OpenAPI, Docker, Docker Compose, Linux, VMWare ESXi, MySQL, PostgreSQL, MongoDB, DynamoDB, Hadoop, JUnit, JGiven, Protractor, Selenium, Cypress, ScalaTest, Ionic, bash, Git, SVN, Thymeleaf, Java Messaging Service, EJB, XML, JSON, YAML, TOML, DSL Entwicklung, JMeter, Jira, Confluence, OAuth, JWT, Azure DevOps, Azure CosmosDB, Azure Functions, Azure Blob Storage, Azure Web-Apps, JAM-Stack, AstroJS, Hugo, Rust, Actix, Warp, Yew, WebAssembly (Wasm+Wasi), Test Driven Development (TDD), Serverless-Architektur, Microservice-Architektur, Reactive Extensions (Rx), Netzwerkadministration, Sophos UTM, SAP R3, SAP BW, DynPro for ABAP, Funktionsbausteine, WebDynPro for Java, WebDynPro for Java, SAP PM, SAP FI-CO, SAP HR, B. ON.D Finance (SAP Finanzbuchhandlung für den Autohandel), LightSpeed Kassensysteme


Softskills

  • Kommunikationsfähigkeit
  • Kompromissbereitschaft
  • Diplomatie
  • Durchsetzungsvermögen
  • konsequentes Handeln
  • Ideenreichtum
  • abstraktes und lösungsorientiertes Denken
  • Lernbereitschaft
  • Verantwortung
  • Fleiß
  • Flexibilität
  • selbstständiges Arbeiten
  • Teamfähigkeit
  • Kooperation
  • Reisebereitschaft


Berufserfahrung

2015 - 2023

Kunde: iNUX Meyer & Partner mbB


Aufgaben:

  • Im Rahmen meiner Anstellung bei der iNUX Meyer & Partner mbB war ich neben der Softwareentwicklung für den Betrieb der IT-Infrastruktur verantwortlich. Dies schließt das Ticket-System, eine Projektmanagementplattform, 2 intern Entwickelte Web-Anwendungen und ein Wiki, die in Docker betrieben wurden ein. Überdies war ich noch für Supporttätigkeiten hinsichtlich DATEV zuständig.
  • Meine Aufgaben umfassten dabei Updates, Fehlereskalation und Sicherung des Betriebs. Die Umgebung war vollständig virtualisiert mit VMWare ESXi. Ein weiterer Server wurde mit Veeam als Backuplösung eingesetzt
  • Im Rahmen der Jahresabschlussprüfungen unserer Mandanten, habe ich die regelmäßige IT-Prüfung nach IDW PS 330 durchgeführt.


2009 - 2014

Kunde: E.On


Aufgaben:

  • In meiner Zeit bei E.On habe ich neben den Projekten regelmäßig kleine Reportings und Anwendungen in ABAP entwickelt oder angepasst, die durch die Fachabteilungen benötigt wurden. Dies erstreckte sich über die Komponenten PM (Wartung), FI (Finanzen), CO (Controlling) und HR (Human Ressources). Des Weiteren war es regelmäßig notwendig Formulare anzupassen, die entweder mit SAP Forms oder SAPScript realisiert worden sind.
  • Da ich bereits fähig war Anforderungen aufzunehmen, abzusprechen und umzusetzen war ich meistens direkt mit den Product-Ownern in Kontakt, um meine Ansprechpartnerin in der Abteilung zu entlasten. Dies hat mich maßgeblich dazu befähigt mit Kunden in den fachlichen Austausch zu gehen und technische Details zielgerichtet und fachagnostisch zu kommunizieren und mit den fachspezifischen Anforderungen abzugleichen.

Programmiersprachen

Java
Experte
Rust
Fortgeschritten
Scala
Experte
Typescript
Experte
HTML
Experte
CSS
Experte
Python
Fortgeschritten
C#
Fortgeschritten

Einsatzorte

Einsatzorte

Deutschland, Schweiz, Österreich
möglich

Projekte

Projekte

1 year
2025-06 - now

Gesetzesdatenbank mit Navigation via Paragrapreferenzen

Software-Ingenieur / System-Architekt Rust Askama Axum ...
Software-Ingenieur / System-Architekt
  • Im Rahmen dieses Projektes wird eine alternative Navigation durch Gesetzestexte im Internet angeboten. In der Regel gibt es lediglich ein Inhaltsverzeichnis und dort können die einzelnen Gesetze angesteuert werden. Referenzierte Paragrafen müssen manuell herausgesucht werden, da es in der Regel keine Verlinkungen gibt. Dieser Mangel soll durch diese Anwendung behoben werden.
  • Dazu habe ich mir die vom Bund angebotene Schnittstelle für den Download der Gesetze zu Nutze gemacht. Die Texte werden dann anhand eines LLM analysiert, Referenzen auf andere Paragrafen extrahiert und im Anschluss in einer Graphdatenbank (Neo4j) abgelegt. Der andere Teil ist die Weboberfläche, mit der diese Daten dann navigiert werden können.
  • Zusätzlich werden Embeddings verwendet, um die Semantik der Daten abzubilden damit, via Chat, Anfragen an ein LLM gestellt werden können, der dann auf diese Daten zugreift (RAG ? Retrieval Augmented Generation).
  • Das ganze Projekt ist in Eigenverantwortung und aktuell noch ein proof-of-concept.
  • Als Sprache kommt exklusiv Rust zum Einsatz. Die Weboberfläche wird über Templates und HTMX implementiert.
Rust Askama Axum AI Neo4j Docker Linux
Lawtech
1 year 11 months
2024-07 - now

Umsetzung eines Konfigurators für den Schutz von Band- und Rundschlingen

Software-Ingenieur Angular Go Typescript ...
Software-Ingenieur
  • Band- und Rundschlingen kommen in der Regel zum Heben von Lasten zum Einsatz, dabei kann es sich um Lasten von mehr als 10 Tonnen handeln. Entsprechend hoch sind die Kosten dieser Hebebänder. Damit diese hinreichend geschützt werden können, bietet der Kunde unterschiedliche Produkte an. Zum Automatisieren des Auswahlprozesses hat der Kunde mich beauftragt eine Anwendung zu entwickeln, die ihre Endkunden online nutzen, um Produkte entsprechend ihrem Hebeband vorgeschlagen zu bekommen.
  • Die in Angular gestaltete Oberfläche wurde von einem Designer entworfen und durch mich die Logik/Funktionalität umgesetzt. Der Anwender wählt erst das Hebeband aus, das er schützen möchte. Anschließend gibt er weitere Informationen an, betreffend des Einsatzes des Bandes (Nutzlänge, Belastung, etc.). Dann kommt er auch schon auf die Liste aller Schutzprodukte und kann dort auswählen, welche und wie viele er haben möchte. Im letzten Schritt gibt es eine Übersicht und ein Kontaktformular dessen Inhalt an den Vertrieb weitergeleitet wird. Hier war die Besonderheit, dass die Produkte als auch die Bedingungen, unter denen sie zur Auswahl stehen als CSV-Datei geliefert wurden. Um diese Daten bei Änderungen nicht manuell einpflegen zu müssen oder gar den Code anpassen zu müssen, habe ich eine Routine implementiert, die die Umwandlung in eine JSON-Struktur vornimmt und so der UI bereitgestellt werden kann. Die Notwendigkeit entsteht dadurch, dass der Kunde das Sortiment erweitert bzw. verändert und eine Anpassung der CSV-Datei in Excel stattfindet.
  • Das Entgegennehmen der Daten und die Weiterleitung an den Vertrieb erfolgt über ein Backend (Go), das eine E-Mail mit den Angaben an den Vertrieb und den Kunden sendet. Zur Absicherung vor Spamattacken wurde Google ReCAPTCHAv3 verwendet.
  • Die gesamte Anwendung wurde internationalisiert und ist in 6 Sprachen verfügbar.
  • Um dem Kunden ein einfaches Hosting und Deployment zu ermöglichen, habe ich eine Dockerfile, sowie eine DockerCompose-Datei erstellt. Diese können dann mit einem einfachen Befehl automatisiert eingerichtet werden.
Angular Go Typescript HTML CSS 2D Programmierung mit HTMLCanvas in Typescript Docker Docker Compose
Logistik (Hebetechnik)
1 year 11 months
2024-07 - now

Umsetzung eines Konfigurators für Ladungssicherungsnetze zum Einsatz in LKWs

Software-Ingenieur Angular Go Typescript ...
Software-Ingenieur
  • Der Kunde hat eine Software benötigt, um Ladungssicherungsnetze für LKWs zu konfigurieren. Dieser Konfigurator wird intern als auch offiziell für Kunden angeboten, damit diese sich selbst Netze zusammenstellen können. Das Ganze ist notwendig, da die Netze in ihren Maßen hoch individuell sind. Dabei geht es um Bandbreite, Maschenweite, sowie die Gesamtgröße (Länge/Breite). Jedoch sind nicht alle Maße miteinander kombinierbar und es gibt bestimmte Vorgaben, da sie hinsichtlich Belastbarkeit CE-Geprüft werden müssen.
  • Meine Aufgabe war die gesamte Umsetzung der Funktionalität und Koordination mit dem Kunden. Die eigentliche Anwendung ist durch Angular umgesetzt. Ein Designer hat das Layout entworfen.
  • Das Datenmodell im Hintergrund ist über eine JSON-Datei definiert, das heißt die Auswahlmöglichkeiten und die Reihenfolge in denen Optionen ausgewählt und Felder ausgefüllt werden dürfen sind dort enthalten.
  • Die Bedingungen und Vorgaben werden durch eine eigens implementierte WorkflowStateMachine umgesetzt. Diese liest die JSON-Datei ein und deaktiviert Felder, limitiert die Eingaben und reagiert auf die Eingaben des Nutzers. Während der Anwender Daten eingibt, wird das Netz in der Mitte des Bildschirms in einem Canvas Maßstabsgetreu dargestellt und reagiert live. Nach der Angabe der Maße kann der Anwender zusätzlich Spannelemente und Verbindungselemente aus einer Liste auswählen, sowie die Positionen bestimmen. Im Anschluss kann der Anwender die Konfiguration abschließen und in einem Kontaktformular seine Daten angeben die dann abgesendet und an den Vertrieb weitergeleitet werden.
  • Das Entgegennehmen der Daten und die Weiterleitung an den Vertrieb erfolgt über ein Backend (Go), das eine E-Mail mit den Angaben an den Vertrieb und den Kunden sendet. Zur Absicherung vor Spamattacken wurde Google ReCAPTCHAv3 verwendet.
  • Die gesamte Anwendung wurde internationalisiert und ist in 6 Sprachen verfügbar.
  • Um dem Kunden ein einfaches Hosting und Deployment zu ermöglichen, habe ich eine Dockerfile, sowie eine DockerCompose-Datei erstellt. Diese können dann mit einem einfachen Befehl automatisiert eingerichtet werden.
Angular Go Typescript HTML CSS 2D Programmierung mit HTMLCanvas in Typescript Docker Docker Compose
Logistik (Ladungssicherung)
6 years 5 months
2020-01 - now

Entwicklung einer Anwendung für den Austausch von Daten und Informationen

Technische Leitung / Fullstack-Entwickler / Softwarearchitekt Microservices Spring Boot 2.x Angular 12 ...
Technische Leitung / Fullstack-Entwickler / Softwarearchitekt
  • In diesem Projekt entstand eine SaaS-Plattform zur Bündelung und zum Austausch von Informationen und Daten. Die Plattform ermöglicht es, die Daten in einer individuell gestaltbaren, übersichtlichen Struktur darzustellen. Sie richtet sich primär an B2B-Kunden.
  • Das SaaS ermöglicht das Erstellen von Listen, die beliebig viele Einträge in einer hierarchischen Struktur darstellen. Die einzelnen Einträge sind mit Titel, Beschreibung, End- und Startzeitpunkt sowie den Verantwortlichen versehen. An die Einträge können jeweils Dateien gehängt, Stati gesetzt und Kommentare geschrieben werden. Die Erweiterung um Individuelle Felder ist zusätzlich vorgesehen.
  • Ein zentraler Aspekt des Projekts war die Benutzerfreundlichkeit, um sowohl technisch versierte als auch weniger erfahrene Nutzer gleichermaßen anzusprechen. Ein weiteres wichtiges Feature lag auf der Kommunikation und kleinen Features, die die Arbeit mit den Listen vereinfachen und stets die Übersicht maximieren.
  • Das Projekt war in zwei Hauptphasen eingeteilt:
    • Entwicklung eines MVP
    • Weiterentwicklung nach Agiler Vorgehensweise
  • In der ersten Hauptphase übernahm ich die Rolle des technischen Projektleiters und Software-Architekten und war nur bei technisch komplexen Anforderungen in die Entwicklung eingebunden.
  • Meine Aufgaben waren dabei die Koordination der Entwicklung und Fachabteilung sowie die Kontrolle der Zielvorgaben. Da es sich um ein zeitkritisch angelegtes Projekt handelte, entschied ich, dass in der ersten Iteration ein MVP erstellt werden sollte, der bei erfolgreichem Feedback in kurzen Iterationen entsprechend ergänzt werden würde.
  • Mit blick in die Zukunft und dem Austausch mit dem Product-Owner, entschied ich eine Microservice-Architektur zu verwenden. Zum Einsatz kamen hier Spring Boot, Angular und MongoDB.
  • Aufgrund der vorhandenen Server, mit Virtualisierung durch VMWare ESXi, wurde Docker eingesetzt.
  • Nachdem das Feedback zu dem MVP positiv war, wurde ich in die Entwicklung maßgeblich involviert. Ich implementierte u.a. einen Dienst in Spring Boot, der den OAuth Prozess vollständig abbildete und eine granulare Definition der Berechtigungen zuließ. Anschließend wurden alle noch fehlenden Features eingepflegt. Die Ergänzung um Unit-Tests mit JUnit und E2E-Tests für komplexe Use-Cases wurde mit Cypress stetig durchgeführt.
  • Durch den dauerhaften Einsatz im Unternehmen und daher ständig neuen Feature vorgaben, hielt die Entwicklung dauerhaft an. Mit dem Ziel ein vollständiges Produkt mit breiter Einsatzmöglichkeit zu entwickeln
  • Im Rahmen des öffentlichen Go-Lives wurde ein weiteres Team involviert, um den Betrieb der Anwendung dauerhaft zu gewährleisten. Hier habe ich den vollständigen Wissenstransfer und das On-Boarding des Teams übernommen.
  • Für notwendige Datenmigrationen zwischen unterschiedlichen Versionen kam Rust zum Einsatz.
  • Die Anwendung steht aktuell zur Registrierung offen und wird mit meiner Unterstützung weiterentwickelt. Der Betrieb ist ausgelagert, jedoch fungiere ich hier als zentraler Ansprechpartner bei technischen Fragestellungen.
Microservices Spring Boot 2.x Angular 12 Typescript HTML CSS Javascript Java JUnit Rust Bash Docker Docker Compose Linux-Administration Cypress Stripe MongoDB YAML JSON Web-Apps Git npm JWT TailwindCSS SCSS VM Ware ESXi Java JKS certbot Let's Encrypt SSL
Steuerberatung und Wirtschaftsprüfung
1 month
2024-11 - 2024-11

Kassenanbindung und Datenübernahme von zwei Restaurants an die Buchhaltung

Kassenbuch TSE Lightspeed ...

Systemanbindung und Datenanalyse

  • Der Kunde betreibt zwei Restaurants, dabei hat eines ab dem 19.03.2024 den Steuerberater gewechselt (iNUX Meyer & Partner mbB) und das zweite im Oktober eröffnet.
  • Meine Aufgabe bestand darin das Lightspeed Kassensystem mit dem Datev Kassenarchiv zur Weiterleitung in das Kassenbuch und damit in die Buchhaltung des Steuerberaters anzubinden.
  • Dazu kam die Anbindung eines Zahlungsterminals für die Kartenzahlung und die Übernahme der Daten des alten Steuerberaters.
  • Bei der Datenübernahme musste ich zusätzlich die Daten im Kassenbuch analysieren, um hier fehlerhafte Buchungen in der alten Buchhaltung zu ermitteln. Dies lief in enger Zusammenarbeit mit dem Steuerberater.

Kassenbuch TSE Lightspeed DATEV Kassenarchiv Buchhaltung
Con Gusto GbR (Con Gusto / Fatto Per Te)
3 months
2024-06 - 2024-08

Coderefactoring, Bugfixing einer komplexen Codebase

Software-Ingenieur Angular HTML CSS ...
Software-Ingenieur

Coderefactoring, Bugfixing einer komplexen Codebase zum Zeichnen von Elementen mit Verbindungen

  • Der Kunde hatte eine bestehende Anwendung die Elemente auf ein Canvas gezeichnet hat und je nach Konfiguration verbunden werden konnten. Es konnten zusätzlich Unterknoten erzeugt werden, die dann entsprechend auf einem 2D Canvas dargestellt werden. Die Elemente sind mit SVG-Grafiken hinterlegt worden und hatten dann zusätzliche Metadaten in Form von JSON beigefügt
  • Das heißt es konnte beliebig ergänzt werden. Hier habe ich eng mit einem Entwickler des Kunden zusammengearbeitet, um diesen zu entlasten und Deadlines einhalten zu können.
  • Meine Aufgabe bestand darin kleinere Funktionen wie Zooming und Panning effizient zu implementieren. Die Mischung von SVG auf Canvas sowie CSS erlaubt es nicht die eingebauten Funktionen zu verwenden
  • Es gab noch unterschiedlichste Fehler beim Verbinden der Elemente und der Unterelemente, dort habe ich bei der Behebung ausgeholfen, sodass am Ende alle gewünschten Features funktional vorhanden waren
  • Die Codebase war historisch gewachsen und alles betreffend die Logik für die Elemente war in einer Datei mit ca. 5000 Zeilen angesiedelt. Meine Hauptaufgabe war es den Code in logische Teile zu zerlegen sowie Coderedundanzen zu entfernen
  • Im Anschluss meiner Tätigkeit habe ich dem Kunden eine erheblich kleinere und redundanzbefreitere Version der eingänglichen Codebase hinterlassen.

Angular HTML CSS 2D Programmierung mit HTML-Canvas in Typescript
Elektroindustrie
2 months
2024-05 - 2024-06

Implementation einer Standard-BWA mit Erweiterungsmöglichkeit

Software-Ingenieur / Wirtschaftliche Beratung Angular Typescript Go ...
Software-Ingenieur / Wirtschaftliche Beratung
  • Der Kunde betreibt ein maßgeschneidertes ERP-System, das bereits erfolgreich bei mehreren Unternehmen implementiert ist
  • Um den Anwendern des ERP-Systems zu ermöglichen unterjährig vergleichbare Auswertungen zu erhalten, habe ich eine Standard-BWA implementiert. Also eine gestaffelte Auflistung der Erträge, Aufwendungen und Umsatzerlöse
  • Die Angular Anwendung habe ich so implementiert, dass eine Anfrage an einen Endpoint gesendet wird, die den Typ der BWA beinhaltet anhand dessen das Backend die Daten aufbereitet und zurücksendet
  • Im Backend wird die eigentliche Berechnung vorgenommen, dazu wird eine neue Datenbanktabelle angelegt, die einzelne Zeilen abbildet und Kontenbereiche zugeordnet hat. Gemäß dieser Definition werden anschließend die Daten aus der Buchhaltung zusammengestellt und an das Frontend gesendet. 
  • Diese Umsetzung ermöglicht es, weitere BWAs hinzuzufügen indem einfach weitere Definitionen in die Datenbank eingetragen werden und diese zusätzlich im Frontend hinterlegt.
Angular Typescript Go Gorm (OR-Mapper) MariaDB npm git
SymblCrowd GmbH
2 months
2024-05 - 2024-06

Anlagenmanagement eines ERP-Systems

Software-Ingenieur / Wirtschaftliche Beratung Angular Typescript Go ...
Software-Ingenieur / Wirtschaftliche Beratung

Ergänzung um eine automatische Abschreibungsfunktion im Anlagenmanagement eines ERP-Systems

  • Der Kunde betreibt ein maßgeschneidertes ERP-System, das bereits erfolgreich bei mehreren Unternehmen implementiert ist.
  • Die vorhandene Eingabe für Eingangsbelege wurde von mir durch eine automatische Abschreibefunktion erweitert.
  • Vorbereitend auf das Kundengespräch zur Aufwandsabschätzung habe ich die gesetzlich relevanten Regelungen durchgearbeitet, um den Funktionsumfang und notwendige Anpassungen ermitteln zu können.
  • Bei der Umsetzung in Angular musste ich sicherstellen, dass bei der Erfassung einzelner Eingangsrechnungspositionen geprüft wird, ob ein Konto aus der Anlagenbuchhaltung ausgewählt wurde. In diesem Fall wird eine Option zur Aktivierung der automatischen Abschreibung angeboten. Zusätzlich besteht die Möglichkeit, eine bestehende Anlage auszuwählen, falls es sich beispielsweise um ein Bauteil einer bereits vorhandenen Anlage handelt.
  • Das in Go implementierte Backend wurde dahingehend von mir ergänzt, dass gemäß den Angaben durch den Kunden die Abschreibung gespeichert wird, um monatlich eine Buchung auszulösen. Falls es sich um einen Bestandteil einer Anlage handelt, werden ggf. direkt die Abschreibungsbuchungen durchgeführt oder die Laufzeit der Anlage verlängert.

Angular Typescript Go Gorm (OR-Mapper) MariaDB npm git
SymblCrowd GmbH
2 months
2024-04 - 2024-05

Entwicklung unterschiedlicher Reports in einem ERP-System

Software-Ingenieur / Wirtschaftliche Beratung Angular Typescript Go ...
Software-Ingenieur / Wirtschaftliche Beratung
  • Der Kunde betreibt ein maßgeschneidertes ERP-System, das bereits erfolgreich bei mehreren Unternehmen implementiert ist. Trotz des Erfolgs waren die Reporting-Funktionen des Systems bisher sehr begrenzt, bestehend aus lediglich zwei einfachen Reports, die downloadbare Excel-Dateien erzeugen (keine Darstellung im Frontend). Angesichts der wachsenden Datenanforderungen und der Notwendigkeit, umfassendere Einblicke in operative Prozesse zu gewinnen, bestand meine Aufgabe darin, eine Reihe von detaillierten Reports zu entwickeln. Diese sollten nicht nur die bestehenden Berichtsanforderungen erfüllen, sondern auch die Grundlage für zukünftige Analysefunktionen bilden:
    • Umsätze
    • Umsätze je Kunde
    • Umsätze je Artikel
    • Umsätze je Fahrzeug
    • Umsätze je Fahrer 
  • und im Zusammenhang mit Fahrtdaten:
    • Fahrtenbericht
    • Fahrtenbericht detailliert
    • Nachtfahrten
    • Fahrten ? 24 Stunden Auswertungen 
  • Die Struktur und der Aufbau eines Reports ließ zu ein eigenes Reportingsystem zu erstellen, um Coderedundanz zu vermeiden. Jeder Report besitzt in der Regel den Funktional gleichen Aufbau. Das heißt ich entwickelte eine generische Struktur, die die Darstellung im Frontend mitlieferte und deklarativ Sortierung und Suche abbildet. 

  • Das heißt durch die Angabe, ob Felder sortierbar sein sollen und welche Sortierlogik den jeweiligen Feldern obliegt (Datum, Zahl, Zeichenkette), muss nichts Weiteres implementiert werden. Sofern die Implementation einer individuellen Logik notwendig ist, kann dies entsprechend als Funktion angegeben werden. Im Frontend musste dann diese generische Struktur entgegengenommen und für die mit der kundeneigenen Angular-Komponente dargestellt werden. Mit diesem von mir umgesetzten Reportingsystem bestand der maßgebliche Aufwand bei der Realisierung der Reports in dem Zusammenstellen der Daten und die Deklaration der Strukturen zur Darstellung im Frontend. 

  • Im Zusammenhang mit den Fahrtenreports begab sich die Eigenheit, dass der Kunde hier ein eigenes System implementiert hat, dass das Tracking von Fahrzeugen umsetzt und die Daten aufbereitet. Hier musste ich lediglich die Endpoints einrichten und mit einem der Mitarbeiter abstimmen, was ich im Einzelnen benötige.

Angular Typescript Go Gorm (OR-Mapper) MariaDB npm git
SymblCrowd GmbH
1 month
2024-03 - 2024-03

Kassenanbindung und Datenübernahme von zwei Restaurants an die Buchhaltung

Kassenbuch TSE Lightspeed ...

Systemanbindung und Datenanalyse

  • Der Kunde betreibt zwei Restaurants, dabei hat eines ab dem 19.03.2024 den Steuerberater gewechselt (iNUX Meyer & Partner mbB) und das zweite im Oktober eröffnet.
  • Meine Aufgabe bestand darin das Lightspeed Kassensystem mit dem Datev Kassenarchiv zur Weiterleitung in das Kassenbuch und damit in die Buchhaltung des Steuerberaters anzubinden.
  • Dazu kam die Anbindung eines Zahlungsterminals für die Kartenzahlung und die Übernahme der Daten des alten Steuerberaters.
  • Bei der Datenübernahme musste ich zusätzlich die Daten im Kassenbuch analysieren, um hier fehlerhafte Buchungen in der alten Buchhaltung zu ermitteln. Dies lief in enger Zusammenarbeit mit dem Steuerberater.

Kassenbuch TSE Lightspeed DATEV Kassenarchiv Buchhaltung
Con Gusto GbR (Con Gusto / Fatto Per Te)
3 months
2024-01 - 2024-03

Erzeugung von XRechnung/ZUGFeRD

Software-Ingenieur / Wirtschaftliche Beratung Angular Typescript Go ...
Software-Ingenieur / Wirtschaftliche Beratung

Entwicklung einer Komponente zur Erzeugung von XRechnung/ZUGFeRD aus einem bestehendem ERP-System

  • Der Kunde entwickelt ein eigenständiges ERP-System, das bereits bei mehreren Kunden im Einsatz ist.
  • Mein Verantwortungsbereich umfasste die umfangreiche Recherche und Implementierung von Prozessen zur Erzeugung und Einbettung von XML-Rechnungen in PDFs aus einem bestehenden Datenmodell. Die Aufgaben im Detail:
    • Recherche der EN16931 konformen Formate (UBL/CII)
    • Auswahl des zu implementierenden Zielformats
    • Rücksprache mit dem Kunden
    • Implementation des gewählten Formates (UBL)
    • Umwandlung von UBL nach CII mit Hilfe einer externen Java-Bibliothek, um ZUGFeRD zu unterstützen.
    • Einlesen beider Formate bei Eingangsrechnungen, da dies gesetzliche Vorgabe ist
    • Abbildung auf die Datenstruktur des ERP, damit die Daten automatisch angezeigt werden
    • Anbindung der Endpoints an die Oberfläche
  • Das Backend ist in Go umgesetzt und im Frontend kommt Angular (noch v13) zum Einsatz. Den aufwendigsten Teil stellte die Abbildung des internen Datenmodells auf die XML-Struktur dar aufgrund der Komplexität. Sowohl die des Datenformats im ERP als auch die Vorgaben und Struktur des XML-Formats.
  • Um auch ZUGFeRD zu unterstützen, ist es gefordert CII, als eingebettetes Format, zu verwenden. Indes kam eine Java-Bibliothek zum Einsatz, die die Umwandlung von UBL zu CII erlaubt. Hier waren jedoch noch einige Anpassungen durch mich notwendig.
  • Um das Einlesen von Eingangsrechnungen zu unterstützen musste entsprechend auch der umgekehrte Prozess abgebildet werden, also von XML zu ERP-Datenformat
  • Im Rahmen des Frontends war meine Aufgabe die Anbindung des Datenmodells und das Ansprechen der korrekten Endpoints. Das Design und Layouting wurde vom Kunden übernommen
Angular Typescript Go Gorm (OR-Mapper) MariaDB npm git
SymblCrowd GmbH
2 months
2023-07 - 2023-08

Entwicklung einer Anwendung

Softwareentwickler Angular Typescript AWS Lambda ...
Softwareentwickler

Entwicklung einer Anwendung zur Anzeige von Live-Daten über die aktuellen Gaspreise

  • Das Projekt zielte darauf ab, ein System zur Echtzeit-Überwachung der Gaspreise zu entwickeln. Es ermöglichte Händlern, auf Basis von Live-Daten Handelspositionen zu erstellen und zu simulieren, um deren Performance zu beurteilen.
  • Meine Aufgabe im Projekt bestand in der Entwicklung einer anspruchsvollen Benutzeroberfläche, die es ermöglicht, Abfragen an ein Livedatensystem für Gaspreise zu stellen. Die generierten Abfragen wurden über AWS Lambda in einer DynamoDB-Datenbank gespeichert.
  • Ich realisierte die Anwendung in Angular und Typescript, wobei NX als Build-Tool zum Einsatz kam. Weiterhin erweiterte ich die Anwendung um eine spezialisierte Anzeigeoberfläche, die für die Visualisierung der Ergebnisse der zuvor erstellten Abfragen dient, unter Verwendung von AgGrid.

Angular Typescript AWS Lambda AgGrid NX npm git SonarQube DynamoDB Azure DevOps Scrum
Energiewirtschaft
1 year 2 months
2022-05 - 2023-06

Entwicklung einer Anwendung für den Austausch von Daten und Informationen

Software-Architect / Full-Stack-Developer / DevOps-Engineer Java TypeScript JavaScript ...
Software-Architect / Full-Stack-Developer / DevOps-Engineer

Ziel des Projektes war es eine Anwendung zu entwickeln, die den Informations- und Datenaustausch in einem SaaS ermöglicht und diese in einer übersichtlichen frei erstellbaren Struktur bündelt. Die Zielgruppe sind dabei andere Unternehmen (B2B).


Das SaaS ermöglicht das Erstellen von Listen, die beliebig viele Einträge in einer hierarchischen Struktur darstellen. Die einzelnen Einträge sind mit Titel, Beschreibung, End- und Startzeitpunkt sowie den Verantwortlichen versehen. An die Einträge können jeweils Dateien gehängt, Stati gesetzt und Kommentare geschrieben werden.


Die einfache Bedienbarkeit lag maßgeblich im Fokus, da die Benutzerprofile von technisch versiert bis technischen Laien reichten.

Ein weiteres wichtiges Feature lag auf der Kommunikation und kleinen Features, die die Arbeit mit den Listen vereinfachen und stets die Übersicht maximieren.


In meiner Rolle habe ich die Entwickling von der Aufnahme der Anforderungen bis zum produktiven Einsatz begleitet. 

Dabei habe ich zuerst die Anforderungen anhand eines konkreten Falls festgehalten. Hier wurde der Datenaustausch zwischen der Wirtschaftsprüfungskanzlei und den Mandanten im Rahmen der Jahresabschlussprüfung als Use-Case verwendet. 


Im initialen Betrieb wurde die Anwendung auf vorhanden Servern in Docker gehostet. Es wurde dabei auf Angular 12 mit Typescript im Frontend und Spring Boot mit Java bei den Backend-Diensten gesetzt. Zur Kommunikation kam dabei REST zum Einsatz und die Datenhaltung wurde mit MongoDB umgesetzt. Die Software wurde kontinuierlich im internen Betrieb mit über 20 Mandanten verwendet und stetig weiterentwickelt. Das öffentliche Go-Live wurde auf einem Virtual Private Server vorgenommen. Die autmatisierte Kauffunktion mit Registrierung nach Bezahlung wurde mit Stripe umgesetzt.


Die gesamte Entwicklung wurde zu Beginn maßgeblich von einem Auszubildenden umgesetzt hier diente ich nur als Projektleiter und Ansprechpartner. In diesem Rahmen wurde ein vorläufer entwickelt. Diesen Vorläufer habe ich im Anschluss

Spring Boot Git MongoDB Angular Docker Stripe TailwindCSS
Java TypeScript JavaScript JSON JsonWebToken (JWT) Microservice Cypress YAML HTML SCSS Rust REST
iNUX Meyer & Partner mbB Wirtschaftsprüfungsgesellschaft Steuerberatungsgesellschaft
Bornheim, Rheinland
1 year 2 months
2022-02 - 2023-03

SaaS zur Grundsteuerklärung für Wohn- und Geschäftsgrundstücke

Technische Leitung / Fullstack Developer / Softwarearchitekt Spring Boot 2.x Angular 12 Typescript ...
Technische Leitung / Fullstack Developer / Softwarearchitekt

SaaS zur Grundsteuerklärung für Wohn- und Geschäftsgrundstücke mit Übermittlung an das Finanzamt (ohne Zertifikat)
  • Das Ziel des Projekts war die Entwicklung einer alternativen Lösung zur ELSTER-Software des Finanzamtes für die Grundsteuererklärung. Der Fokus lag dabei auf Endkunden (B2C), insbesondere Nutzern ohne technische Vorkenntnisse
  • Neben der hohen Benutzerfreundlichkeit war es erforderlich, zu allen Eingabeoptionen umgangssprachliche Erläuterungen bereitzustellen, die keine Vorkenntnisse im Steuerrecht voraussetzen. Eine besondere Herausforderung bei der Entwicklung war der Transfer des fachlichen Know-Hows in die technische Umsetzung, da die Grundlage ein noch nicht verabschiedetes Gesetz bildete
  • Im Rahmen des Projektes entschied ich mich für eine Serverless-Architektur unter dem Einsatz von Microsoft Azure, um eine möglichst minimale Infrastruktur zu ermöglichen, gesetzt
  • Bei der Umsetzung habe ich dabei auf Angular 13 mit Typescript und TailwindCSS gesetzt. Das Backend wurde unter Verwendung von Azure Functions mit Typescript gemäß REST umgesetzt. Die Datenhaltung basierte auf Azure CosmosDB (MongoDB). Dateien die Hochgeladen werden mussten, um steuerrechtlichen Regelungen zu entsprechen wurden in Azure Blob Storage abgelegt. Die Autorisierung wurde mit Azure AD B2C umgesetzt. Für den Individuellen Bezahlprozess wurde die API von Paypal verwendet
  • Die Anwendung wurde erfolgreich in Betrieb genommen und blieb bis zum Ende der offiziellen Abgabefristen für Registrierungen geöffnet. Sie ist weiterhin für Kanzleien im Einsatz. Bereits registrierte Anwender können nach wie vor auf ihre abgesendeten Daten zugreifen, diese einsehen und herunterladen.
Spring Boot 2.x Angular 12 Typescript HTML CSS Javascript Java Azure Functions Azure Web-Apps Azure AD B2C Azure CosmosDB Azure Blob Storage NodeJS npm npx JSON YAML XML ELSTER ERiC git Serverless Architecture Paypal API
iNUX Meyer & Partner mbB Wirtschaftsprüfungsgesellschaft Steuerberatungsgesellschaft
Bornheim, Rheinland
1 year 2 months
2022-02 - 2023-03

Entwurf und Erstellung eines Reports zum Stundencontrolling der Mitarbeiter

KNIME JasperReports Controlling

Entwurf und Umsetzung mit KNIME und JasperReports

  • Dieses Projekt wurde zum internen Kostencontrolling umgesetzt. Vor der Umsetzung gab es eine Excelliste, die alle Daten enthielt und Zwischentabellen für bestimmte Berechnungen. Die große Problematik bot die Flexibilität, da neue Mandate und neue Mitarbeiter aufwendig nachgepflegt werden mussten
  • An diese Stelle habe ich nach Rücksprache ein Modell entworfen, das die Daten aus dem Quellsystem (DATEV) heranzieht und auf Basis dieser einen übersichtlichen Report erzeugt. Dabei wurden Metriken, wie Anzahl an Buchungen je Stunde für Buchhaltungstätigkeiten oder der durchschnittliche Gesamtaufwand für einzelne Mandanten unterteilt in individuelle Tätigkeitsfelder dargestellt.
  • Die gesamte Verarbeitungspipeline wurde zur Transparenz und Analyse auch durch fachliche Mitarbeiter in KNIME umgesetzt. Hier wurde maßgeblich auf die Datenverarbeitungsfähigkeiten diese Anwendung gesetzt.
  • Die visuelle Darstellung wurde durch den Entwurf eines entsprechenden JapserReports umgesetzt, da es sich nahtlos an KNIME anbinden lässt und im selben Ökosystem implementiert ist.

KNIME JasperReports Controlling
iNUX Meyer & Partner mbB
5 years 11 months
2016-03 - 2022-01

Anwendung zur Überführung von Kontenplänen

Software-Engineer / Full-Stack-Developer TypeScript Java HTML ...
Software-Engineer / Full-Stack-Developer

  • Das Projekt wurde mit dem Ziel durchgeführt, eine Anwendung zu schaffen, die eine Überführung von Kontensalden aus einem Quellsystem in die Kontenstruktur eines Zielsystems ermöglicht. Besonders wichtig war, dass diese initiale Arbeit nur einmal gemacht werden muss und der Aufwand in den Folgejahren damit auf ein Minimum reduziert ist.
  • In der ersten Phase habe ich eine Pilotanwendung in Scala mit ScalaFX entwickelt, die auf eine eigens entwickelte Workflow Bibliothek zugriff (Scala), um die Weiterverarbeitung der Eingabedaten zu definieren. Die Eingabedaten sind dabei eine beliebige Anzahl an CSV-Dateien, die mindestens eine Kontonummer, den Saldo und eine Kontenbeschriftung beinhalten müssen.
  • In der Anwendung wird ein Zielkontenplan hinterlegt, der jedoch so aufgebaut ist, dass er einer Bilanzstruktur gemäß der E-Bilanz gleicht. Die Importierten Konten aus der CSV-Datei werden dann via Drag-and-Drop den Zielkonten zugeordnet. Da diese Übertragung jährlich geschieht, müssen in den Folgejahren lediglich neue Konten zugeordnet werden. Das Ganze wird anschließend exportiert und kann in das neue Zielsystem importiert werden.
  • Das ganze Projekt orientierte sich im Rahmen der Pilotierungsphase an einem konkreten Fall bei einem der Mandanten meines Arbeitgebers. Für mich standen dabei zwei beteiligte aus der Fachabteilung als Ansprechpartner zur verfügung sowie 2 Ansprechpartner aus der Technik zur beschaffung der Daten.
  • Die Anwendung wurde zuerst mit ScalaFX für die UI entwickelt. Aufgrund der hohen Nutzung im Betrieb wurde sie so weit refactored, dass Electron und Angular 8 zum Einsatz kamen, um eine wesentlich bessere User Experience zu erzielen und da die Implementierung neuer Features erheblich schneller ging.
  • Die Anwendung wurde bis 2022 stetig weiterentwickelt und ist weiterhin im Einsatz. Die Quellsysteme reichen dabei von Navision über Addisson bis hin zu SAP.

Electron JavaFX Angular Node.js
TypeScript Java HTML CSS Scala Electron npm Git
iNUX Meyer & Partner mbB Wirtschaftsprüfungsgesellschaft Steuerberatungsgesellschaft
Born
4 months
2019-02 - 2019-05

Teilnahme an WirVsVirus vom Bund: ITO ? Entwicklung eines Vorläufers der Corona-App

Softwarearchitekt / Frontend-Developer TypeScript HTML SCSS
Softwarearchitekt / Frontend-Developer

  • Im Rahmen des Hackathons WirVsVirus ging es um die Entwicklung innovativer Ideen in allen Bereichen, die im Umgang mit der Pandemie stehen. Ich habe mich einem Team angeschlossen, dass versucht hat den Kontakt zwischen Personen so nachzuvollziehen, dass der Kontakt mit infizierten Personen über das Mobiltelefon sichergestellt werden kann.
  • Der Hackathon ging nur über das Wochenende hinweg, jedoch gab es mehrere Gruppen, die sich dem Tracking verschrieben hatten. Unser Team hat anschließend vorgeschlagen, dass wir uns mit den anderen Teams zusammentun und eine solide Anwendung für alle mobilen Endgeräte entwickeln. Der wichtigste Punkt sollte hierbei die Wahrung der Privatsspähre sein, daher haben wir mit einer Gruppe aus den USA zusammengearbeitet die sich auf privacy-preserving-technologies fokussiert haben. Dazu haben wir ein Schlüsselaustausch- und -erzeugungsverfahren entwickelt, dass die Privatsphäre schützt und keine Rückschlüsse auf die Anwender zulässt ? hier war ein Team von 6 Personen einschließlich mir involviert.
  • In meiner Rolle als Softwarearchitekt habe ich über den Einsatz der Technologie, den Aufbau des Backends und den technischen Problemstellungen meine Expertise geteilt. Diese war maßgeblich auf das Scaling und die Möglichkeit der schnellen Entwicklung fokussiert.
  • Als Frontend-Developer habe ich maßgeblich die Entwürfe unseres Designers mit React-Native umgesetzt und die Kommunikation zwischen dem Frontend- und Backend-Team koordiniert.
  • Die Entwicklung von den systemspezifischen Komponenten (Android, Apple) wurden von anderen Teamsmitgliedern übernommen. Unter anderem wurden Tests zur Distanzmessung von Bluetooth vorgenommen und wissenschaftliche Veröffentlichungen zu Rate gezogen, um die Genauigkeit bestimmen zu können.
  • Die Entwicklung ging bis zu einem Prototyp. Es wurde alles öffentlich geteilt, einschließlich der Protokolle unserer Besprechungen sowie Dokumentationen. Im Rahmen unserer Bemühungen gab es einen Call mit Verantwortlichen aus dem Gesundheitsministerium, Telekom und SAP, da diese an unserer Entwicklung interessiert waren und das Know-How gerne verwenden wollten. Ohne unser direktes Mitwirken kam dann die Corona-Warn-App an den start. Unser Angebot die Anwendung als staatlich gefördertes Projekt zu entwickeln, wurde nicht angenommen.

ReactNative Atlassian Confluence Atlassian JIRA Git
TypeScript HTML SCSS
Bochum
1 year 10 months
2015-01 - 2016-10

Entwicklung einer Web-Anwendung zur Statusnachverfolgung von betrieblichen Prozessen

Software-Engineer Java Scala JavaScript ...
Software-Engineer

  • Dieses Projekt wurde dazu ins Leben gerufen, um die Statusnachverfolgung interner Prozesse von Excellisten auf eine einheitlichere und automatisierte Umsetzung zu bringen. Einzelne Schritte können dabei organisiert in Listen festgehalten und anschließend als Vorlage angelegt werden. Diese Vorlagen werden dazu verwende, um Listen mit Verantwortlichen und der Zuordnung zu Mandanten zu erzeugen. Da der Großteil der Prozesse sich regelmäßig wiederholt (z.B. monatlich, quartalsweise, etc.) ist die Anwendung um eine Schedulingfunktionalität ergänzt. Hier kann der Rhytmus beliebig eingestellt und die zu erstellende Liste ausgewählt werden.
  • Die Anwendung habe ich ursprünglich in AngularJS geschrieben, aber im Folgejahr auf Angular 2 umgestellt. Das Backend wurde als Microservice-Architektur umgesetzt, bestehend aus 4 Services: Einer für die Kernfunktion, einer für die Metadaten, einen Scheduler und einen Authorisierungs- & Authentifizierungs Service. Die Dienste sind bis auf den AuthService in Vert.X mit Scala implementiert. Der AuthService ist in Spring Boot entwickelt. Die Datenhaltung findet in MongoDB statt.
  • Das Web-Anwendung ist weiterhin bei meinem ehemaligen Arbeitgeber in Betrieb und wird dort täglich für die Nachverfolgung der rekurrierend anfallenden Arbeiten verwendet.

Angular Vert.X sbt Quartz Node.js Spring Boot
Java Scala JavaScript TypeScript HTML CSS
iNUX Meyer & Partner mbB Wirtschaftsprüfungsgesellschaft Steuerberatungsgesellschaft
Bornheim, Rheinland
9 months
2013-10 - 2014-06

Arbeitsplananwendung für Mitarbeiter im Betrieb Umstellung auf Windows 7

Software Developer Visual Basic 6
Software Developer

  • Bei diesem Projekt ging es um die Migration einer bestehenden Anwendung, die auf den Laptops der Mitarbeiter im Außenbetrieb eingesetzt wurde, um Wartungsarbeiten zu koordinieren.
  • Die Anwendung kommunizierte über EDI mit SAP und ermöglichte damit auch den Offlinebetrieb und die spätere Synchronisierung der Daten. Die Anwendung war vollständig in Visual Basic 6 umgesetzt und greifte entsprechend auf systembezogene Komponenten zurück.
  • Meine Aufgabe bestand darin, alle Funktionen auf einem Windows 7 PC zu testen, fehler zu dokumentieren und diese im Anschluss zu beheben. Daher nahm ich erst die Rolle des Testers ein, um anschließend die von mir Dokumentierten Fehler mit den Productownern zu besprechen und zu beheben bzw. Vorschläge für den Weiterbetrieb der Anwendung zu machen.
  • Die firmenweite Migration auf Windows 7 haben ich nicht mehr mitbegleitet, jedoch war die Anwendung am Ende vollständig auf Windows 7 einsatzfähig.

Visual Basic 6
E.On Ruhrgas AG
Essen, Ruhr
6 months
2010-01 - 2010-06

Entwicklung einer Im- & Exportkomponente in das Flottenmanagementsystem ?TORMAXX? in SAP

Software Developer ABAP
Software Developer

  • Das Projekt zielte auf den Import und Export von einem -komplex strukturierten Datenformat in das bestehende SAP Flottenmanagement. 
  • Innerhalb des Projektes wurde ich als Softwareentwickler eingesetzt. Um das Ziel zu erreichen habe ich das Datenformat analysiert und entsprechende Funktionsbausteine in ABAP implementiert, um diese im Anschluss für die Umsetzung eines DynPros zu verwenden. Dabei mussten die Daten angezeigt werden und geprüft werden, ob diese bereits im Bestand vorhanden sind. Im Anschluss war es möglich die zu importierenden Daten zu selektieren und den Import anzustoßen.
  • Der besondere Aufwand bestand in dem Abstimmen der Bestandsdaten mit dem Import und die Implementation als DynPro in ABAP. Betrieben wurde das ganze auf einem SAP/R3.

DynPro for ABAP
ABAP
E.On Ruhrgas AG
Essen, Ruhr
4 months
2008-06 - 2008-09

Entwicklung einer Anwendung zur Verwaltung der Lehrstuhl Bibliothek

Software Developer (Fachinformatiker/Anwendungsentwicklung) Java JSP JavaScript ...
Software Developer (Fachinformatiker/Anwendungsentwicklung)

  • Dieses Projekt sollte die große Sammlung an wissenschaftlichen Magazinen, Arbeiten und Literatur, die an unserem Lehrstuhl vorzufinden war, in einer Software archivieren und die Verfügbarkeit anzeigen - kurz gesagt eine Bibliotheksverwaltung.
  • Meine Aufgabe bestand darin, gemäß der Anforderungen, die gesamte Anwendung umzusetzen.
  • In erster Linie wurden die konkreten Anforderungen aufgenommen, die sich besonders auf den wissenschaftlichen Betrieb konzentriert haben.
  • Die Anwendung sollte zentral als Web-Anwendung verfügbar sein, daher wurden Java-Server-Pages als grundlegende Technologie verwendet. Um die Oberfläche möglichst interaktiv zu machen und Ladezeiten zu verhindern, wurde AJAX verwendet. Die gesamte Persistenzschicht wurde durch eine MySQL Datenbank umgesetzt, die mit Hibernate als OR-Mapper angesteuert wurde.
  • Eine Exportmöglichkeit der einzelnen Daten in BibTeX war eine weitere Anforderung, damit diese direkt in wissenschaftliche Arbeiten als Zitatquelle eingefügt werden konnten.
  • Im Anschluss der Umsetzung habe ich einzelne Teile der Bibliothek in die Software eingepflegt, diese Aufgabe hat nach Abschluss des Projektes eine andere Fachkraft durchgeführt.

Hibernate Java EE
Java JSP JavaScript HTML CSS Ajax
Ruhr-Universität-Bochum Lehrstuhl für Softrwaretechnik
Bochum
3 months
2007-10 - 2007-12

Entwicklung eines Tätigkeitstrackers

Software-Developer Java JSP JavaScript ...
Software-Developer

  • Im Rahmen dieses Projektes ging es darum den Mitarbeitern am Lehrstuhl eine zentralisierte Anwendung für das Verfolgen ihrer Tätigkeiten bereitzustellen.
  • Die Anwendung wurde im Rahmen meiner Abschlussprüfung zum Fachinformatiker/Anwendungsentwicklung umgesetzt, daher war ich für die gesamte Umsetzung verantwortlich.
  • Durch die Anforderung, dass die Anwendung zentral verfügbar sein sollte, wurde eine klassische Client-Server Architektur gewählt, wobei der Client im Web laufen sollte. Das Frontend wurde mit JSP und AJAX implementiert (Frameworks waren in dem heutigen Außmaß noch nicht verfügbar). Im Backend lief entsprechend ein Tomcat-Web-Server und die Datenhaltung wurde in MySQL realisiert. Als OR-Mapper fungierte, das damals noch in der Betaversion befindliche, Hibernate.
  • Dies stellte auch die größte schwierigkeit dar, mangels ausgereifter Dokumentation und des Betazustandes, war es besonders schwer die Annotation so zu verwenden, dass das gewünschte Datenmodell abgebildet wurde.
  • Das Projekt war erfolgreich und wurde vollständig umgesetzt.

Hibernate Java EE
Java JSP JavaScript Ajax HTML CSS
Ruhr-Universität-Bochum Lehrstuhl für Softrwaretechnik
Bochum

Aus- und Weiterbildung

Aus- und Weiterbildung

11 years 9 months
2014-09 - now

Informatik (Computer-Science)

Master of Science in Computer-Science (M.Sc. Informatik), Fachhochschule Dormund
Master of Science in Computer-Science (M.Sc. Informatik)
Fachhochschule Dormund
Nur noch Abschlussprojekt und Masterthesis offen.
7 months
2020-02 - 2020-08

Ausbilderschein der IHK

Ausbilderschein, IHK des Mittleres Ruhrgebiet, Bochum
Ausbilderschein
IHK des Mittleres Ruhrgebiet, Bochum
4 years 8 months
2009-09 - 2014-04

Informatik (Computer-Science)

Bacheolor of Science in Computer-Science (B.Sc. Informatik), Fachhochschule Dortmund
Bacheolor of Science in Computer-Science (B.Sc. Informatik)
Fachhochschule Dortmund
10 months
2008-08 - 2009-05

Fachabitur (Elektrotechnik)

Fachhochschulreife, Technische berufliche Schule 1 Bochum
Fachhochschulreife
Technische berufliche Schule 1 Bochum
3 years
2005-08 - 2008-07

Ausbildung: Fachinformatiker Anwendungsentwicklung

Fachinformatiker Anwendungsentwicklung, Bochum
Fachinformatiker Anwendungsentwicklung
Bochum

Position

Position

The roles I fit in are generally all in the field of Software-Engineering - from Developer to tech lead or Architect.

Kompetenzen

Kompetenzen

Top-Skills

Fullstack-Developer Java Typescript Angular ReactJS Scala Python Rust Kotlin Azure DevOps REST GraphQL Node.js Spring Boot

Produkte / Standards / Erfahrungen / Methoden

Spring Boot
Fortgeschritten
Java
Experte

Profil:

Mit über 15 Jahren Berufserfahrung bin ich besonders auf die Entwicklung von Microservice-Architekturen im SaaS-Umfeld fokussiert. Unter dem Einsatz modernster Technologien, wie Azure, AI und Edge-Computing, entwerfe und entwickle ich für meine Kunden robuste, skalierbare und zukun5ssichere Lösungen.


Arbeit mit Kunden

  • Im Rahmen meiner BerufslauSahn habe ich als So5wareentwickler und So5ware-Architekt spezialisierte technische Lösungen für komplexe Herausforderungen für Unternehmen aller Größenordnungen entwickelt. Dieser Prozess umfasst alles, von der Analyse des Ist-Zustands bis hin zur Umsetzung der individuellen Kundenanforderungen. 
  • Dabei berücksichNge ich stets die bestehenden Systeme und Technologien des Kunden, um eine nahtlose IntegraNon zu gewährleisten. 
  • Meine langjährige Erfahrung, sowohl im fachlichen Bereich als auch im Kundenkontakt, ermöglicht es mir, professionell aufzutreten und mich effizient in unterschiedliche Teamdynamiken einzufügen. 
  • Meine Arbeitsweise ist von einem offenen, fairen und respektvollen Miteinander geprägt, da ich überzeugt bin, dass dies die Grundlage für erfolgreiche Projekte ist.


Wie kann ich Sie bereichern?

  • Durch meine Erfahrung und der engen fachlichen Zusammenarbeit mit meinen Au5raggebern und Vorgesetzten bin ich in der Lage, die Anforderungen der Au5raggeber zügig in technische Lösungskonzepte umzuwandeln und diese verständlich zu vermitteln. Anschließend entwerfe ich einen detaillierten Projektplan, der die Planungssicherheit für die Umsetzung maßgeblich erhöht. 
  • Meine Erfahrungen als So5wareentwickler, insbesondere als Fullstack-Entwickler und So5warearchitekt, ermöglichen es mir, direkt im Projekt meine Fähigkeiten einzusetzen und den Aufbau der So5ware unter Berücksichtigung zukünftiger Ziele zu gestalten und umzusetzen.
  • Dank meiner Erfahrung als Ausbilder kann ich lernenden Teamkollegen hilfreiche und konstruktive Lösungswege bieten, die durchdacht und lernfördernd sind. Diese kommuniziere ich respektvoll und auf Augenhöhe.


Skills

  • Beratung
  • Produktentwicklung
  • Softwareentwicklung
  • Software-Architekturen
  • Datenbanken, Netzwerke
  • verteilte Systeme
  • Betriebssysteme
  • Projektmanagement


Software-Engineering

UML, OOA, OOD, StarUML, EnterpriseArchitect, Java, Spring Boot, JavaEE, JSP, JSF, Tomcat, Vert.x, HTML, CSS, Javascript, Typescript, AngularJS, Angular 2+, NodeJS, GoLang, Rust, Axum, Askama, WebAssembly (WASM), Scala, Spray. io, Akka, Swagger, OpenAPI, Docker, Docker Compose, Linux, VMWare ESXi, MySQL, PostgreSQL, MongoDB, DynamoDB, Hadoop, JUnit, JGiven, Protractor, Selenium, Cypress, ScalaTest, Ionic, bash, Git, SVN, Thymeleaf, Java Messaging Service, EJB, XML, JSON, YAML, TOML, DSL Entwicklung, JMeter, Jira, Confluence, OAuth, JWT, Azure DevOps, Azure CosmosDB, Azure Functions, Azure Blob Storage, Azure Web-Apps, JAM-Stack, AstroJS, Hugo, Rust, Actix, Warp, Yew, WebAssembly (Wasm+Wasi), Test Driven Development (TDD), Serverless-Architektur, Microservice-Architektur, Reactive Extensions (Rx), Netzwerkadministration, Sophos UTM, SAP R3, SAP BW, DynPro for ABAP, Funktionsbausteine, WebDynPro for Java, WebDynPro for Java, SAP PM, SAP FI-CO, SAP HR, B. ON.D Finance (SAP Finanzbuchhandlung für den Autohandel), LightSpeed Kassensysteme


Softskills

  • Kommunikationsfähigkeit
  • Kompromissbereitschaft
  • Diplomatie
  • Durchsetzungsvermögen
  • konsequentes Handeln
  • Ideenreichtum
  • abstraktes und lösungsorientiertes Denken
  • Lernbereitschaft
  • Verantwortung
  • Fleiß
  • Flexibilität
  • selbstständiges Arbeiten
  • Teamfähigkeit
  • Kooperation
  • Reisebereitschaft


Berufserfahrung

2015 - 2023

Kunde: iNUX Meyer & Partner mbB


Aufgaben:

  • Im Rahmen meiner Anstellung bei der iNUX Meyer & Partner mbB war ich neben der Softwareentwicklung für den Betrieb der IT-Infrastruktur verantwortlich. Dies schließt das Ticket-System, eine Projektmanagementplattform, 2 intern Entwickelte Web-Anwendungen und ein Wiki, die in Docker betrieben wurden ein. Überdies war ich noch für Supporttätigkeiten hinsichtlich DATEV zuständig.
  • Meine Aufgaben umfassten dabei Updates, Fehlereskalation und Sicherung des Betriebs. Die Umgebung war vollständig virtualisiert mit VMWare ESXi. Ein weiterer Server wurde mit Veeam als Backuplösung eingesetzt
  • Im Rahmen der Jahresabschlussprüfungen unserer Mandanten, habe ich die regelmäßige IT-Prüfung nach IDW PS 330 durchgeführt.


2009 - 2014

Kunde: E.On


Aufgaben:

  • In meiner Zeit bei E.On habe ich neben den Projekten regelmäßig kleine Reportings und Anwendungen in ABAP entwickelt oder angepasst, die durch die Fachabteilungen benötigt wurden. Dies erstreckte sich über die Komponenten PM (Wartung), FI (Finanzen), CO (Controlling) und HR (Human Ressources). Des Weiteren war es regelmäßig notwendig Formulare anzupassen, die entweder mit SAP Forms oder SAPScript realisiert worden sind.
  • Da ich bereits fähig war Anforderungen aufzunehmen, abzusprechen und umzusetzen war ich meistens direkt mit den Product-Ownern in Kontakt, um meine Ansprechpartnerin in der Abteilung zu entlasten. Dies hat mich maßgeblich dazu befähigt mit Kunden in den fachlichen Austausch zu gehen und technische Details zielgerichtet und fachagnostisch zu kommunizieren und mit den fachspezifischen Anforderungen abzugleichen.

Programmiersprachen

Java
Experte
Rust
Fortgeschritten
Scala
Experte
Typescript
Experte
HTML
Experte
CSS
Experte
Python
Fortgeschritten
C#
Fortgeschritten

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

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

Das Freelancer-Portal

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