Projekte mit dem Einsatz von Idempotenz

Um alle Projekte zu sehen, entfernen Sie den Filter

Monitoring einer Applikation

Zeitraum: 01/2024 – 03/2024
Rolle: Softwareentwickler
Auftraggeber: cover.mesh
Teamgröße: 4
Personentage: 60

cover.mesh hatte eine bereits bestehende Applikation in der Versicherungsdaten angelegt wurden. Ziel des Projektes war die Echtzeit-Erfassung von Datenänderungen im dem neuen Backoffice-Service inklusive einer grafischen Aufbereitung als Zeitreihen-Analyse in einem interaktiven Web-Dashboard.

Eigene Leistungen im Projekt::
  • Implementierung von Event-Sendens innerhalb der Persistierungsschicht
  • Konfiguration und Anbindung des Azure Event Hubs
  • Entwicklung einer zuverlässigen Nachrichten-Logik (At-least-once delivery)
  • Implementierung der Berechnung der Zeitreihen
  • Erstellen des Webportal mit Blazor Server Pages
  • Entwicklung von dynamischen Balkendiagrammen zur Darstellung von Zeitreihen-Analysen
  • Erstellen der CI/CD Pipeline ins Azure Devops

cLean – Inkassosoftware

Zeitraum: 03/2020 – 04/2023
Rolle: Softwareentwickler
Auftraggeber: Lowell
Teamgröße: 3
Personentage: 280

Lowell verfolgte mit dem Projekt cLean den Aufbau einer einheitlichen Inkassosoftware für alle Unternehmen. Dabei sollten alle Forderungen der DACH-Organisation in einem hochverfügbaren System möglichst automatisiert verarbeitet werden. Ein Hauptaugenmerk war dabei die mögliche Skalierung des Systems zu bestimmen Zeiten, in denen viele Forderungen importiert werden mussten. C# war die primäre Programmiersprache aber einzelne Services wurden mit Kotlin und Go umgesetzt.

Eigene Leistungen im Projekt::
  • Architektur des Microservices-Systems
  • Schneiden der Services nach den Domänen der Fachlichkeit (DDD)
  • Schneiden der Daten in Aggregate
  • Konzept und Entwurf eines sowohl menschen- als auch computerlesbaren Aktenzeichens
  • Konzept einer unveränderbaren Buchhaltung mit Event Sourcing
  • Konzept und Implementierung der Buchhaltungskomponente unter Einhaltung der fachlichen Regeln
  • Recherche der Verrechnungslogik in Deutschland und Österreich
  • Implementierung der Fachlogik
  • Realisierung von Suchanfragen über verteilte Systeme (separater Service mittels CQRS)
  • Teamübergreifendes Coaching, Schulungen und Hilfestellungen

API-First

Zeitraum: 03/2020 – 06/2023
Rolle: Softwareentwickler
Auftraggeber: Lowell
Teamgröße: 3
Personentage: 120

Lowell verfolgt eine API-First Strategie. Ziel war es, die API auch außenstehenden Prozessen zur Verfügung zu stellen. Deswegen wurde eine zentrale API vollautomatisch bereitgestellt und von allen Services genutzt. Die API unterliegt strengen Richtlinien an Design und Abwärts- und/oder Aufwärtskompatibilität je nach Anwendungsfall.

Eigene Leistungen im Projekt::
  • Konzept und Erstellung eines zentralen API-First-Repositories auf Basis von Protobuf
  • Automatisierte Erzeugung von Release und Pre-Release Versionen für mehrere Programmiersprachen für die Optimierung der Entwicklungsgeschwindigkeit
  • Konzept einer API-Versionierung
  • Erstellen von APIs
  • Dokumentation der API
  • Review von APIs mit primärem Fokus auf Verständlichkeit, Dokumentation und Breaking Changes

Umzug eines On-Premise Kubernetes Clusters in die Azure Cloud

Zeitraum: 03/2020 – 09/2020
Rolle: Softwareentwickler
Auftraggeber: Lowell
Teamgröße: 3
Personentage: 120

Zunächst wurden die Services in einem On-Premise Kubernetes Cluster betrieben. Ziel des Projekts war, alle Services auf die Azure Cloud umziehen. Außerdem wurden Techniken und Cloudservice evaluiert, Hilfsklassen und Template für die zukünftige Entwicklung und eine CI/CD Pipeline erstellt.

Eigene Leistungen im Projekt::
  • Auswahl der zu nutzenden Cloud-Services in Absprache mit dem Architekten
  • Absprachen über zukünftige Autonomie der Entwicklerteams
  • Review bestehenden Code und daraus resultierender Best-Practices
  • Dokumentation des Transaction Outbox Pattern und Idempotenz, Aggregaten und anderen nützlichen Microservice Pattern
  • Hilfsklassen für die Zustellung und Empfang von Protobuf Business Events
  • Erstellung des CI-Teils der CI/CD Pipeline
  • Evaluierung und Implementierung von Azure Serverless
  • Aufsetzen der Infrastruktur unter Anwendung von InfrastructureAsCode (IaC)
  • Liveness-Check / Readiness-Check für Services in Kubernetes
  • Erstellung von Cronjobs in Kubernetes
  • Erstellung von C# Templates für die Erstellung neuer Services

Stabilisierung der asynchronen Kommunikation – Fachkomponenten

Zeitraum: 11/2017 – 01/2018
Rolle: Softwareentwickler
Auftraggeber: Schleupen SE
Teamgröße: 5
Personentage: 100

Wenn verteilte Systeme asynchron kommunizieren und dabei Nachrichten verloren gehen, ist es sehr schwer herauszufinden wo sie verloren gehen. Da das vorherige Projekt gezeigt hat, dass die Fehler nun nicht mehr in den Plattform-Komponenten lagen, war die Aufgabe des Teams, im Framework Lösungen bereitzustellen, um die Fachentwickler zu unterstützen.

Eigene Leistungen im Projekt::
  • Konzept und Implementierung des Transaction Outbox Pattern im Framework
  • Dokumentation des Transaction Outbox Pattern
  • Schulungen zu Idempotenz und Transaction Outbox Pattern