Staatlich geprüfter Mediengestalter (Digital- und Printmedien)
Rottweil, Deutschland
Weltweit
Staatlich geprüfter Mediengestalter (Digital- und Printmedien)
Profilanlagen
CV_Philipp_Veller_DE.pdf
Über mich
Freiberuflicher Fullstack-Entwickler mit 10 Jahren Erfahrung, seit 2017 selbstständig. Schwerpunkte: performante, barrierefreie Frontends mit TypeScript, React, Next.js und Astro sowie Django-Backends. Erfahrung mit der Übernahme bestehender Codebasen. 100 % remote.
Auth und Sicherheit: JWT RS256, OAuth2, SSO mit Microsoft Entra ID, TOTP MFA, DSGVO-konforme Datenverarbeitung, Feldverschlüsselung, Audit-Trails
KI-Integration: Anbindung von LLM-APIs, SSE-Streaming, Token-Tracking, KI-gestützte Entwicklung mit Claude Code
Schwerpunkte: Übernahme und Weiterentwicklung bestehender Codebasen, Legacy-Migrationen, Greenfield-Produktentwicklung, SaaS mit Abo-Abrechnung, regulierte Umfelder in Medizin und öffentlicher Hand, Scrum
Erfahrung
Berufserfahrungmehr als 10 Jahre
Freelancer seit2017
Sprachen
DeutschMutterspracheEnglischverhandlungssicher
Projekthistorie
Freiberuflicher Consultant & Tech Lead – Technisches Audit und OCR-Integration (Python)
Notarkanzlei
Wirtschaftsprüfung, Steuern und Recht
Technische Leitung und unabhängige Prüfung eines Systems zur Automatisierung von Kanzleiabläufen: Daten aus Online-Checklisten fließen weitgehend automatisch in die Kanzleisoftware. Rolle als Consultant und Tech Lead neben einem umsetzenden Entwickler – Architekturberatung, Lösungsdesign, Code Review und Priorisierung statt Volumen-Implementierung. Vollständiges technisches Audit über Datenkorrektheit, Sicherheit und Zugriffe, Zuverlässigkeit sowie Wartbarkeit, dokumentiert als strukturierter Bericht: jede Feststellung in Alltagssprache für die Kanzleileitung plus separatem technischem Nachweis mit Datei, Funktion und Lösungsvorschlag für den Entwickler. Integration von OCR für Ausweisdokumente (Regula Document Reader, MRZ und visuelle Zone) inklusive Bildqualitätsbewertung und gehärteter Fallback-Logik, die Unsicherheit meldet statt Werte zu raten. Betrieb über rootless Podman-Container mit Grafana, Loki und Alertmanager. Verarbeitung besonderer Kategorien personenbezogener Daten unter DSGVO.
Aufbau und Betrieb eines eigenen SaaS-Produkts als alleiniger Entwickler: Astro 6 mit SSR, React 19, TypeScript im Strict-Mode und Tailwind CSS 4. Backend auf Supabase mit PostgreSQL, 30 Migrationen und Row-Level-Security-Policies. Vollständiger Zahlungs-Lebenszyklus mit Stripe (Checkout, Webhooks, Testphasen, Self-Service-Portal), Auth mit httpOnly-Cookies, CSRF-Schutz und Rate Limiting. Performance-Arbeit auf Rendering-Ebene mit PixiJS und 20+ komponierten Layern sowie manuellen Rollup-Chunks. Qualitätssicherung mit 384 Testdateien (Vitest, Playwright) bei rund 80 % Statement-Coverage, Coverage-Schwellen in der CI und einem Pre-Commit-Hook, der ungetestete neue Quelldateien blockiert. Deployment via mehrstufigem Docker-Build, GitHub Actions und Caddy. Entwickelt mit Claude Code als KI-Pair-Programming-Partner.
Freiberuflicher Frontend-Entwickler – Bibliotheksfinder Berlin (Next.js, Static Export)
Bibnavi (bibnavi.de), über eine Digitalagentur
Internet und Informationstechnologie
Alleiniger Entwickler eines mobile-first Bibliotheksfinders für Berlin (bibnavi.de) gegen Festpreis und nach gelieferter Figma-Vorlage: Next.js mit App Router als vollständiger Static Export ohne SSR, API-Routen oder Server-Laufzeit, dazu TypeScript, Tailwind CSS v4 mit Design-Tokens, Radix UI und Vitest. Privacy by Architecture: Der gesamte Bibliotheksdatensatz wird zur Bauzeit ins Bundle gelegt, die Nächste-Treffer-Berechnung läuft clientseitig – die GPS-Position erreicht keinen Server und taucht in keinem Log, keiner URL und keinem Analytics-Event auf. Postleitzahl-Fallback gegen eine zur Bauzeit erzeugte Zentroid-Tabelle statt über einen Geocoding-Dienst. Eigene Build-Pipeline für OpenStreetMap-Daten inklusive Parsing der Opening-Hours-Syntax; fehlende Attribute werden als „keine Angabe“ ausgewiesen statt als negative Eigenschaft. Barrierefreiheit nach WCAG und BFSG mit eigenem Testdurchlauf, cookielose Analytik, ODbL-Attribution.
Freiberuflicher Frontend-Entwickler – Planungstool für Kranflotten (Next.js 15, React 19)
Windkraftanlagen-Hersteller
Energie, Wasser und Umwelt
Frontend-Verantwortung in einem 2–3-köpfigen Team für ein Planungswerkzeug zur Disposition von Kranflotten über dutzende Windpark-Installationsprojekte. Planungsoberfläche mit Bryntum Scheduler in Next.js 15 (App Router, Turbopack) und React 19, erweitert um ein eigenes Event-Modell, ein Kalenderwochen-View-Preset und zustandsabhängiges Event-Rendering. Anbindung an eine FastAPI-Schnittstelle, die Ergebnisse des Optimierungs-Backends zur Prüfung durch Disponenten liefert. Zweisprachige Oberfläche (DE/EN) mit LinguiJS und SWC-Plugin, dynamischem Sprach-Routing und Middleware-basierter Spracherkennung; Sprachkataloge werden serverseitig geladen, um das Client-Bundle klein zu halten. Authentifizierung über Microsoft Entra ID (SSO).
Verantwortlich für die gesamte Entwicklung einer klinischen Monitoring-Plattform über knapp sechs Jahre: Django 5.1 mit Django REST Framework und PostgreSQL, Hintergrundjobs über django-rq, Frontend mit Django-Templates und Plotly.js, E2E-Tests mit Playwright. Risikomodell und klinische Ausrichtung lagen bei den Forschenden der Auftraggeber. Regulatorische Anforderungen im Modell-Layer verankert: Verschlüsselung personenbezogener Daten beim Löschen über post_delete-Signal, organisationsweite Datensperren, verpflichtende TOTP-Mehrfaktor-Authentifizierung mit Sperrlogik und lückenlose Audit-Trails via django-simple-history. Migration von Django 3 auf 5.1 unter Wahrung der Rückwärtskompatibilität sowie Übergabe des Projekts von der Forschungseinrichtung an ein ausgegründetes Unternehmen.
Alleiniger Entwickler einer interaktiven Kartenanwendung zur Visualisierung nächtlichen Vogelzugs: React 19, TypeScript, Vite 7, MapLibre GL und GraphQL/Apollo. Räumliches Clustering tausender Erkennungspunkte je Art, Timeline-Animation mit Wiedergabesteuerung und Tag/Nacht-Terminator. Auslieferung als eigenständige Web Component, die per einzelnem HTML-Tag in das bestehende CMS des Kunden eingebettet wird, ohne Eingriff in dessen Infrastruktur. Ladezeit optimiert über Vite-Code-Splitting (MapLibre, UI-Library und Apollo als separate Chunks), viewport-basiertes Prefetching und eigene Apollo-Cache-Merge-Funktionen.
Einstieg in eine bestehende SaaS-Codebasis ein Jahr nach Projektstart und Übernahme der Full-Stack-Integration über drei Dienste hinweg in einem 2–3-köpfigen Team (157 Commits): Next.js-14-Frontend, Django 5 mit Django REST Framework, PostgreSQL, Celery und Redis sowie ein FastAPI-Dienst für die KI-Anfragen, dokumentiert über drf-spectacular (OpenAPI). Abrechnung nutzungsbasierter KI-Features: ein Callback erfasst den Token-Verbrauch je LLM-Aufruf, meldet ihn per API-Key-Authentifizierung an Django und erzeugt Stripe-Meter-Events; Kreditprüfung als Middleware mit monatlichen Limits je Tarif. Die LLM-Ketten und Prompts selbst verantwortete ein Kollege. Dazu RS256-JWT-Authentifizierung mit geteilten RSA-Schlüsseln über alle drei Dienste, Cookie-Transport mit automatischem Refresh, Social Login sowie SSE-Streaming ins Frontend.
Freiberuflicher Frontend-Entwickler – Beteiligungsplattform, Open Source (React, Django)
Liquid Democracy e.V. (meinBerlin / adhocracy4)
Internet und Informationstechnologie
Durchgehend freiberufliche Mitarbeit an Berlins offizieller Beteiligungsplattform meinBerlin und der quelloffenen Bibliothek adhocracy4 – insgesamt acht Jahre Kundenbeziehung mit 1.776 Commits, mit dem größten Beitrag während des Redesigns 2023–2025. Barrierefreie React-Komponentenbibliothek nach WCAG 2.1 AA und BITV 2.0: vollständiges WAI-ARIA-Combobox-Pattern mit Tastaturnavigation und aria-activedescendant, natives dialog-Element als Modal, Switch-Pattern und Alerts mit dynamischen ARIA-Rollen – wiederverwendet über mehrere Städte-Deployments hinweg. React-Frontend auf einem Django-/DRF-Backend, Arbeit im Team mit Code Reviews und gemeinsamen Qualitätsstandards, Entwicklung vollständig quelloffen auf GitHub.
Übernahme der Plattform von einer Vorgängeragentur und Weiterentwicklung über 4,5 Jahre (757 Commits), zunächst im Zweierteam, später allein verantwortlich – inklusive des Redesign-Zyklus 2022 ohne Ausfallzeiten im laufenden Betrieb. Frontend und Content-Strukturen für institutionelle Investoren: Fondssuche mit AJAX-Filterung nach Typ, Land und Risikoklasse, Highcharts-Performancecharts sowie mehrsprachige Redaktionsvorlagen mit 25+ eigenen ViewHelpern. Automatisierte CSV-Datenimporte über 15 geplante Tasks, Docker-Build und GitLab-CI mit Staging-, RC- und Produktionsstufe.
Kampagnenwebseite „Radvolution“ für Deutschlands größten Radfahrverband (240.000+ Mitglieder) als alleiniger Entwickler aus dem gelieferten Design umgesetzt: Svelte 3 mit Vite 4 und Tailwind CSS. Responsive SVG-Titelgrafik mit getrennten Desktop- und Mobile-Varianten, Content-Karussell, animiertes Akkordeon und eigenes Scroll-Snap-Verhalten über Touch- und Wheel-Events. Anbindung von Newsletter-Anmeldung (CleverReach) und datenschutzfreundlichem Matomo-Tracking, dazu datumsabhängige Call-to-Actions. Auslieferung als statisches Build in die Hosting-Umgebung des Kunden.
Alleiniger Entwickler über vier Jahre und mehrere Produktneuausrichtungen (658 Commits): kompletter Greenfield-Neuaufbau mit Django 5.1, Django REST Framework und Wagtail 6 als Headless CMS, dazu ein React-18-Frontend mit Vite und TanStack Query. Datenmodell für 34 strukturierte Interventionsaufgaben ohne Duplikate entworfen – abstrakte Basisklasse mit Mixin, gemeinsame Signal-Handler und je Aufgabe eigene Serializer. Signalbasierte Gamification-Engine mit Punkte-, Streak- und Bonuslogik, deren tägliche Auswertung über Celery Beat und Redis läuft. AES-Feldverschlüsselung für personenbezogene Kinderdaten, TOTP-2FA für klinisches Personal, zweisprachiges Content-Management via wagtail-localize sowie eine eigene HTTP-Range-Middleware für gechunktes Video-Streaming. Testsuite mit pytest und Vitest, CI über GitHub Actions.
Full-Stack Developer
LIQUID DEMOCRACY E.V
Portfolio
Kontaktanfrage
Einloggen & anfragen.
Das Kontaktformular ist nur für eingeloggte Nutzer verfügbar.