Schlagwörter
Skills
Dank meiner weitreichenden Erfahrung als Backend-Entwickler und Software-Architekt in diversen Projekten erfasse ich komplexe Zusammenhänge schnell und arbeite mich zügig in neue Technologien und Projektanforderungen ein.
Als Teamplayer integriere ich mich zügig in bestehende Unternehmens- und Projektstrukturen, identifiziere Optimierungsmöglichkeiten und bringe zielgerichtete Lösungsstrategien ein.
Ich bin bereit, mit meiner Expertise Ihre Software-Architektur und die zugrundeliegende Software auf ein nachhaltiges, zukunftssicheres und leicht wartbares Fundament zu heben.
Aufgrund meines breiten fachlichen Wissens bin ich in der Lage, auch DevOps- und Frontend-Aufgaben zu übernehmen.
Ich freue mich darauf, Sie und Ihr Projektteam persönlich oder in einem Onlinemeeting kennenzulernen.
Meine Top-Skills für Ihren Erfolg
- Software-Architektur
- Backend Development
- C# / .NET Core
- Java
- Domain-driven Design (DDD)
- Infrastructure as Code
Zertifikate
- ISAQB® CPSA Foundation Level (CPSA‑F®)
- ISTQB® Certified Tester Foundation Level
- ISTQB® Certified Tester
Zusätzlich zu meinen Top-Skills kann ich Sie bei den nachfolgenden Technologien erfolgreich unterstützen:
Software Engineering / DevOps
- Angular
- Kendo UI for Angular
- Softwarequalität
- Verteilte Systeme
- Event driven Microservices
- EF Core
- REST
- Python
- Django Framework
- Java
- Spring Boot
- Git
- Test-driven Development
- Gherkin
- Red Hat Ansible
- Terraform
- Jenkins
- Continuous Integration / Continuous Delivery
- Docker
- HashiCorp Vault
- GitLab
- Behavior-Driven-Development
- Elasticsearch
- MySQL
- RabbitMQ
- AMQP
- MQTT
- AWS
- Ubuntu
- CentOS
- Mac OS
- BPMN
- SCRUM
- Kanban
- Jira
- Confluence
Projekthistorie
- Analyse des aktuellen IST-Standes des Elasticsearch Cluster Setups (Suchperformance, Ausfallsicherheit, Backup/Restore)
- Analyse des aktuellen IST-Standes der Crawler Applikation zur Indexierung der Daten aus dem Dokumentenmanagementsystem (DMS)
- Analyse des IST-Standes der Middleware- sowie Frontend-Applikation
- Analyse von Performance-Problemen innerhalb der Suche
- Dokumentation der Architekturschwachstellen (Elasticsearch, Applikationen) sowie Verbesserungsvorschläge um diese zu beheben
- Einführung und Implementierung von Unittests in den einzelnen Applikationen
- Abstimmung mit dem internen Solution-Architekt und der Product Ownerin hinsichtlich der gefundenen Architekturschwachstellen sowie Verbesserungsvorschläge
- Refactoring bestehender Komponenten um bspw. die Wartbarkeit oder die Such-Performance zu erhöhen
- Upgrade der Crawler Applikation auf Java 11
- Umstellung der Applikation auf asynchrone Verarbeitung u.a. Hilfe von Threads, Threadpools, CompletableFuture etc.
- Refactoring der Applikation, um die Testbarkeit einzelner Komponenten zu verbessern
- Erstellung / Erweiterung von Shell-Scripten
- Verbesserung der Suchperformance durch Reduzierung der Query-Ausführungszeit von 4200ms auf 220ms.
- Analyse der fachlichen Anforderungen an die neue Suche / Requirements Engineering mit verschiedenen Stakeholdern
- Konzeption der Architektur der neuen Suche basierend auf verschiedenen fachlichen Anforderungen (Dokumente, Fonds, Veranstaltungen, ...)
- Konzeption der Infrastruktur (Elastic Cloud Azure)
- Konzeption und Implementierung von Document Level Security / ABAC zur Sicherstellung von Zugriffsberechtigungen innerhalb der Suche
- Konzeption und Implementierung von Indizes für die verschiedenen fachlichen Anforderungen
- Konzeption der Importprozesse und der zugrundeliegenden Payloads
- Implementierung von Azure Functions zur Aufbereitung der Suchinhalte vor dem Import
- Implementierung einer Azure Function als Such-Backend / API zwischen Elasticsearch und der Frontend-Applikation
- Implementierung von Azure DevOps Pipelines
- Deployment des Clusters sowie der Cluster-Konfiguration mit Hilfe von Terraform in der Elastic Cloud
- Architektur-Dokumentation in Confluence / Markdown
- Anbindung von Azure ADB2C, Magnolia und anderen Drittsystemen
an verschiedene Kommunikationskanäle wie bspw. E-Mail, Fax oder KIM (Gematik). Weitere
Details zum Projekt können nicht genannt werden, da es eine eigene Produktentwicklung in
Kooperation mit einer Arztpraxis (5 Ärzte, 40 Mitarbeiter) aus Koblenz ist.
Technologiestack:
- C#.NET 7
- Blazor
- MySQL
- MediatR
- xUnit
- GuardClauses
- FluentValidation
- Radzen Blazor
- Syncfusion
- Serilog
- EntityFramework Core
Zusätzlich zum Kernmarkt ist die Produktsuche in den Ländern Österreich, Polen, Ungarn und Norwegen ausgerollt und aktiv, wobei jede Ländergesellschaft einen eigenen Produktdatenstamm vorhält.Analyse der Legacy-Anwendung und der vorhandenen Implementierungen hinsichtlich der Fachlichkeit und der technologischen Umsetzung.
- Entwurf und Dokumentation der Software-Architektur der neuen Webshop-Suche.
- Implementierung der neuen Webshop-Suche im Backend sowie im Frontend.
- Implementierung von Unit- und Integrationstests als Grundlage für zukünftige Refactorings.
- Neuentwicklung der Suche mit asynchronen Programmierparadigmen (async/await).
- Optimierung des Clusters hinsichtlich Ausfallsicherheit (Verteilung der Shards etc.) (Azure Cloud).
- Optimierung des Clusters hinsichtlich Indexierungsgeschwindigkeit.
- Laufzeit-Optimierung des Importes der Daten aus der relationalen Datenbank in Elasticsearch. Der Stammdaten-Import ist innerhalb von 2.5 Stunden abgeschlossen; die initiale Laufzeit betrug > 24h.
- Dokumentation der Architektur mit Hilfe von Arc42 / docToolchain.
- Neuentwicklung von REST APIs.
- Neuentwicklung des Frontends basierend auf dem firmeneigenen Framework des Kunden.
Tech stack / Skills
- C# / .NET Core
- MediatR
- .NET Framework 4.8
- Elasticsearch NEST
- xUnit
- Arc42
- docToolchain
- Redis
- TypeScript
- IBM DB2
- Kanban
- Microsoft Azure Cloud / Elastic Cloud
Weiterentwicklung einer Software im Rahmen des Onlinezugangsgesetz (OZG)
- Analyse der vorhandenen Spring Boot Anwendung nach Übernahme vom vorherigen Dienstleister
- Dokumentation der Schwachstellen und tech. Schulden (Software-Architektur / Quelltext)
- Refactoring des bestehenden Codes; Erhöhung der Wartbarkeit sowie Testabdeckung (Unittests)
- Implementierung von Validierungen im Backend; diese fehlten bei Übernahme der Applikation
- Implementierung neuer Features nach fachlicher Vorgabe inkl. Unit-/Integrationstests
- Anbindung von Elster Unternehmenskonto als Identity Provider
- Generierung von PDF Dokumenten mit Hilfe von Jasper Reports
- Liquibase für Datenbank-Migrationen
- Erstellen von XML-Dateien basierend auf den XÖV-Standards
- Behördenkommunikation mittels XTA/OSCI
- Java 11/17
- Spring Boot
- Keycloak
- PostgreSQL
- Liquibase
- Mockito
- Kubernetes / Rancher
- Docker
- Vue.js
- TypeScript
- Open Telekom Cloud
- SAML
- Elster Unternehmenskonto
- Jasper Reports
- Scrum
Entwicklung / Konzeption der Architektur eines Self-contained Systems auf Basis von .NET Core zur Parametrierung von Steuerungssystemen. Einsatz von State of the Art Technologie aus dem .NET Core Ökosystem. Integration in die bestehende Self-contained Systems Landschaft mit Hilfe einer Event-driven Architecture auf Basis von AMQP / RabbitMQ. Unterstützung bei der Entwicklung des Frontends auf Basis von Angular / TypeScript und Kendo UI for Angular.
Einsatz von Domain-driven Design, hauptsächlich taktisches Design bei der Konzeption der Software-Architektur des Services selbst und während der Entwicklung.
Tech stack / Skills- C# / .NET Core
- Domain-driven Design
- EF Core
- MediatR
- RabbitMQ
- Scrum
- Jenkins
- Red Hat Ansible
- Terraform
- CentOS
- MySQL
- Continuous Integration
- REST
- Elastic Beats
- SonarQube
- Test-driven Development
- Keycloak
- XUnit
- KendoUI for Angular
- Angular
- TypeScript
- JSON
- XML
Entwicklung / Architektur einer verteilten, Event getriebenen Self-contained Systems (SCS) Umgebung auf Basis von Python Backends. Die Aufteilung der SCS erfolgte mit Hilfe von Domain-driven Design (Strategischen Design) auf Basis der Fachlichkeit (Bounded Contexts). Dokumentation der Architektur sowie Modellierung und Dokumentation von Prozessen mit BPMN.
Datenhaltung in unterschiedlichen DBMS / Timeseries Datenbanken. Unter anderem Einsatz von Elasticsearch zur Analyse der Daten.
Das System dient zur Verwaltung von IoT Endgeräten und zur Persistierung und Verarbeitung mehrerer Mrd. unterschiedlicher Messwerte der Endgeräte.
Integration in die bestehende Architekturlandschaft mit verschiedenen Systemen wie bspw. Salesforce.
Tech stack / Skills- Domain-driven Design
- Scrum
- Jenkins
- Continuous Integration
- Python
- Django
- Elasticsearch
- MySQL
- AMQP
- RabbitMQ
- Celery
- Kibana
- Elastic Beats
- SonarQube
- Test-driven Development
- Red Hat Ansible
- Keycloak
- OAuth
- Docker
- Terraform
- BPMN
Mit meinem Start im Unternehmen habe ich folgende Technologien und Methoden in der Firma etabliert:
- Scrum mit gelebten Stakeholder-zentrierten Reviews
- Optimierung des Softwareentwicklungsprozesses
- Einführung von Prozessen zur Steigerung der Softwarequalität
- Git und GitLab als SCM und Unterstützung bei der Migration von SVN zu Git
- Continuous Integration und Continuous Delivery
- Jenkins als Build Server mit komplexen Build Pipelines inkl. Software Quality Gates; Verwaltung der Pipelines as Code
- Statische Code Analysen mit SonarQube innerhalb der Software Build Pipelines
- Statische Security Checks innerhalb der Software Build Pipelines
- Infrastructure as Code mit HashiCorp Terraform und Red Hat Ansible
- Automatisierte Depoyments der Software Artefakte mit Ansible über mehrere Deployment Stages
- Behavior-Driven-Development mit Cucumber / Gherkin
- Identity und Access Management (IAM) mit Keycloak
- Architektur des Greenfield Projektes basierend auf Self-contained Systems (SCS)
Entwicklung von Backend-Services innerhalb einer Microservices-Architektur als Kommunikations-Layer zwischen Frontend-Applikationen und der nachgelagerten Auftragsabwicklung im CRM. Integration der Services und weiterer Schnittstellen mit Hilfe von Mule.
Anbindung an das Content Management System TYPO3.
Tech stack / Skills- Domain-driven Design
- Spring Boot
- Microservices
- Docker
- Scrum
- Java
- Mule
- REST
- TYPO3
- AAX2
- SOAP
- Continuous Integration
- Jenkins
- SonarQube
- Test-driven Development
- Puppet
- Maven
- Gradle
- JSON
- XML
Integration des E-Commerce Systems in das Content Management System TYPO3 und Anbindung länderspezifischer Backends zur Auftragsabwicklung.
Tech stack / Skills- PHP
- TYPO3
- REST
- AWS
- Chef
- Puppet