Planung, Implementierung und Betrieb einer Anwendung für Datenaggregation & Kuration mit Microsoft Azure Cloud Computing Services
Planung der Gesamtlösung
Erstellung einer Lösungsarchitektur
Implementierung der Webanwendung mit Vue.js und Azure Functions
Azure Functions für Scraping, Aggregation, Kuration und Versand an Slack-Channel
Azure Cosmos DB für Datenhaltung
Azure Service Bus und Azure Event Grid für ereignisgesteuerte Architektur
Slack App, Slack Block Kit für Nachrichtenversand
Bereitstellung Infrastruktur via Azure Resource Manager und Bicep
Continuous Integration und Continuous Deployment mit Azure DevOps Services
Planung und Umsetzung des Curriculum Vitae / der Résumé-Webseite.
Planung der neuen Résumé-Seite
Erstellung einer Lösungsarchitektur
Recherche und Auswahl der einzusetzenden Technologien
Erstellung der Texte & (Vektor)-Grafiken
Aufbau Continuous Integration
Aufbau Continuous Deployment
Implementierung Webseiten- & PDF-Erzeugung. . .
. . . aus einer gemeinsamen «Single source of truth»
. . . auf Basis aktueller Technologien (Gastby Static Site Renderer, HTML-5)
Rollout und Betrieb
Die CSS Versicherung ist nicht nur eine Krankenkasse, vielmehr eine Versicherung für jede Lebenslage. Wenn es um die Gesundheit geht, vertrauen der CSS rund 1,7 Millionen Menschen. Zum breiten Angebot gehören Kranken-, Unfall- und Sachversicherungen.
In den Jahren 2018 bis 2020 unterstützte ich die CSS Versicherung in verschiedenen Bereichen. Ich förderte die Weiterentwicklung von Mitarbeitern in meinem Stream hin zu noch mehr Exzellenz und Know-how, indem ich Schulungen und Workshops zu Exzellenz- und Innovationsthemen plante und durchführte.
Ausserdem unterstützte ich die Einführung von Mob- und Pairprogrammings und nahm aktiv daran teil, hauptsächlich zu den Themen «Software Craftsmanship» und Softwareexzellenz.
Weiterhin unterstützte ich den Kunden in den Entwicklungsbereichen Front- und Backend-Entwicklung, sowie DevOps, mit dem Ziel den Wechsel in die Welt des Cloud Computing einzuleiten.
Meinen SCRUM-Teams half ich bei der Analyse konkreter Problemstellungen, der Lösungsfindung und der Implementierung unter Einhaltung von Best Practices und stand den Teams und Lead Architekten meines Streams beratend zur Seite.
Durchgeführte Workshops und Schulungen. . .
Softwareentwicklung im Mob «Methodik und Durchführung»
Coding Dojos zu verschiedenen Software Craftsmanship Themen und Exzellenzthemen, wie zum Beispiel testgetriebene Entwicklung (TDD), Clean Code und SOLID-Prinzipien
Einführung in Domain-driven Design (DDD)
Fullstack-Entwicklung unter MacOS
Die Grundlagen der Programmiersprache Kotlin
Programmierung mit «observable streams» und ReactiveX
Hochperformante Microservices mit Quarkus und GraalVM
Einführung in Docker und Kubernetes
Continuous Integration mit Microsoft Azure DevOps Pipelines
Einführung Microsoft Azure Cloud
Frontendentwicklung in Angular, React, Vue.js mit Flow/Redux/NgRx und Immutables
Im Programm RiskPricing wurden die Prozesse zur Prämienbemessung und die Systeme zur Festsetzung der Prämiensätze unter Berücksichtigung von Branche, Risikogemeinschaft, Bonus-Malus und Erfahrungstarifierung neu entwickelt und zudem eine neue Grossschäden- und Rückversicherungslösung umgesetzt.
Es wurde eine Lösung zur Analyse der aktuellen Risikosituation und der finanziellen Lage unter Berücksichtigung von Informationen aus dem Risikoinformationssystem und der adcubum SYRIUS Assekuranzsoftware geschaffen, auf Basis derer die Prämiensituation bewertet und der Abbau der Ausgleichsreserven kalkuliert werden kann.
Unter Einbezug der Bonus-Malus-Modelle und der Erfahrungstarifierung können Simulationen durchgeführt werden, die als Grundlage für die Festsetzung der Prämiensätze in den Sparten Berufsunfall- und Nichtberufsunfallversicherung dienen. Zudem erfolgt die Kalkulation und Erstellung der Grundlagenblätter, sowie die Erzeugung der Rohdaten für den Digitaldruck im Kontext der Kundenkommunikation in dem neu geschaffenen System.
Unterstützung des Scrum Masters und des Lösungsarchitekten bei der Grobschätzung der Projektaufwände, sowie der Identifizierung möglicher Projektrisiken.
Beratung der Projektleiter und des Project Owners, bezüglich der möglichen
Umsetzungsvarianten der jeweiligen Anforderungen aus den Fachkonzepten.
Datenmodellierung für den Anwendungsteil der Grundlagenblattberechnung.
Design und Implementierung des Prototyps als Proof of Concept, sowie massgeblicher Teile der Anwendung, insbesondere die wiederverwendbaren Komponenten, sowohl im Frontend als auch im Backend.
Schulung von Teammitgliedern zu Java SE8 (insbesondere der neuen Streaming-API und den Lambda Expressions), Java Enterprise Edition 7 und im Einsatz moderner Webtechnologien (insbesondere TypeScript und Angular). Vermittlung von Wissen über die Anwendung moderner Toolchains, insbesondere zur Realisierung testgetriebener Entwicklung (im Einzelnen die Implementierung und Ausführung von Modul-, Integrations- und e2e-Tests), sowie über Continuous Development und Delivery.
Im Programm iComm Konnex wurden diverse Projekte unter Zuhilfenahme des neu entwickelten suvainternen Frameworks RESTretto umgesetzt.
Primär Full Stack Entwicklung mit Java EE und Angular, u.a. . .
Baumusterprüfbescheinigungen (Administrations- und Webanwendung)
Grenzwerte am Arbeitsplatz (Administrations- und Webanwendung)
Kontakte und Adressen / Agenturensuche (Webanwendung)
weitere Details auf Anfrage
Systemlösung für die Schulen der Stadt Chemnitz zur Unterstützung des fachübergreifenden Einsatzes Neuer Medien (Sys-C). Im Projekt Sys-C wurde eine Systemlösung für die Schulen der Stadt Chemnitz, zur Unterstützung des fachübergreifenden Einsatzes Neuer Medien entwickelt. Das Projekt wurde durch das Bundesministerium für Bildung und Forschung und den Europäischen Sozialfonds gefördert. Als Projektträger ist das Deutsche Zentrum für Luft und Raumfahrt (DLR), genauer der Projektträger Neue Medien in der Bildung (PT-DLR, Project Management Agency ? part of the German Aerospace Center) eingesetzt. Es wurde eine einheitliche Systemsoftware zur schulischen Nutzung im Unterricht für zirka 85 Schulen entwickelt.
Verwaltung von Nutzern, Klassen, Kursen und Projekten, Computerräumen und Computern, sowie Druckern über eine grafische Administrationsoberfläche.
Nutzerverwaltung inklusive Massenimport, automatischer Versetzung von Schülern und Unterstützung verschiedener anpassbarer Benutzerrollen.
Automatische Generierung von Initialpasswörtern oder Nutzung von Standardpasswörtern.
Automatische Integration von Arbeitsplatzcomputern.
Dateiserver für Microsoft Windows, Linux und Mac OS X Arbeitsplatzrechner.
DHCP- und DNS-Server inklusive automatischer Konfiguration ohne Benutzereingriff.
Unterstützung von Windows Arbeitplatzstationen im Domänen- und Workgroupmodus.
Unterstützung von Mac OS X und Linux Clients.
Personen-, klassen- und kursbezogene Dateiquota, sowie Mailquota.
E-Mail Server inklusive webbasierter Groupwareanwendung mit Adressbuch, Kalender und Erinnerungsfunktion.
Raum- und nutzerbasierte Internetzugangskontrolle inklusive Kinder- und Jugendschutzfilter.
Virenscanner für den Dateiserver, den E-Mail-Server, sowie den Internetzugang (http und ftp).
Verteilen und Einsammeln von Klassen- und Projektarbeiten (Klassenarbeitsfunktion).
Druckerverwaltung inklusive Druckaccountinglösung für Netzwerkdrucker und über Arbeitsplätze freigegebene Drucker.
CD-ROM Archiv.
Datenbank-, Zeit- und Webserver.
Vollautomatische Updatefunktion, die die Server ohne Nutzereingriff auf dem neuesten Stand hält.
Unterstützung diverser Voreinstellungen, wie zum Beispiel zur automatischen Erstellung von Initialpasswörtern oder das Setzen von Benutzerquota.
Stapelverarbeitungsfunktionen (z.B. Quota für eine bestimmte Benutzerauswahl neu setzen).
Didaktische Bildschirmsteuerlösung.
Überwachung einzelner Arbeitsplatzstationen.
Überwachung aller Arbeitsplatzstationen einer Computergruppe.
Ausgabe des Lehrerbildschirms an eine einzelne Arbeitsplatzstation.
Ausgabe des Lehrerbildschirms an alle Arbeitsplatzstationen einer Computergruppe.
Sperrung von Maus und Tastatur einer Arbeitsplatzstation.
Sperrung von Maus und Tastatur einer Gruppe von Arbeitsplatzstationen.
Serverbasierte Clientinventarisierung.
Automatische Softwareverteilung für Windows, Max OS X und Linux.
Unterstützung im Vorfeld der Produktionseinführung eines IT-Systems für einen weltweit führenden Anbieter von Lösungen für Zutrittskontrollen und Schliesssystemen der Sicherheitsindustrie, das die Kernsysteme der Ländergesellschaften schrittweise ersetzen und konsolidieren wird.
Konzeption, Erstellung, Integration und Dokumentation neuer Kern-Komponenten für die Clientanwendung.
Optimierung der projekteigenen Tabellenkomponente: Sortierung und Filterung, sowie deutliche Steigerung der Performance bei sehr großen Datenmengen.
Fehlerbehebung und Optimierung bestehender Client Kern-Komponenten.
Beratung in Implementierungs- und Performancefragen.
Dokumentation und Best Practices
Architektur und Lead-Entwicklung eines Applikations-Frameworks für die Client-Plattform auf Basis von Java 8 und JavaFX 8.
Konzeption, Erstellung und Dokumentation eines JavaFX-Applikations-Frameworks, welches die Benutzeroberfläche nach dem MVC-Prinzip realisiert.
Wahlweise konfigurative oder auch programmatische Erzeugung von Dashboards, Favoritensteuerung, Breadcrumbs, Ribbonpanes und Suchfunktion aus einer Gruppen- und Modulkonfiguration heraus.
Lokalisierung und Internationalisierung, Validierung, sowie die Visualisierung und Abhandlung von ausstehenden Änderungen.
Multistage-Unterstützung, das heißt die Unterstützung einer beliebigen Anzahl von Fenstern, sowie Drag und Drop zwischen diesen Fenstern.
Zentrales exception handling wird durch die Anzeige entsprechender Meldungsdialoge realisiert. Es wird sowohl die Anzeige von fachlichen Meldungen, als auch die Anzeige von Fehlerdialogen für die Behandlung nicht erwarteter Probleme, inklusive der Option des Mailversands unterstützt.
Life-Cycle-Management, welches sich um das Starten und Stoppen von Anwendungsfällen (auch Usecases/Module) kümmert und grundlegende Funktionen für das Laden und Speichern von Daten zur Verfügung stellt.
Messagebus für die gezielte Kommunikation zwischen Framework und Usecase-Controllern, sowie der Usecase-Controllern untereinander.
Der Fokus beim Entwurf und der Entwicklung lag neben der Erstellung einer modernen und intuitiv nutzbaren Oberfläche, auf der Erstellung eines Frameworks, das die einfache Implementierung von Anwendungsfällen unter Vermeidung von Coderedundanzen ermöglicht.
Architektur und Umsetzung einer Basis-Library, sowie der Client-Plattform (Fat Client) für die Anlaufplanung der Produktion neuer Fahrzeugmodelle für einen großen deutschen Automobilhersteller. Architektur Client, sowie Lead-Entwicklung Client und Mitentwicklung Middleware und Backend.
Swing-Client, welcher die Benutzeroberfläche nach dem MVC-Prinzip realisiert.
Kommunikation mit der Middleware via Hessian Binary Web Service Protocol mit Spring.
Fokus auf Client-Architektur, Performanceoptimierung und code cleaning
Weiterentwicklung, Bugfixing, Refactoring und architekturelle Neuausrichtung einer Plattform für die Planung und Bewertung, sowie die Kalkulation und das Controlling von Innovationsprojekten im Automotive-Bereich (primär CO2- und Gewichtsreduktion) eines großen deutschen Automobilherstellers.
Fokus auf Architektur, Performanceoptimierung und code cleaning der Bestandsanwendung.
Umsetzung neuer Features in einem Swing-Fat-Client, welcher die Benutzeroberfläche nach dem MVC-Prinzip realisiert.
Erstellung einer sehr grossen hochperformanten Tabellenkomponete die komplexe Berechnungen durchführt und die Filterung und Aggregation von Daten ermöglicht.
Einsatz von User Interface Controllern und Use Case Controllern.
Kommunikation mit der Middleware via Command-Channel über das Hessian Binary Web Service Protocol.
Einsatz von UML, Business Objects, Value Objects, Value Object Assembler, Data Transfer Objects, Data Access Objects, Mementos
Im Rahmen einer Umstellung der Webdienste der Staatsbibliothek zu Berlin auf eine Hochverfügbarkeitslösung wurden diverse Dienste geplant, installiert, konfiguriert und gewartet.
Mehrfach redundates Webserversystem, basierend auf Debian GNU/Linux-Systemen, in Kombination mit Apachewebservern und einer HA-Clustersoftware. Es kamen sowohl redundante Serverkomponenten, als auch Datenspeicher zum Einsatz. Aufsatz diverser Absicherungswerkzeuge für den Einsatz der Systeme als Bastionhosts. Nutzung: > 1,5 Millionen Zugriffe / Monat.
Entwicklung und Support verschiedener webgestützter Lösungen für die Stiftung Preußischer Kulturbesitz, die Staatsbibliothek zu Berlin und die Staatlichen Museen zu Berlin.
Webfrontendserver für das Buchbestellsystem der Staatsbibliothek zu Berlin auf Basis von Linux. Erweiterung auf SCO-Kompatibilität. Aufsatz diverser Absicherungswerkzeuge für den Einsatz als Bastionhost.
Einrichtung eines neuen E-Mail-Servers auf Basis von Postfix, Migration von ca. 1000 Nutzern.
Webanwendung für den zentralen Zugriff auf Inhalte verschiedener weltweit verteilter Datenbanken ostasiatischer Handschriften
Entwicklung eines Lizenz-Managers als webgestützte Java EE6 Anwendung mit integrierter SOAPSchnittstelle, die es ermöglicht Software und Kunden in Bezug auf die Verwaltung von Softwarelizenzen zu administrieren. Es handelt sich um eine klassische Verwaltungsanwendung, die weitestgehend auf Eingabemasken setzt. Über das Produkt werden zurzeit zirka 150 Server an 120 Standorten mit ungefähr 60.000 angebundenen Clients (Arbeitsplatz-PCs) verwaltet.
Dynamische Verwaltungsoberfläche (Ajax, Primefaces, Prettyfaces)
Verwaltung von Kunden, Standorten und Kontakten
Verwaltung von Software
Vergabe von Lizenzschlüssel
Signierung und Verschlüsselung
PDF-Erstellung
Kommunikation mit zu installierender Software via SOAP-Schnittstelle
Java-, PHP- und Python-Client
Erstellung und Umsetzung Backupkonzept für die Stiftung Preußischer Kulturbesitz
Es wurde eine Backupstrategie für die Stiftung Preußischer Kulturbesitz erarbeitet, welche eine schnelle Wiederherstellung der Unix- und Linux-Serversysteme, sowie verschiedener Datenspeicher und Datenbanken nach Systemausfällen sicherstellt. Gesichert werden Server zweier Standorte, sowie deren Konfigurationen und Systemzustände. Unterstützt wird gezielte Wiederherstellung von Datenbeständen, sowie das Disaster Recovery
Planung und Umsetzung des Backupkonzeptes.
Planung und Umsetzung der Desaster Recovery Strategy
Umsetzung der Neuanbindung des Bezirksamtes Spandau von Berlin an das Berliner Landesnetz
Mehrstufiges Firwallsystem auf Basis von Linux und BSD
Intrusion-Detection-System [IDS]
Intrusion-Prevention-System [IPS]
Mail-Relay-Server inklusive Anitvirus-Software
DNS-Server und Webserver
HTTP- und FTP-Proxy-Server
E-Mail-Server (imap, pop3)
Systemweite Absicherung durch diverse Sicherheitswerkzeuge
gehärtete Administrationsworkstation
Die Printium AG war ein auf den Handel und die Abwicklung von Druckaufträgen über das Internet spezialisiertes Unternehmen. In meiner Rolle als Leiter der Abteilung für Frontend-Entwicklung, war ich primär für die Koordination der Entwickler und architekturelle Themen zuständig.
Teamkoordination
Architektur und Mitentwicklung einer browserunabhängigen JavaScript Library
Architektur und Mitentwicklung Frontend CMS
Architektur und Mitentwicklung Frontend E-Procurement und Druckabwicklung
Entwicklung eines elektronischen Bestellsystems für den Landesbetrieb für Datenverarbeitung und IT-Serviceaufgaben (LDS), heute Brandenburgischer IT-Dienstleister (ZIT-BB). Das neue Beschaffungsverfahren leistet einen wichtigen Beitrag zur Modernisierung der Brandenburgischen Verwaltung. Allen Behörden steht dieses flexible und praktische Instrument zur Bedarfsdeckung im IT-Bereich zur Verfügung. InSecMa setzte die Planung und Erstellung einer webbasierten Anwendung um, über die die verschiedenen Fachbereiche der Verwaltungen Bestellungen über das Intranet vornehmen können.
Planung und Entwicklung der Bestellsystems
Joker Software war ein in Hamburg ansässiges Unternehmen der Werbebranche, spezialisiert auf Digitale Medien.
Interaktiver Internetauftritt ?Simon the Sorcerer? für Hasbro Interactive unter Einsatz von Flash und PHP
Online-Geschäftsbericht im Internet für Lufthansa Technik
Diverse interaktive Webseiten in Zusammenarbeit mit Heye & Partner Salesforce, Hamburg
Regelmäßige Fortbildungen sind das Fundament einer tiefgehenden Expertise. Daher bilde ich mich permanent weiter und nutze hierfür primär die Möglichkeiten des World Wide Web. Eine Aufführung der letzten Weiterbildungen im klassischen Sinne finden Sie in der folgenden Aufzählung:
2022
Zertifiziertes iSAQB-Modul «Advanced Level CLOUDINFRA»
Infrastruktur, Container und Cloud Native** (geplant)
2021
Apache Kafka Kurs
4929: Confluent Training «Apache Kafka Fundamentals»
Confluent
Microsoft Azure Zertifizierung
AZ-900: Microsoft Certified Azure Fundamentals
Microsoft, Pearson VUE
2020
Kubernetes-Zertifizierung
LFS158x: Introduction to Kubernetes
The Linux Foundation, edX
DevOps Kubernetes Camp
Viertägiges Intensivtraining über Kubernetes und Knative
Software & Support Media GmbH
2019
Konfliktmanagement und konstruktive Konfliktlösungen
oose Innovative Informatik eG
Kommunikation & Moderationstechniken in der IT
oose Innovative Informatik eG
Zertifiziertes iSAQB-Modul «Advanced Level DDD»
Domain Driven Design im Software Architecture Camp
Software & Support Media GmbH
Zertifiziertes LeSS Basic Training
Valtech GmbH
2018
w-jax
Software & Support Media GmbH
Schwerpunkte:
Trust and Confidence through Chaos
Microservices vs. Monolithen: Der definitive Shoot-out
Die Best Practices der Data Scientists
The Future of Streaming: Global Apps, Event Stores and Serverless
Argumente für den Einsatz von DevOps, InnerSource und modernen Entwicklungswerkzeugen beim eigenen Management
Kubernetes Patterns
Java EE/MicroProfile
Wie moderne SQL-Datenbanken auf Algorithmen kommen, von denen du nie geträumt hättest
9 Fallen auf dem Weg zum Business Value
Eine Einführung in Deep Learning
JUnit 5: More than just a Testing Framework for Java
Von Service-orientierten Architekturen (SOA) zu DDD und Microservices
Azure Cloud Services für Java-Entwickler
Microservices-Umgebung und Sidecars
Progressive Web Apps mit der Service Worker API
Angular-Workshop: Architektur und Konzepte für moderne webbasierte Geschäftsanwendungen
Jax Agile Day
Software & Support Media GmbH
Schwerpunkte:
Improv-driven Agility (IDA) ? Agilität trainieren mit Improtheater 2.0
Nachhaltige Teamentwicklung - die Spreu vom Weizen trennen
We are agile!? ? Wie wir sicherstellen, dass Teams agil arbeiten können
Qualität und Team mit Codereviews
Wie stelle ich sinnvoll (agile) Softwareentwickler ein?
Agile - Was kostet der Spaß?
JavaScript- & AngularDays
Software & Support Media GmbH
Schwerpunkte:
Das JavaScript-Upgrade für 2018 für Webentwickler
Navigationsstrukturen mit dem Angular Router: Deep Dive
Reactive Forms in Angular
WebAssembly: Single Page Applications (SPAs) ohne JavaScript?
Hochperformante Single Page Applications mit Angular
Struktur für Ihre großen Angular-Anwendungen: Pakete, Monorepos und Microfrontends
Cross-Plattform-Entwicklung mit Electron, Cordova und Angular
Reactive Programming mit RxJS
Coach & Trainer
IT Business Consultant
Software-Architekt & (Technischer) Projektleiter
Software Entwickler
Microsoft Azure
Microsoft Cloud Adoption Framework für Azure
Azure Enterprise Integration Platform as a Service (iPAAS)
Identity and access management (IAM)
Microsoft identity platform
Microsoft Entra (Secure access for a connected world)
Azure Active Directory (Azure AD)
Azure Active Directory B2C (Azure AD B2C)
Microsoft Authentication Library (MSAL)
Azure API Management
Azure App Service (Apps)
Azure Web Apps
Azure Static Web Apps
Azure Function Apps
Azure Durable Function Apps
Azure Container Apps
Container
Azure Container Instances (ACI)
Azure Container Registry (ACR, Docker registry service)
Integration
Azure Event Grid
Azure Service Bus
Microsoft Graph
Data
Azure SQL Database
Azure Cosmos DB
Azure Storage account
Azure Monitor
Log Analytics workspace
Application Insights
Azure DevOps Services
Azure Pipelines (Build, test and deploy with CI/CD)
Azure Repos (cloud-hosted private Git repositories)
Azure Artifacts
Infrastructure as code
Azure Resource Manager (ARM)
Azure Resource Manager templates (ARM templates)
Bicep
Terraform (infrastructure as code software, IAC)
Konfiguration
Azure App Configuration (Schneller, skalierbarer Parameterspeicher zur App-Konfiguration)
Azure Key Vault
Profil:
Ich verfüge über zirka 22 Jahre Berufserfahrung im IT-Bereich, sowohl als Consultant, Trainer/Moderator, IT-Architekt und Software-Entwickler, als auch in Projektleitungsfunktion mit und ohne Personalverantwortung.
Ich sehe mich eher als Generalist und Unterstützer, denn als Spezialist. Durch mein breites Wissen kann ich helfen Lösungen für komplexe und komplizierte Probleme zu finden und umzusetzen.
Gerne unterstütze ich Sie bei Bedarf dabei Veränderungen und Innovationsprozesse anzustossen und erfolgreich zu etablieren, sowie Teams mit einer passenden Mischung aus Spezialisten und Generalisten aufzustellen und weiterzubilden.
Zurzeit unterstütze ich meine Kunden hauptsächlich in den Themenbereichen Consulting, Software-(entwicklung) und Schulung. Gerne unterstütze ich Sie dabei, sich in Richtung Fullstack-Entwicklung und/oder DevOps-Teams auszurichten.
Zusammenfassung
Ich war in den letzten 10 Jahren hauptsächlich in Projekten der Bereiche Versicherung, Automotive, Industrie, Verwaltung und Bildung involviert. Zu meinen Kunden zählen unter anderem die Capgemini Schweiz AG, die Schweizerische Unfallversicherungsanstalt (Suva) und die CSS Versicherung, die Volkswagen AG, die Siemens AG, die msg systems AG, T-Systems und verschiedene Institutionen, darunter die Staatsbibliothek zu Berlin, das Ostasiatische Institut und verschiedene Landesbehörden und Stadtverwaltungen.
In der Projektarbeit nutzen wir Methoden, Frameworks und Mechanismen der agilen Entwicklung, wie Scrum, LeSS, Continuous Integration, testgetriebene Entwicklung, Mob- und Pair-Programming, in Verbindung mit den Prozess unterstützender Software wie Atlassian JIRA, Confluence und Team City.
Ich verfüge über ein breites Spektrum an Know-how in verschiedenen Programmiersprachen. Meine präferierten Sprachen sind Kotlin, Swift und TypeScript, sowie Java und ECMAScript/JavaScript.
Weiterhin verfüge ich über langjährige Erfahrung in der Projektplanung und ?koordination, sowie der Administration diverser Server- und Clouddienste, wie zum Beispiel Microsoft Azure.
Ich beherrsche den Umgang mit den gängigsten Datenbanken. Kenntnisse über Java EE und den Einsatz verschiedener Frameworks und Libraries, wie beispielsweise MicroProfile, vue.js und Angular runden mein Profil ab.
Standards:
Microsoft Azure Cloud Computing Services
Java Enterprise Edition, Java EE, JEE
Kotlin, Spring Framework, MicroProfile, Quarkus
Mircosoft Azure Cloud, Mircosoft Azure DevOps, Kubernetes, Knative
HTML, XHTML, CSS, W3C
JPA, JTA, JSF, JAAS, JSP, EJB, CDI
Restful Services (REST), GraphQL, SOAP, XML-RPC, JSON
Unified Modeling Language, UML
Produkte / Sonstiges:
Azure Functions
Azure Event Grid
Azure Service Bus
Azure Resource Manager
Azure Resource Manager templates
Bicep
Java Enterprise Edition
Hibernate, EclipseLink
PrettyFaces, Primefaces
Angular, React.js, Vue.js
Maven, JUnit, HtmlUnit, Selenium, Mocking, Hudson, Sonar
Apache WebServer
Application Server, IBM WebSphere, Oracle Glassfish, JBoss AS
HP ALM
IDE, IntelliJ IDEA, Eclipse IDE, Netbeans IDE, vim, vi
Git, Subversion, CVS
LDAP, OpenLDAP, Mailserver, Exim, Postfix, Squid, Samba, Dansguardian, Dhcpd, Ntpd, Nfsd, Kerberos, Radius, u.a
Aufgaben / Rollen
IT Business Beratung
Workshops
Full Stack Cloud Entwicklung und Architektur in Azure- und Innovationsthemen
Technologien / Frameworks
.NET 6
Spring Boot
MicroProfile mit Quarkus
Web-Anwendungen
Nach Anforderung, z.B. Vue.js, React, Angular
Soft Skills
Eigenverantwortliches Handeln
Analysieren
Beraten
Umsetzen
Prüfen
Verbessern
Selbst
Introspektion
Gesunde Selbstwirksamkeitserwartung
Eigenverantwortung
Selbstdisziplin
Hohe Auffassungsgabe
Andere
Hilfsbereitschaft
Empathie
Kritikfähigkeit
Sprachkompetenz
Zusammenarbeit
Teamfähigkeit
Flexibilität
Engagement
Sachkompetenz
Entwicklung (allgemein)
Entwicklungsumgebungen
JetBrains IntelliJ IDEA
Microsoft Visual Studio Code (VS Code)
Frameworks
.NET 6 (.NET Core)
Spring Framework (Spring)
Java Platform, Enterprise Edition (JEE)
Container
containerd
Docker
Cloud
Microsoft Azure Cloud Computing Services (Microsoft Azure)
Kubernetes (k8s)
netlify
Azure DevOps Services
Kommunikation
Azure Service Bus
Azure Event Grid
RabbitMQ
Web
HTML5 (HTML)
CSS
Sassy CSS (SCSS, SASS)
{less} (lesscss)
JavaScript (ECMAScript, ES)
Vue.js
Vuetify (Material Design Komponenten-Framework)
Angular
React (reactjs)
TSX (Typed JSX)
Gatsby (gatsbyjs, Static Site Renderer)
Apache Cordova
jQuery
Sencha Ext JS
JSON Web Token (JWT)
Material Design
Node.js® (node)
Java, Scala und JVM (im Detail)
JavaSE
GraalVM
AspectJ
API / Libraries
Apache Commons
Apache Collections
Apache DeltaSpike
Apache Log4J (Log4J)
Apache Lucene
Apache Solr?
Apache POI (Java API for Microsoft Documents)
Aspose Cells
Aspose PDF
Aspose Words
Elasticsearch
Google Guava
Simple Logging Facade for Java (SLF4J)
JavaFX
Swing GUI-Toolkit (Swing)
Java EE / Jakarta EE
Frameworks / API
Java Platform
Enterprise Edition (JEE)
Primefaces
Hibernate
EclipseLink (Eclipse Toplink, Toplink)
Management and Security Technologies
Java Authentication and Authorization Service (JAAS)
Web Application Technologies
Java API for WebSocket
Java API for JSON Processing (JSON-P, JSR 374 Specification)
Java Servlet
Java Server Faces (JSF)
JavaServer Pages (JSP, Jakarta Server Pages)
Expression Language (EL)
Web Services Technologies
Java API for RESTful Web Services (JAX-RS)
Java API for XML Web Services (JAX-WS)
SOAP
Enterprise Application Technologies
Contexts and Dependency Injection (CDI)
Java Bean Validation (JSR 303)
Enterprise JavaBeans (EJB)
Java Persistence API (JPA)
Java Transaction API (JTA)
JavaMail API
Java Message Service (JMS)
(Application) Server
Quarkus (Supersonic Subatomic Java)
IBM WebSphere Application Server (WSA)
Oracle WebLogic Server (WLS)
Glassfish
WildFly Application Server
Apache TomEE (Java EE Web Profile Implementation)
Eclipse MicroProfile
Technologien
OpenAPI
MicroProfile Fault Tolerance
MicroProfile Health
JWT RBAC for MicroProfile
MicroProfile OpenTracing
MicroProfile Service Mesh
Scala
Frameworks
Play Framework
Slick (Functional Relational Mapping for Scala)
Werkzeuge / Tools
Versionsverwaltung / SCM
Git
Atlassian Bitbucket (Bitbucket, Stash)
Liquibase (Database Refactoring)
Testautomatisierung
Jest (JavaScript testing framework)
JUnit
xUnit.net
TestNG (Testing Framework)
Mockito
EasyMock
PowerMock
Hamcrest
DbUnit
H2 Database Engine (H2)
Arquillian
Arquillian ShrinkWrap (ShrinkWrap)
Arquillian Drone
Arquillian Graphene
Selenium
Selenium Grid (Grid)
Karma Test Runner (Karma)
Jasmine Modultest-Bibliothek (Jasmine)
Protractor end-to-end test framework (Protractor)
$httpBackend
Sonar- Qube
SoapUI
Postman
FindBugs?
Lint
Build Tools
Apache Maven (Maven)
Gradle Build Tool
Jenkins (Hudson)
Jenkins Pipeline
TeamCity CI/CD
npm
Gulp (gulpjs, workflow automation and enhancement)
Bower (package manager)
Docker
Yarn - Package Manager
JRebel
Koordination / Support
Atlassian Jira Cloud (Jira)
Atlassian Jira Server (Jira)
Tempo für Jira
Microsoft Project
HP Application Lifecycle Management (HP ALM)
Dokumentation
Adobe Framemaker
Atlassian Confluence (Confluence)
Projektarchitektur
SparxSystems Enterprise Architect (Enterprise Architect)
Microsoft Visio Professional
OmniGraffle
Microsoft Office
Microsoft Word
Microsoft Excel
Microsoft PowerPoint
SAP
SAP CRM (Customer Relationship Management, Kundenbeziehungsmanagement)
SAP ERM (Enterprise Resource Planning, Finanzen, Personalwesen, Fertigung, Logistik, Services, Beschaffung)
SAP CATS
Protokollierung, Monitoring & Reporting
Splunk
Design Pattern & Prinzipien
Architectural pattern
Atomic design
Model view controller (MVC, Modell-Präsentation- Steuerung)
Model view presenter (MVP, Modell-Ansicht-Präsentierer)
Event-driven architecture (Ereignisgesteuerte Architektur)
Serviceoriented architecture (SOA, Diensteorientierte Architektur)
Command query responsibility segregation (CQRS, Kommando-Abfrage-Zuständigkeits-Trennung)
Enterprise architecture (Unternehmensarchitektur)
Publish?subscribe pattern (Veröffentlichen & Abbonieren-Muster)
PRPL pattern (Push (or preload), Render, Pre-cache, Lazy Load)
Analysis pattern
Domain driven design (DDD)
Event sourcing (ES)
Creational design pattern
Singleton pattern
Prototype pattern (Prototyp Muster)
Factory method (Fabrikmethode)
Builder pattern (Erbauer Muster)
Structural Design Pattern
Adapter pattern (Adapter Muster)
Composite pattern (Kompositum Muster)
Decorator pattern (Decorator Muster)
Proxy pattern (Stellvertreter Muster)
Facade pattern (Fassade Muster)
Bridge pattern (Brücke Muster)
Data Access Object (DAO, Datenzugriffsobjekt)
Data Transfer Object (DTO, Datentransferobjekt)
Behavioral Design Pattern
State pattern (Zustands-Muster)
Strategy pattern (policy pattern, Strategie Muster)
Visitor pattern (Besucher Muster)
Memento pattern (Token pattern, Memento Muster)
Observer pattern (Beobachter Muster)
Null object pattern (Nullobjekt Muster)
Circuit breaker pattern (Sicherungsmuster)
Concurrency pattern
Double-checked locking (doppelt überprüfte Sperrung)
Thread pool pattern
Readers?writer lock
SOLID principles
Single responsibility principle (Single-Responsibility-Prinzip, Prinzip der eindeutigen Verantwortlichkeit)
Open?closed principle (OCP, Prinzip der Offen- und Verschlossenheit)
Liskov substitution principle (LSP, Liskovsches Substitutionsprinzip, Ersetzbarkeitsprinzip)
Interfacesegregation principle (ISP, Schnittstellenaufteilungsprinzip)
Dependency inversion principle (DIP, Abhängigkeits-Umkehr-Prinzip)
Distributed computing
Saga Transaction Pattern (Saga distributed transactions)
Throttling pattern (Drossellungs-Muster)
Static content hosting pattern
Sharding Pattern
Range-based sharding pattern
Vertical Sharding Pattern
Hash-based Sharding
Unix-Serveradministration und -konfiguration
Apache HTTP Server
Apache Tomcat® (cluster) (Tomcat)
SonarQube
Jenkins (Hudson)
Squid Cache & Proxy Server (squid)
Postfix (Mail Transfer Agent, MTA)
Exim Internet Mailer (Exim)
Cyrus IMAP
AMaViS (A MAil Virus Scanner)
Clam AntiVirus (ClamAV, clamd)
OpenLDAP (LDAP)
MIT Kerberos-Server
free RADIUS (RADIUS, Remote Authentication Dial-In User Service)
DansGuardian
ProFTPD (Highly configurable GPL-licensed FTP server software)
Apache SpamAssassin
Samba File- & Print Server (smb, cifs)
DHCP daemon (dhcpd)
BIND Nameserver (bind, DNS Server)
Network Time Protocol Deamon (ntpd)
Pluggable Authentication Modules (pam, pamd)
Network File System Deamon (nfs)
iptables
Simple Network Management Protocol Deamon (snmpd)
SNORT (Network Intrusion Detection System, Network Intrusion Prevention System, NIDS, NIPS)
Nagios (The Industry Standard In IT Infrastructure Monitoring, IT Infrastructure Monitoring)
Auszeichnungen: auf Anfrage
Banken
Versicherungen
Automotive
Telekommunikation
Dienstleister
IT Dienstleister
Öffentlicher Dienst
Verwaltung
Bildungsträger
Informationstechnologie
IT Sicherheit
Planung, Implementierung und Betrieb einer Anwendung für Datenaggregation & Kuration mit Microsoft Azure Cloud Computing Services
Planung der Gesamtlösung
Erstellung einer Lösungsarchitektur
Implementierung der Webanwendung mit Vue.js und Azure Functions
Azure Functions für Scraping, Aggregation, Kuration und Versand an Slack-Channel
Azure Cosmos DB für Datenhaltung
Azure Service Bus und Azure Event Grid für ereignisgesteuerte Architektur
Slack App, Slack Block Kit für Nachrichtenversand
Bereitstellung Infrastruktur via Azure Resource Manager und Bicep
Continuous Integration und Continuous Deployment mit Azure DevOps Services
Planung und Umsetzung des Curriculum Vitae / der Résumé-Webseite.
Planung der neuen Résumé-Seite
Erstellung einer Lösungsarchitektur
Recherche und Auswahl der einzusetzenden Technologien
Erstellung der Texte & (Vektor)-Grafiken
Aufbau Continuous Integration
Aufbau Continuous Deployment
Implementierung Webseiten- & PDF-Erzeugung. . .
. . . aus einer gemeinsamen «Single source of truth»
. . . auf Basis aktueller Technologien (Gastby Static Site Renderer, HTML-5)
Rollout und Betrieb
Die CSS Versicherung ist nicht nur eine Krankenkasse, vielmehr eine Versicherung für jede Lebenslage. Wenn es um die Gesundheit geht, vertrauen der CSS rund 1,7 Millionen Menschen. Zum breiten Angebot gehören Kranken-, Unfall- und Sachversicherungen.
In den Jahren 2018 bis 2020 unterstützte ich die CSS Versicherung in verschiedenen Bereichen. Ich förderte die Weiterentwicklung von Mitarbeitern in meinem Stream hin zu noch mehr Exzellenz und Know-how, indem ich Schulungen und Workshops zu Exzellenz- und Innovationsthemen plante und durchführte.
Ausserdem unterstützte ich die Einführung von Mob- und Pairprogrammings und nahm aktiv daran teil, hauptsächlich zu den Themen «Software Craftsmanship» und Softwareexzellenz.
Weiterhin unterstützte ich den Kunden in den Entwicklungsbereichen Front- und Backend-Entwicklung, sowie DevOps, mit dem Ziel den Wechsel in die Welt des Cloud Computing einzuleiten.
Meinen SCRUM-Teams half ich bei der Analyse konkreter Problemstellungen, der Lösungsfindung und der Implementierung unter Einhaltung von Best Practices und stand den Teams und Lead Architekten meines Streams beratend zur Seite.
Durchgeführte Workshops und Schulungen. . .
Softwareentwicklung im Mob «Methodik und Durchführung»
Coding Dojos zu verschiedenen Software Craftsmanship Themen und Exzellenzthemen, wie zum Beispiel testgetriebene Entwicklung (TDD), Clean Code und SOLID-Prinzipien
Einführung in Domain-driven Design (DDD)
Fullstack-Entwicklung unter MacOS
Die Grundlagen der Programmiersprache Kotlin
Programmierung mit «observable streams» und ReactiveX
Hochperformante Microservices mit Quarkus und GraalVM
Einführung in Docker und Kubernetes
Continuous Integration mit Microsoft Azure DevOps Pipelines
Einführung Microsoft Azure Cloud
Frontendentwicklung in Angular, React, Vue.js mit Flow/Redux/NgRx und Immutables
Im Programm RiskPricing wurden die Prozesse zur Prämienbemessung und die Systeme zur Festsetzung der Prämiensätze unter Berücksichtigung von Branche, Risikogemeinschaft, Bonus-Malus und Erfahrungstarifierung neu entwickelt und zudem eine neue Grossschäden- und Rückversicherungslösung umgesetzt.
Es wurde eine Lösung zur Analyse der aktuellen Risikosituation und der finanziellen Lage unter Berücksichtigung von Informationen aus dem Risikoinformationssystem und der adcubum SYRIUS Assekuranzsoftware geschaffen, auf Basis derer die Prämiensituation bewertet und der Abbau der Ausgleichsreserven kalkuliert werden kann.
Unter Einbezug der Bonus-Malus-Modelle und der Erfahrungstarifierung können Simulationen durchgeführt werden, die als Grundlage für die Festsetzung der Prämiensätze in den Sparten Berufsunfall- und Nichtberufsunfallversicherung dienen. Zudem erfolgt die Kalkulation und Erstellung der Grundlagenblätter, sowie die Erzeugung der Rohdaten für den Digitaldruck im Kontext der Kundenkommunikation in dem neu geschaffenen System.
Unterstützung des Scrum Masters und des Lösungsarchitekten bei der Grobschätzung der Projektaufwände, sowie der Identifizierung möglicher Projektrisiken.
Beratung der Projektleiter und des Project Owners, bezüglich der möglichen
Umsetzungsvarianten der jeweiligen Anforderungen aus den Fachkonzepten.
Datenmodellierung für den Anwendungsteil der Grundlagenblattberechnung.
Design und Implementierung des Prototyps als Proof of Concept, sowie massgeblicher Teile der Anwendung, insbesondere die wiederverwendbaren Komponenten, sowohl im Frontend als auch im Backend.
Schulung von Teammitgliedern zu Java SE8 (insbesondere der neuen Streaming-API und den Lambda Expressions), Java Enterprise Edition 7 und im Einsatz moderner Webtechnologien (insbesondere TypeScript und Angular). Vermittlung von Wissen über die Anwendung moderner Toolchains, insbesondere zur Realisierung testgetriebener Entwicklung (im Einzelnen die Implementierung und Ausführung von Modul-, Integrations- und e2e-Tests), sowie über Continuous Development und Delivery.
Im Programm iComm Konnex wurden diverse Projekte unter Zuhilfenahme des neu entwickelten suvainternen Frameworks RESTretto umgesetzt.
Primär Full Stack Entwicklung mit Java EE und Angular, u.a. . .
Baumusterprüfbescheinigungen (Administrations- und Webanwendung)
Grenzwerte am Arbeitsplatz (Administrations- und Webanwendung)
Kontakte und Adressen / Agenturensuche (Webanwendung)
weitere Details auf Anfrage
Systemlösung für die Schulen der Stadt Chemnitz zur Unterstützung des fachübergreifenden Einsatzes Neuer Medien (Sys-C). Im Projekt Sys-C wurde eine Systemlösung für die Schulen der Stadt Chemnitz, zur Unterstützung des fachübergreifenden Einsatzes Neuer Medien entwickelt. Das Projekt wurde durch das Bundesministerium für Bildung und Forschung und den Europäischen Sozialfonds gefördert. Als Projektträger ist das Deutsche Zentrum für Luft und Raumfahrt (DLR), genauer der Projektträger Neue Medien in der Bildung (PT-DLR, Project Management Agency ? part of the German Aerospace Center) eingesetzt. Es wurde eine einheitliche Systemsoftware zur schulischen Nutzung im Unterricht für zirka 85 Schulen entwickelt.
Verwaltung von Nutzern, Klassen, Kursen und Projekten, Computerräumen und Computern, sowie Druckern über eine grafische Administrationsoberfläche.
Nutzerverwaltung inklusive Massenimport, automatischer Versetzung von Schülern und Unterstützung verschiedener anpassbarer Benutzerrollen.
Automatische Generierung von Initialpasswörtern oder Nutzung von Standardpasswörtern.
Automatische Integration von Arbeitsplatzcomputern.
Dateiserver für Microsoft Windows, Linux und Mac OS X Arbeitsplatzrechner.
DHCP- und DNS-Server inklusive automatischer Konfiguration ohne Benutzereingriff.
Unterstützung von Windows Arbeitplatzstationen im Domänen- und Workgroupmodus.
Unterstützung von Mac OS X und Linux Clients.
Personen-, klassen- und kursbezogene Dateiquota, sowie Mailquota.
E-Mail Server inklusive webbasierter Groupwareanwendung mit Adressbuch, Kalender und Erinnerungsfunktion.
Raum- und nutzerbasierte Internetzugangskontrolle inklusive Kinder- und Jugendschutzfilter.
Virenscanner für den Dateiserver, den E-Mail-Server, sowie den Internetzugang (http und ftp).
Verteilen und Einsammeln von Klassen- und Projektarbeiten (Klassenarbeitsfunktion).
Druckerverwaltung inklusive Druckaccountinglösung für Netzwerkdrucker und über Arbeitsplätze freigegebene Drucker.
CD-ROM Archiv.
Datenbank-, Zeit- und Webserver.
Vollautomatische Updatefunktion, die die Server ohne Nutzereingriff auf dem neuesten Stand hält.
Unterstützung diverser Voreinstellungen, wie zum Beispiel zur automatischen Erstellung von Initialpasswörtern oder das Setzen von Benutzerquota.
Stapelverarbeitungsfunktionen (z.B. Quota für eine bestimmte Benutzerauswahl neu setzen).
Didaktische Bildschirmsteuerlösung.
Überwachung einzelner Arbeitsplatzstationen.
Überwachung aller Arbeitsplatzstationen einer Computergruppe.
Ausgabe des Lehrerbildschirms an eine einzelne Arbeitsplatzstation.
Ausgabe des Lehrerbildschirms an alle Arbeitsplatzstationen einer Computergruppe.
Sperrung von Maus und Tastatur einer Arbeitsplatzstation.
Sperrung von Maus und Tastatur einer Gruppe von Arbeitsplatzstationen.
Serverbasierte Clientinventarisierung.
Automatische Softwareverteilung für Windows, Max OS X und Linux.
Unterstützung im Vorfeld der Produktionseinführung eines IT-Systems für einen weltweit führenden Anbieter von Lösungen für Zutrittskontrollen und Schliesssystemen der Sicherheitsindustrie, das die Kernsysteme der Ländergesellschaften schrittweise ersetzen und konsolidieren wird.
Konzeption, Erstellung, Integration und Dokumentation neuer Kern-Komponenten für die Clientanwendung.
Optimierung der projekteigenen Tabellenkomponente: Sortierung und Filterung, sowie deutliche Steigerung der Performance bei sehr großen Datenmengen.
Fehlerbehebung und Optimierung bestehender Client Kern-Komponenten.
Beratung in Implementierungs- und Performancefragen.
Dokumentation und Best Practices
Architektur und Lead-Entwicklung eines Applikations-Frameworks für die Client-Plattform auf Basis von Java 8 und JavaFX 8.
Konzeption, Erstellung und Dokumentation eines JavaFX-Applikations-Frameworks, welches die Benutzeroberfläche nach dem MVC-Prinzip realisiert.
Wahlweise konfigurative oder auch programmatische Erzeugung von Dashboards, Favoritensteuerung, Breadcrumbs, Ribbonpanes und Suchfunktion aus einer Gruppen- und Modulkonfiguration heraus.
Lokalisierung und Internationalisierung, Validierung, sowie die Visualisierung und Abhandlung von ausstehenden Änderungen.
Multistage-Unterstützung, das heißt die Unterstützung einer beliebigen Anzahl von Fenstern, sowie Drag und Drop zwischen diesen Fenstern.
Zentrales exception handling wird durch die Anzeige entsprechender Meldungsdialoge realisiert. Es wird sowohl die Anzeige von fachlichen Meldungen, als auch die Anzeige von Fehlerdialogen für die Behandlung nicht erwarteter Probleme, inklusive der Option des Mailversands unterstützt.
Life-Cycle-Management, welches sich um das Starten und Stoppen von Anwendungsfällen (auch Usecases/Module) kümmert und grundlegende Funktionen für das Laden und Speichern von Daten zur Verfügung stellt.
Messagebus für die gezielte Kommunikation zwischen Framework und Usecase-Controllern, sowie der Usecase-Controllern untereinander.
Der Fokus beim Entwurf und der Entwicklung lag neben der Erstellung einer modernen und intuitiv nutzbaren Oberfläche, auf der Erstellung eines Frameworks, das die einfache Implementierung von Anwendungsfällen unter Vermeidung von Coderedundanzen ermöglicht.
Architektur und Umsetzung einer Basis-Library, sowie der Client-Plattform (Fat Client) für die Anlaufplanung der Produktion neuer Fahrzeugmodelle für einen großen deutschen Automobilhersteller. Architektur Client, sowie Lead-Entwicklung Client und Mitentwicklung Middleware und Backend.
Swing-Client, welcher die Benutzeroberfläche nach dem MVC-Prinzip realisiert.
Kommunikation mit der Middleware via Hessian Binary Web Service Protocol mit Spring.
Fokus auf Client-Architektur, Performanceoptimierung und code cleaning
Weiterentwicklung, Bugfixing, Refactoring und architekturelle Neuausrichtung einer Plattform für die Planung und Bewertung, sowie die Kalkulation und das Controlling von Innovationsprojekten im Automotive-Bereich (primär CO2- und Gewichtsreduktion) eines großen deutschen Automobilherstellers.
Fokus auf Architektur, Performanceoptimierung und code cleaning der Bestandsanwendung.
Umsetzung neuer Features in einem Swing-Fat-Client, welcher die Benutzeroberfläche nach dem MVC-Prinzip realisiert.
Erstellung einer sehr grossen hochperformanten Tabellenkomponete die komplexe Berechnungen durchführt und die Filterung und Aggregation von Daten ermöglicht.
Einsatz von User Interface Controllern und Use Case Controllern.
Kommunikation mit der Middleware via Command-Channel über das Hessian Binary Web Service Protocol.
Einsatz von UML, Business Objects, Value Objects, Value Object Assembler, Data Transfer Objects, Data Access Objects, Mementos
Im Rahmen einer Umstellung der Webdienste der Staatsbibliothek zu Berlin auf eine Hochverfügbarkeitslösung wurden diverse Dienste geplant, installiert, konfiguriert und gewartet.
Mehrfach redundates Webserversystem, basierend auf Debian GNU/Linux-Systemen, in Kombination mit Apachewebservern und einer HA-Clustersoftware. Es kamen sowohl redundante Serverkomponenten, als auch Datenspeicher zum Einsatz. Aufsatz diverser Absicherungswerkzeuge für den Einsatz der Systeme als Bastionhosts. Nutzung: > 1,5 Millionen Zugriffe / Monat.
Entwicklung und Support verschiedener webgestützter Lösungen für die Stiftung Preußischer Kulturbesitz, die Staatsbibliothek zu Berlin und die Staatlichen Museen zu Berlin.
Webfrontendserver für das Buchbestellsystem der Staatsbibliothek zu Berlin auf Basis von Linux. Erweiterung auf SCO-Kompatibilität. Aufsatz diverser Absicherungswerkzeuge für den Einsatz als Bastionhost.
Einrichtung eines neuen E-Mail-Servers auf Basis von Postfix, Migration von ca. 1000 Nutzern.
Webanwendung für den zentralen Zugriff auf Inhalte verschiedener weltweit verteilter Datenbanken ostasiatischer Handschriften
Entwicklung eines Lizenz-Managers als webgestützte Java EE6 Anwendung mit integrierter SOAPSchnittstelle, die es ermöglicht Software und Kunden in Bezug auf die Verwaltung von Softwarelizenzen zu administrieren. Es handelt sich um eine klassische Verwaltungsanwendung, die weitestgehend auf Eingabemasken setzt. Über das Produkt werden zurzeit zirka 150 Server an 120 Standorten mit ungefähr 60.000 angebundenen Clients (Arbeitsplatz-PCs) verwaltet.
Dynamische Verwaltungsoberfläche (Ajax, Primefaces, Prettyfaces)
Verwaltung von Kunden, Standorten und Kontakten
Verwaltung von Software
Vergabe von Lizenzschlüssel
Signierung und Verschlüsselung
PDF-Erstellung
Kommunikation mit zu installierender Software via SOAP-Schnittstelle
Java-, PHP- und Python-Client
Erstellung und Umsetzung Backupkonzept für die Stiftung Preußischer Kulturbesitz
Es wurde eine Backupstrategie für die Stiftung Preußischer Kulturbesitz erarbeitet, welche eine schnelle Wiederherstellung der Unix- und Linux-Serversysteme, sowie verschiedener Datenspeicher und Datenbanken nach Systemausfällen sicherstellt. Gesichert werden Server zweier Standorte, sowie deren Konfigurationen und Systemzustände. Unterstützt wird gezielte Wiederherstellung von Datenbeständen, sowie das Disaster Recovery
Planung und Umsetzung des Backupkonzeptes.
Planung und Umsetzung der Desaster Recovery Strategy
Umsetzung der Neuanbindung des Bezirksamtes Spandau von Berlin an das Berliner Landesnetz
Mehrstufiges Firwallsystem auf Basis von Linux und BSD
Intrusion-Detection-System [IDS]
Intrusion-Prevention-System [IPS]
Mail-Relay-Server inklusive Anitvirus-Software
DNS-Server und Webserver
HTTP- und FTP-Proxy-Server
E-Mail-Server (imap, pop3)
Systemweite Absicherung durch diverse Sicherheitswerkzeuge
gehärtete Administrationsworkstation
Die Printium AG war ein auf den Handel und die Abwicklung von Druckaufträgen über das Internet spezialisiertes Unternehmen. In meiner Rolle als Leiter der Abteilung für Frontend-Entwicklung, war ich primär für die Koordination der Entwickler und architekturelle Themen zuständig.
Teamkoordination
Architektur und Mitentwicklung einer browserunabhängigen JavaScript Library
Architektur und Mitentwicklung Frontend CMS
Architektur und Mitentwicklung Frontend E-Procurement und Druckabwicklung
Entwicklung eines elektronischen Bestellsystems für den Landesbetrieb für Datenverarbeitung und IT-Serviceaufgaben (LDS), heute Brandenburgischer IT-Dienstleister (ZIT-BB). Das neue Beschaffungsverfahren leistet einen wichtigen Beitrag zur Modernisierung der Brandenburgischen Verwaltung. Allen Behörden steht dieses flexible und praktische Instrument zur Bedarfsdeckung im IT-Bereich zur Verfügung. InSecMa setzte die Planung und Erstellung einer webbasierten Anwendung um, über die die verschiedenen Fachbereiche der Verwaltungen Bestellungen über das Intranet vornehmen können.
Planung und Entwicklung der Bestellsystems
Joker Software war ein in Hamburg ansässiges Unternehmen der Werbebranche, spezialisiert auf Digitale Medien.
Interaktiver Internetauftritt ?Simon the Sorcerer? für Hasbro Interactive unter Einsatz von Flash und PHP
Online-Geschäftsbericht im Internet für Lufthansa Technik
Diverse interaktive Webseiten in Zusammenarbeit mit Heye & Partner Salesforce, Hamburg
Regelmäßige Fortbildungen sind das Fundament einer tiefgehenden Expertise. Daher bilde ich mich permanent weiter und nutze hierfür primär die Möglichkeiten des World Wide Web. Eine Aufführung der letzten Weiterbildungen im klassischen Sinne finden Sie in der folgenden Aufzählung:
2022
Zertifiziertes iSAQB-Modul «Advanced Level CLOUDINFRA»
Infrastruktur, Container und Cloud Native** (geplant)
2021
Apache Kafka Kurs
4929: Confluent Training «Apache Kafka Fundamentals»
Confluent
Microsoft Azure Zertifizierung
AZ-900: Microsoft Certified Azure Fundamentals
Microsoft, Pearson VUE
2020
Kubernetes-Zertifizierung
LFS158x: Introduction to Kubernetes
The Linux Foundation, edX
DevOps Kubernetes Camp
Viertägiges Intensivtraining über Kubernetes und Knative
Software & Support Media GmbH
2019
Konfliktmanagement und konstruktive Konfliktlösungen
oose Innovative Informatik eG
Kommunikation & Moderationstechniken in der IT
oose Innovative Informatik eG
Zertifiziertes iSAQB-Modul «Advanced Level DDD»
Domain Driven Design im Software Architecture Camp
Software & Support Media GmbH
Zertifiziertes LeSS Basic Training
Valtech GmbH
2018
w-jax
Software & Support Media GmbH
Schwerpunkte:
Trust and Confidence through Chaos
Microservices vs. Monolithen: Der definitive Shoot-out
Die Best Practices der Data Scientists
The Future of Streaming: Global Apps, Event Stores and Serverless
Argumente für den Einsatz von DevOps, InnerSource und modernen Entwicklungswerkzeugen beim eigenen Management
Kubernetes Patterns
Java EE/MicroProfile
Wie moderne SQL-Datenbanken auf Algorithmen kommen, von denen du nie geträumt hättest
9 Fallen auf dem Weg zum Business Value
Eine Einführung in Deep Learning
JUnit 5: More than just a Testing Framework for Java
Von Service-orientierten Architekturen (SOA) zu DDD und Microservices
Azure Cloud Services für Java-Entwickler
Microservices-Umgebung und Sidecars
Progressive Web Apps mit der Service Worker API
Angular-Workshop: Architektur und Konzepte für moderne webbasierte Geschäftsanwendungen
Jax Agile Day
Software & Support Media GmbH
Schwerpunkte:
Improv-driven Agility (IDA) ? Agilität trainieren mit Improtheater 2.0
Nachhaltige Teamentwicklung - die Spreu vom Weizen trennen
We are agile!? ? Wie wir sicherstellen, dass Teams agil arbeiten können
Qualität und Team mit Codereviews
Wie stelle ich sinnvoll (agile) Softwareentwickler ein?
Agile - Was kostet der Spaß?
JavaScript- & AngularDays
Software & Support Media GmbH
Schwerpunkte:
Das JavaScript-Upgrade für 2018 für Webentwickler
Navigationsstrukturen mit dem Angular Router: Deep Dive
Reactive Forms in Angular
WebAssembly: Single Page Applications (SPAs) ohne JavaScript?
Hochperformante Single Page Applications mit Angular
Struktur für Ihre großen Angular-Anwendungen: Pakete, Monorepos und Microfrontends
Cross-Plattform-Entwicklung mit Electron, Cordova und Angular
Reactive Programming mit RxJS
Coach & Trainer
IT Business Consultant
Software-Architekt & (Technischer) Projektleiter
Software Entwickler
Microsoft Azure
Microsoft Cloud Adoption Framework für Azure
Azure Enterprise Integration Platform as a Service (iPAAS)
Identity and access management (IAM)
Microsoft identity platform
Microsoft Entra (Secure access for a connected world)
Azure Active Directory (Azure AD)
Azure Active Directory B2C (Azure AD B2C)
Microsoft Authentication Library (MSAL)
Azure API Management
Azure App Service (Apps)
Azure Web Apps
Azure Static Web Apps
Azure Function Apps
Azure Durable Function Apps
Azure Container Apps
Container
Azure Container Instances (ACI)
Azure Container Registry (ACR, Docker registry service)
Integration
Azure Event Grid
Azure Service Bus
Microsoft Graph
Data
Azure SQL Database
Azure Cosmos DB
Azure Storage account
Azure Monitor
Log Analytics workspace
Application Insights
Azure DevOps Services
Azure Pipelines (Build, test and deploy with CI/CD)
Azure Repos (cloud-hosted private Git repositories)
Azure Artifacts
Infrastructure as code
Azure Resource Manager (ARM)
Azure Resource Manager templates (ARM templates)
Bicep
Terraform (infrastructure as code software, IAC)
Konfiguration
Azure App Configuration (Schneller, skalierbarer Parameterspeicher zur App-Konfiguration)
Azure Key Vault
Profil:
Ich verfüge über zirka 22 Jahre Berufserfahrung im IT-Bereich, sowohl als Consultant, Trainer/Moderator, IT-Architekt und Software-Entwickler, als auch in Projektleitungsfunktion mit und ohne Personalverantwortung.
Ich sehe mich eher als Generalist und Unterstützer, denn als Spezialist. Durch mein breites Wissen kann ich helfen Lösungen für komplexe und komplizierte Probleme zu finden und umzusetzen.
Gerne unterstütze ich Sie bei Bedarf dabei Veränderungen und Innovationsprozesse anzustossen und erfolgreich zu etablieren, sowie Teams mit einer passenden Mischung aus Spezialisten und Generalisten aufzustellen und weiterzubilden.
Zurzeit unterstütze ich meine Kunden hauptsächlich in den Themenbereichen Consulting, Software-(entwicklung) und Schulung. Gerne unterstütze ich Sie dabei, sich in Richtung Fullstack-Entwicklung und/oder DevOps-Teams auszurichten.
Zusammenfassung
Ich war in den letzten 10 Jahren hauptsächlich in Projekten der Bereiche Versicherung, Automotive, Industrie, Verwaltung und Bildung involviert. Zu meinen Kunden zählen unter anderem die Capgemini Schweiz AG, die Schweizerische Unfallversicherungsanstalt (Suva) und die CSS Versicherung, die Volkswagen AG, die Siemens AG, die msg systems AG, T-Systems und verschiedene Institutionen, darunter die Staatsbibliothek zu Berlin, das Ostasiatische Institut und verschiedene Landesbehörden und Stadtverwaltungen.
In der Projektarbeit nutzen wir Methoden, Frameworks und Mechanismen der agilen Entwicklung, wie Scrum, LeSS, Continuous Integration, testgetriebene Entwicklung, Mob- und Pair-Programming, in Verbindung mit den Prozess unterstützender Software wie Atlassian JIRA, Confluence und Team City.
Ich verfüge über ein breites Spektrum an Know-how in verschiedenen Programmiersprachen. Meine präferierten Sprachen sind Kotlin, Swift und TypeScript, sowie Java und ECMAScript/JavaScript.
Weiterhin verfüge ich über langjährige Erfahrung in der Projektplanung und ?koordination, sowie der Administration diverser Server- und Clouddienste, wie zum Beispiel Microsoft Azure.
Ich beherrsche den Umgang mit den gängigsten Datenbanken. Kenntnisse über Java EE und den Einsatz verschiedener Frameworks und Libraries, wie beispielsweise MicroProfile, vue.js und Angular runden mein Profil ab.
Standards:
Microsoft Azure Cloud Computing Services
Java Enterprise Edition, Java EE, JEE
Kotlin, Spring Framework, MicroProfile, Quarkus
Mircosoft Azure Cloud, Mircosoft Azure DevOps, Kubernetes, Knative
HTML, XHTML, CSS, W3C
JPA, JTA, JSF, JAAS, JSP, EJB, CDI
Restful Services (REST), GraphQL, SOAP, XML-RPC, JSON
Unified Modeling Language, UML
Produkte / Sonstiges:
Azure Functions
Azure Event Grid
Azure Service Bus
Azure Resource Manager
Azure Resource Manager templates
Bicep
Java Enterprise Edition
Hibernate, EclipseLink
PrettyFaces, Primefaces
Angular, React.js, Vue.js
Maven, JUnit, HtmlUnit, Selenium, Mocking, Hudson, Sonar
Apache WebServer
Application Server, IBM WebSphere, Oracle Glassfish, JBoss AS
HP ALM
IDE, IntelliJ IDEA, Eclipse IDE, Netbeans IDE, vim, vi
Git, Subversion, CVS
LDAP, OpenLDAP, Mailserver, Exim, Postfix, Squid, Samba, Dansguardian, Dhcpd, Ntpd, Nfsd, Kerberos, Radius, u.a
Aufgaben / Rollen
IT Business Beratung
Workshops
Full Stack Cloud Entwicklung und Architektur in Azure- und Innovationsthemen
Technologien / Frameworks
.NET 6
Spring Boot
MicroProfile mit Quarkus
Web-Anwendungen
Nach Anforderung, z.B. Vue.js, React, Angular
Soft Skills
Eigenverantwortliches Handeln
Analysieren
Beraten
Umsetzen
Prüfen
Verbessern
Selbst
Introspektion
Gesunde Selbstwirksamkeitserwartung
Eigenverantwortung
Selbstdisziplin
Hohe Auffassungsgabe
Andere
Hilfsbereitschaft
Empathie
Kritikfähigkeit
Sprachkompetenz
Zusammenarbeit
Teamfähigkeit
Flexibilität
Engagement
Sachkompetenz
Entwicklung (allgemein)
Entwicklungsumgebungen
JetBrains IntelliJ IDEA
Microsoft Visual Studio Code (VS Code)
Frameworks
.NET 6 (.NET Core)
Spring Framework (Spring)
Java Platform, Enterprise Edition (JEE)
Container
containerd
Docker
Cloud
Microsoft Azure Cloud Computing Services (Microsoft Azure)
Kubernetes (k8s)
netlify
Azure DevOps Services
Kommunikation
Azure Service Bus
Azure Event Grid
RabbitMQ
Web
HTML5 (HTML)
CSS
Sassy CSS (SCSS, SASS)
{less} (lesscss)
JavaScript (ECMAScript, ES)
Vue.js
Vuetify (Material Design Komponenten-Framework)
Angular
React (reactjs)
TSX (Typed JSX)
Gatsby (gatsbyjs, Static Site Renderer)
Apache Cordova
jQuery
Sencha Ext JS
JSON Web Token (JWT)
Material Design
Node.js® (node)
Java, Scala und JVM (im Detail)
JavaSE
GraalVM
AspectJ
API / Libraries
Apache Commons
Apache Collections
Apache DeltaSpike
Apache Log4J (Log4J)
Apache Lucene
Apache Solr?
Apache POI (Java API for Microsoft Documents)
Aspose Cells
Aspose PDF
Aspose Words
Elasticsearch
Google Guava
Simple Logging Facade for Java (SLF4J)
JavaFX
Swing GUI-Toolkit (Swing)
Java EE / Jakarta EE
Frameworks / API
Java Platform
Enterprise Edition (JEE)
Primefaces
Hibernate
EclipseLink (Eclipse Toplink, Toplink)
Management and Security Technologies
Java Authentication and Authorization Service (JAAS)
Web Application Technologies
Java API for WebSocket
Java API for JSON Processing (JSON-P, JSR 374 Specification)
Java Servlet
Java Server Faces (JSF)
JavaServer Pages (JSP, Jakarta Server Pages)
Expression Language (EL)
Web Services Technologies
Java API for RESTful Web Services (JAX-RS)
Java API for XML Web Services (JAX-WS)
SOAP
Enterprise Application Technologies
Contexts and Dependency Injection (CDI)
Java Bean Validation (JSR 303)
Enterprise JavaBeans (EJB)
Java Persistence API (JPA)
Java Transaction API (JTA)
JavaMail API
Java Message Service (JMS)
(Application) Server
Quarkus (Supersonic Subatomic Java)
IBM WebSphere Application Server (WSA)
Oracle WebLogic Server (WLS)
Glassfish
WildFly Application Server
Apache TomEE (Java EE Web Profile Implementation)
Eclipse MicroProfile
Technologien
OpenAPI
MicroProfile Fault Tolerance
MicroProfile Health
JWT RBAC for MicroProfile
MicroProfile OpenTracing
MicroProfile Service Mesh
Scala
Frameworks
Play Framework
Slick (Functional Relational Mapping for Scala)
Werkzeuge / Tools
Versionsverwaltung / SCM
Git
Atlassian Bitbucket (Bitbucket, Stash)
Liquibase (Database Refactoring)
Testautomatisierung
Jest (JavaScript testing framework)
JUnit
xUnit.net
TestNG (Testing Framework)
Mockito
EasyMock
PowerMock
Hamcrest
DbUnit
H2 Database Engine (H2)
Arquillian
Arquillian ShrinkWrap (ShrinkWrap)
Arquillian Drone
Arquillian Graphene
Selenium
Selenium Grid (Grid)
Karma Test Runner (Karma)
Jasmine Modultest-Bibliothek (Jasmine)
Protractor end-to-end test framework (Protractor)
$httpBackend
Sonar- Qube
SoapUI
Postman
FindBugs?
Lint
Build Tools
Apache Maven (Maven)
Gradle Build Tool
Jenkins (Hudson)
Jenkins Pipeline
TeamCity CI/CD
npm
Gulp (gulpjs, workflow automation and enhancement)
Bower (package manager)
Docker
Yarn - Package Manager
JRebel
Koordination / Support
Atlassian Jira Cloud (Jira)
Atlassian Jira Server (Jira)
Tempo für Jira
Microsoft Project
HP Application Lifecycle Management (HP ALM)
Dokumentation
Adobe Framemaker
Atlassian Confluence (Confluence)
Projektarchitektur
SparxSystems Enterprise Architect (Enterprise Architect)
Microsoft Visio Professional
OmniGraffle
Microsoft Office
Microsoft Word
Microsoft Excel
Microsoft PowerPoint
SAP
SAP CRM (Customer Relationship Management, Kundenbeziehungsmanagement)
SAP ERM (Enterprise Resource Planning, Finanzen, Personalwesen, Fertigung, Logistik, Services, Beschaffung)
SAP CATS
Protokollierung, Monitoring & Reporting
Splunk
Design Pattern & Prinzipien
Architectural pattern
Atomic design
Model view controller (MVC, Modell-Präsentation- Steuerung)
Model view presenter (MVP, Modell-Ansicht-Präsentierer)
Event-driven architecture (Ereignisgesteuerte Architektur)
Serviceoriented architecture (SOA, Diensteorientierte Architektur)
Command query responsibility segregation (CQRS, Kommando-Abfrage-Zuständigkeits-Trennung)
Enterprise architecture (Unternehmensarchitektur)
Publish?subscribe pattern (Veröffentlichen & Abbonieren-Muster)
PRPL pattern (Push (or preload), Render, Pre-cache, Lazy Load)
Analysis pattern
Domain driven design (DDD)
Event sourcing (ES)
Creational design pattern
Singleton pattern
Prototype pattern (Prototyp Muster)
Factory method (Fabrikmethode)
Builder pattern (Erbauer Muster)
Structural Design Pattern
Adapter pattern (Adapter Muster)
Composite pattern (Kompositum Muster)
Decorator pattern (Decorator Muster)
Proxy pattern (Stellvertreter Muster)
Facade pattern (Fassade Muster)
Bridge pattern (Brücke Muster)
Data Access Object (DAO, Datenzugriffsobjekt)
Data Transfer Object (DTO, Datentransferobjekt)
Behavioral Design Pattern
State pattern (Zustands-Muster)
Strategy pattern (policy pattern, Strategie Muster)
Visitor pattern (Besucher Muster)
Memento pattern (Token pattern, Memento Muster)
Observer pattern (Beobachter Muster)
Null object pattern (Nullobjekt Muster)
Circuit breaker pattern (Sicherungsmuster)
Concurrency pattern
Double-checked locking (doppelt überprüfte Sperrung)
Thread pool pattern
Readers?writer lock
SOLID principles
Single responsibility principle (Single-Responsibility-Prinzip, Prinzip der eindeutigen Verantwortlichkeit)
Open?closed principle (OCP, Prinzip der Offen- und Verschlossenheit)
Liskov substitution principle (LSP, Liskovsches Substitutionsprinzip, Ersetzbarkeitsprinzip)
Interfacesegregation principle (ISP, Schnittstellenaufteilungsprinzip)
Dependency inversion principle (DIP, Abhängigkeits-Umkehr-Prinzip)
Distributed computing
Saga Transaction Pattern (Saga distributed transactions)
Throttling pattern (Drossellungs-Muster)
Static content hosting pattern
Sharding Pattern
Range-based sharding pattern
Vertical Sharding Pattern
Hash-based Sharding
Unix-Serveradministration und -konfiguration
Apache HTTP Server
Apache Tomcat® (cluster) (Tomcat)
SonarQube
Jenkins (Hudson)
Squid Cache & Proxy Server (squid)
Postfix (Mail Transfer Agent, MTA)
Exim Internet Mailer (Exim)
Cyrus IMAP
AMaViS (A MAil Virus Scanner)
Clam AntiVirus (ClamAV, clamd)
OpenLDAP (LDAP)
MIT Kerberos-Server
free RADIUS (RADIUS, Remote Authentication Dial-In User Service)
DansGuardian
ProFTPD (Highly configurable GPL-licensed FTP server software)
Apache SpamAssassin
Samba File- & Print Server (smb, cifs)
DHCP daemon (dhcpd)
BIND Nameserver (bind, DNS Server)
Network Time Protocol Deamon (ntpd)
Pluggable Authentication Modules (pam, pamd)
Network File System Deamon (nfs)
iptables
Simple Network Management Protocol Deamon (snmpd)
SNORT (Network Intrusion Detection System, Network Intrusion Prevention System, NIDS, NIPS)
Nagios (The Industry Standard In IT Infrastructure Monitoring, IT Infrastructure Monitoring)
Auszeichnungen: auf Anfrage
Banken
Versicherungen
Automotive
Telekommunikation
Dienstleister
IT Dienstleister
Öffentlicher Dienst
Verwaltung
Bildungsträger
Informationstechnologie
IT Sicherheit