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
Kenntnisse:
C#
Architektur
Automatisierte Tests
Unit-Tests
Continuous Integration
Continuous Delivery
Docker
Docker Compose
Container
Istio
InfrastructureAsCode (IaC)
Microservices
Self-Contained Systems
Protobuf
Cloud Native
Azure
Messaging
Azure ServiceBus
Azure Serverless
PostgreSQL
Design Pattern
Microservice Pattern
Idempotenz
Transaction Outbox Pattern
Gateway
Event Driven System
C# Template
Azure Pipeline Template
Forderungsdaten für das Konsumentenportal
Zeitraum: 01/2020 – 06/2023
Rolle: Softwareentwickler
Auftraggeber: Lowell
Teamgröße: 4
Personentage: 50
Das Konsumentenportal von Lowell ist eine zentrale, digitale Service-Plattform für Personen, die offene Forderungen bei dem Inkassodienstleister haben. Lowell besteht aus mehreren Unternehmen, die sowohl organisatorisch als auch technisch voneinander getrennt sind. Dabei mussten mehrere verschiedene Inkassosoftware-Systemen auf eine API abgebildet werden.
Eigene Leistungen im Projekt::
- Anbinden neuer Subunternehmen von Lowell
- Anpassungen und Erweiterungen der Schnittstellen
- Definition der API mit Fokus auf Kompatibilität
- Testen der Schnittstelle lokal, im CI Build als auch in Produktion (teils nur halbautomatisiert)
- Ausrollen der API mit Zero Downtime in einem Kubernetes Cluster
- Analyse und Beheben von Fehlern in der Produktion
- Reduzierung der Anzahl der Services, da die Microservices zu klein geschnitten waren
- Behebung von Sicherheitslücken und Härtung der API-Schnittstellen nach Penetrationstests
- Anleitung des Entwicklerteams um erkannte Schwachstellen nachhaltig zu vermeiden
- Verteidigung der Systemarchitektur gegenüber externen Security-Auditoren
Kenntnisse:
C#
Architektur
gRPC
REST
Design Pattern
Gateway Pattern
Automatisierte Tests
Unit-Tests
Continuous Integration
Continuous Delivery
PostgreSQL
Oracle
Dapper
Kubernetes
Docker
Docker Compose
Container
Istio
InfrastructureAsCode (IaC)
Microservices
Self-Contained Systems
API-First
Protobuf
Git
Security Auditing
Secure Coding Best Practices
Architektur-Review
Risikokommunikation