26.10.2026 aktualisiert


Fullstack-Entwickler, Schwerpunkt Frontend | React, TypeScript, Java, Spring Boot | Fachanwendungen
Über mich
Seit 2016 in der Softwareentwicklung, seit 2021 im Contracting. Mein Schwerpunkt sind Fachanwendungen, in denen das Frontend die eigentliche Arbeit trägt: viele gleichzeitige Nutzer, komplexe Erfassungsmasken, Berechtigungen bis auf Feldebene. Backend mache ich mit, wenn es das Projekt braucht.
Skills
Frontend-Entwicklung mit React und TypeScript
Mein Schwerpunkt als Fullstack-Entwickler ist die Frontend-Entwicklung mit React, TypeScript, JavaScript (ES6+), TanStack, Vite, Tailwind CSS, HTML5, CSS3 und Sass. Ich baue Erfassungsmasken für 20 bis 30 gleichzeitige Nutzer, responsive Layouts und wiederverwendbare Komponentenbibliotheken für Fachanwendungen, in denen das Frontend die eigentliche Arbeit trägt.
Frontend-Architektur und Komponentendesign
Konzeption wiederverwendbarer Bausteine, Code-Konventionen sowie Zustands- und Datenflussarchitektur in React und TypeScript. Generische Tabellenkomponenten mit konfigurierbaren Spalten, Spaltenfiltern und Zeilenaktionen, dazu CRUD-Factories für entitätsbezogene APIs mit zentralem Notification-Provider. Eine gemeinsame Basis, auf der ein Team seine Views aufbaut, statt acht Kopien derselben Seite.
Backend-Entwicklung mit Java und Spring Boot
Java 11/17/21, Spring Boot, JEE, Hibernate, Microservices, REST, GraphQL, Kafka, RabbitMQ und JAXB/XML. Als Fullstack-Entwickler ziehe ich eine Fachanwendung im Zweifel allein durch: Datenmodell, Services, Schnittstellen, Berechtigungen und Deployment.
Ablösung und Modernisierung von Altanwendungen
Modulweise Migration gewachsener JEE-Anwendungen mit JSF von JBoss auf Spring Boot 3, im laufenden Betrieb und ohne Änderung des Funktionsumfangs: gleiche URL, gleiche Masken, gleiches Verhalten für den Anwender. Dazu der Neubau eines Nachfolgesystems für eine abgekündigte Fachanwendung, ohne Übergabe vom Vorgängeranbieter und gegen einen festen Termin.
Sicherheit und Berechtigungen mit Keycloak
Feingranulare Berechtigungsmodelle über Policies, Rollen, Permissions, Resources und Scopes, im React-Frontend bis auf Feldebene durchgesetzt. Produktiv im Einsatz in einer Zollanwendung an 18 Standorten in vier Ländern.
Datenbanken und Datenmodellierung
PostgreSQL, DB2, MySQL und Liquibase. Entwurf von Datenmodellen, die über Jahre sauber bleiben, sowie automatisierte Datenbankmigrationen in laufenden Projekten.
Testautomatisierung und Qualitätssicherung
Cypress, Cucumber, Selenium und JUnit für E2E-, Unit- und Integrationstests. Testgetriebene Entwicklung und Absicherung über den gesamten Stack, vom React-Frontend bis zum Spring-Boot-Service.
DevOps und Delivery
Docker, Kubernetes, Jenkins, GitLab CI und GitHub Actions. Umstellung von Deployment-Pipelines auf GitLab CI, Betreuung der Projektinfrastruktur, Weiterbildung in Kubernetes und GitOps mit ArgoCD.
Methoden und Zusammenarbeit
Scrum, Kanban, Pair Programming, Domain-Driven Design und CI/CD. Schnitt von Anforderungen, Aufwandsschätzung im Team, Mitwirkung an Architekturentscheidungen sowie Abstimmung mit Product Ownern und UI/UX.
Branchen und Projektkontexte
Zoll und Logistik, Hafenkoordination, Inkasso und Forderungsmanagement, Medizin- und Dentaltechnik, Automotive.
Sprachen
Deutsch fließend, Englisch fließend, Spanisch Muttersprache.
Erfahrung
Sprachen
Projekthistorie
Neubau des Systems zur Koordination der Hafenabläufe für Großschiffe zwischen Bremen und Bremerhaven (Programm Digi-Weser). Öffentlich gefördert, mit befristetem Fördervolumen und festem MVP-Termin. Vier Entwickler, davon zwei im Frontend.
Verantwortung für die gemeinsame Frontend-Basis, auf der das Team seine Views aufbaut: generische Tabellenkomponente mit konfigurierbaren Spalten, Spaltenfiltern, Zeilenaktionen und Anlage-Funktion, die acht Seiten abdeckt statt acht Kopien. CRUD-Factory für entitätsbezogene APIs, gekoppelt an einen zentralen Notification-Provider für Anlegen, Ändern, Löschen sowie Fehler und Warnungen. Frontend-Konventionen zu Codestruktur, Namensgebung und Dateiorganisation, in Confluence dokumentiert und so umgesetzt.
Technologieentscheidungen im Frontend sowie Mitwirkung an den initialen Architekturentscheidungen des Systems. Schnitt der Anforderungen und Aufwandsschätzung im Team, in jeder Planungsrunde.
Umsetzung auf beiden Seiten: Frontend-Features in React und TypeScript, Backend-Services in Java und Spring Boot, Datenbankmigrationen mit Liquibase. Testabsicherung über den gesamten Stack mit Cucumber für E2E sowie Unit- und Integrationstests in Spring Boot. Dazu die Betreuung der Projektinfrastruktur.
Stack: React, TypeScript, TanStack, Tailwind CSS, Vite, Java, Spring Boot, Liquibase, Cucumber, Kubernetes.
Gewachsene JEE-Anwendungen schließen mit jedem Jahr schlechter ab, was an Angriffsfläche offensteht. Die Migration ist die Maßnahme dagegen und wird vom Haus getragen, nicht vom Kunden. Ein bis zwei Personen pro Migration; die meisten Anwendungen habe ich allein migriert, mit einem Kollegen als fachlichem Rückhalt für die Geschäftslogik.
Modulweise Migration von JEE-Anwendungen mit JSF von JBoss auf Spring Boot 3, ohne Änderung des Funktionsumfangs. Für den Anwender bleibt alles, wie es war: dieselbe URL, dieselben Masken, dasselbe Verhalten. Abgrenzung zwischen technischer Verbesserung und tatsächlicher Verbesserung im Arbeitsablauf des Anwenders, denn nicht jede saubere Lösung ist im Betrieb eine bessere.
Die innere Struktur der migrierten Projekte bewusst nah an den Konventionen des Hauses, damit neue Entwickler sich sofort zurechtfinden.
Entwicklung von Spring-Boot-Microservices mit REST-Schnittstellen und ereignisgesteuerter Kommunikation über RabbitMQ, Erstellung und Konvertierung von XML-Dateien mit JAXB, Datenbankmigration mit Liquibase, automatisierte Tests mit Cucumber und Deployment-Pipelines mit Jenkins.
Stack: Java 11/17/21, Spring Boot, Camel, PrimeFaces, Liquibase, Cucumber, Jenkins, Linux.
Der bisherige Anbieter der eCommerce-Zollsoftware stellte die Weiterentwicklung ein und setzte ein Enddatum. Nachfolgesystem als Neubau, ohne Übergabe vom Vorgänger, Anforderungen aus internem Wissen rekonstruiert. Team: zwei Entwickler und ein Product Owner. Endkunde: Swiss Post Cargo.
Gesamtes Frontend von Null aufgebaut: Architektur, Konzeption und Umsetzung in React und TypeScript. Berechtigungsmodell in Keycloak über Policies, Rollen, Permissions, Resources und Scopes, mit feingranularer Durchsetzung im Frontend bis auf Feldebene.
Datenmodell der Stammdatenpflege so entworfen, dass die Datenbasis über Jahre sauber bleibt; im Altsystem war genau das schiefgegangen. Erfassungsmasken für 20 bis 30 gleichzeitige Nutzer, mit definiertem Verhalten im Konfliktfall. Erstes Projekt auf den neuen Design-Richtlinien des Hauses, mit UI/UX abgestimmt ohne Terminverzug.
Ergebnis: termingerecht produktiv an 11 Standorten in der Schweiz, 5 in Deutschland sowie je einem in Österreich und Frankreich. Eine Korrektur im System bereinigt Hunderte bis Tausende Sendungen auf einmal, vorher wurde einzeln von Hand geprüft.
Stack: React, TypeScript, Keycloak, REST.