#import "../personal.typ": person #import "../template.typ": * #set page( paper: "a4", margin: (left: 14mm, right: 14mm, top: 8mm, bottom: 16mm), footer: cv-footer(person), ) #show: document-base // N&M-Farbpalette: Gelb (#fdc300), Schwarz und Anthrazit. // Für Akzentschrift auf Weiß wird das Gelb zugunsten der Lesbarkeit abgedunkelt. #show text.where(fill: accent): set text(fill: rgb("#896a00")) #show text.where(fill: ink): set text(fill: rgb("#3c3c3b")) #show text.where(fill: dark-ink): set text(fill: rgb("#000000")) #show text.where(fill: gray-ink): set text(fill: rgb("#3c3c3b")) #show line.where(stroke: 0.9pt + rule-ink): it => { let fields = it.fields() fields.stroke = 0.9pt + rgb("#fdc300") line(..fields) } #set par(leading: 0.56em) #cv-header(person) #section("Ber", "ufserfahrung") #entry( "C# Developer & Software Engineer for Unity AR/VR", "vr-bits GmbH", "Leipzig", "seit 2019", ( [Konzeption, Entwicklung, Deployment und Betreuung von mehr als 20 Anwendungen mit C\# und Unity für Web, Desktop, Mobile und XR; Integration von SDKs und externen Services], [ AssetDownloader für MMS – modulare Architektur und Qualitätssicherung #list(marker: [•], indent: 8pt, body-indent: 4pt, spacing: 6pt, [Anforderungserhebung und Konzeption einer .NET-Standard-Kernbibliothek mit separater Unity-Anbindung; parallele, asynchrone Downloads mit Wiederaufnahmefunktion und Cache-Verwaltung], [Spezifikations- und testgetriebene Umsetzung mit KI-Unterstützung; Tests für Downloads, Abbruchbehandlung, Dateiintegrität und Cache-Verhalten mit NUnit, Moq und HTTP-Mocks], ) ], [TenneT 2GW Platform: eigene TypeScript-Komponenten für eine mehrsprachige Web-/WebXR-Visualisierung von Offshore-Energieinfrastruktur mit Three.js und Needle Engine], [enviaM: VR-Training für Umspannwerksabläufe mit zustandsbasierter Schrittsteuerung, Spannungsprüfung und Fehlererkennung], [Roche: modulare WebGL-Labortrainings, persistente Speicherung von Lernfortschritten und datengetriebene Inhaltsgenerierung; C\#-/JavaScript-Brücke zum Lernsystem, SCORM-/AICC-Anbindung und automatisierte Builds und Deployments mit GitHub Actions und GameCI], [TrainingGenerator: Ausgliederung eines wiederverwendbaren Unity-Pakets mit Editor-Assistent, CLI- und Batchmode-Verarbeitung sowie Regressionstests], [Telekom MMS AI Assist: Docker- und Kubernetes-Anweisungen sowie Konfiguration von Containern und Deployment-Prozessen für einen Python-basierten Voice-Agent-Service in der Open Digital Cloud; Schwerpunkt auf Bereitstellung und Integration], ), ) #entry( "Agentic Software Engineer", "Sächsisches Umschulungs- und Fortbildungswerk Dresden", "Dresden", "seit 2026", ( [Verwaltungsprozesse fachlich analysiert, Architektur und Prüfkriterien festgelegt, KI-gestützte Umsetzung gesteuert], [ Tätigkeitsnachweis-Generator #list(marker: [•], indent: 8pt, body-indent: 4pt, spacing: 6pt, [Vagen Auftrag iterativ eingegrenzt; markerbasierte Feldersetzung mit externer JSON-Feldkonfiguration], [Streamlit-Anwendung mit Excel-Import, Validierung und monatlicher PDF-Ausgabe (openpyxl, PyMuPDF)], [Windows-Auslieferung mit Update-Prüfung], ) ], [ Anwesenheits-PDF-Generator #list(marker: [•], indent: 8pt, body-indent: 4pt, spacing: 6pt, [Datenmodell und Geschäftsregeln spezifiziert; Excel-zu-SAB-PDF-Übertragung (openpyxl, pypdf)], [Fachlogik getrennt von Oberfläche und Ausgabe, gemeinsam genutzt von CLI und GUI; Hintergrundverarbeitung], [CLI und GUI mit Unit-Tests, Windows-Installer], ) ], [Ausbilder-Qualifikation nach AEVO (IHK)], ), ) #entry( "Freelance Full-Stack Developer", "Selbstständig", "Dresden", "2017–2019", ( [Entwicklung von E-Commerce- und Warenwirtschaftssystemen mit PHP, JavaScript und MySQL, unter anderem mit Shopware], [Frontend-Entwicklung mit JavaScript-Frameworks, Migration komplexer Systeme und Datenbanken sowie technische Beratung], ), ) #entry( "Hauptentwickler und Projektkoordinator", "VISOR/OProc – Prototype Fund", "Dresden", "2017–2018", ( [Anforderungserhebung mit Forschenden der HTW Dresden; Entwurf eines offenen Datenmodells für Stadtentwicklungsprozesse im BMBF-geförderten Projekt], [Konzeption und Entwicklung einer Prozessvisualisierung mit Preact, Redux, SVG und Dagre; gekoppelte Zeitachsen-, Graph-, Filter- und Detailansichten], [Fachliche Priorisierung und Koordination der technischen Umsetzung im Projektteam], ), ) #entry( "Software-Qualitätssicherung – Webentwicklung", "MAGIX Development AG", "Dresden", "2006–2016", ( [Softwaretests und strukturierte Fehleranalyse; Automatisierung von GUI-Tests mit SikuliX für Windows-Anwendungen mit WPF- und Qt-5-Oberflächen], [Interne Webentwicklungsprojekte, IT-Support und Systemadministration], ), ) #entry( "Webentwickler", "Nebenberuflich", "Dresden", "2012–2017", ( [Entwicklung von Websites und Online-Shops mit responsiven Benutzeroberflächen nach dem Mobile-First-Prinzip; Entwurf und Optimierung relationaler Datenbanken], ), ) #pagebreak() #cv-header(person) #section("Tec", "hnische Kenntnisse") #skills[ #skill("Backend & Daten", [ C\#, .NET Standard, SQL, MySQL, SQLite, Datenmodellierung und Datenbankmigrationen; Python, Django/ORM (Grundlagen) ]) #skill("Architektur & Schnittstellen", [ REST/HTTP, OpenAPI, JSON, XML, API-Integration; modulare Bibliotheken, Trennung von Kernlogik und Framework-Anbindung, Zustandsmodelle, asynchrone Verarbeitung ]) #skill("Tests & Qualität", [ Testgetriebene Entwicklung, Unit-, Integrations- und Regressionstests, NUnit, Moq, HTTP-Mocks, SikuliX, pytest ]) #skill("Infrastruktur & Betrieb", [Git, GitHub Actions, GameCI, Docker/Compose, Linux, NixOS, Shell, SSH, Apache 2, nginx, Netzwerkdiagnose, Backup und Wiederherstellung]) #skill("Web & Frontend", [ TypeScript, JavaScript, React, Preact, Redux, HTML/CSS, Three.js, WebXR, Jekyll ]) #skill("KI & Entwicklungsprozesse", [ Spezifikationsgetriebene Entwicklung mit KI, Context Engineering; BMad, Spec-Kit, Jev; Kenntnisse in RAG und lokalen LLM-Werkzeugen: OpenWebUI, LM Studio, GPUStack ]) #skill("Rust-Grundlagen", [ Eigene Konsolen- und 3D-Lernprojekte mit Cargo ]) #skill("Zusammenarbeit", [ Anforderungserhebung, fachliche Projektkoordination, Scrum, Jira, technische Dokumentation; Kommunikation auf Deutsch und Englisch ]) ] #section("Aus", "bildung") #entry( "Fachinformatiker für Systemintegration", "BSZET Dresden / MAGIX GmbH", "Dresden", "2003–2006", ( [Systemintegration, Anwendungsentwicklung und Geschäftsprozesse], ), ) #entry( "Technischer Assistent für Automatisierungs- und Computertechnik", "Berufliches Schulzentrum Weißwasser", "Weißwasser", "1997–2000", ( [Programmierung, Automatisierungstechnik sowie Hardware- und Softwareentwicklung], [Rechentechnik, Mess- und Regelungstechnik sowie CAD], ), ) #section("Eng", "agement & Mentoring") #entry( "Mentor & Jurymitglied", "Jugend hackt Dresden", "Dresden", "seit 2015", ( [Mentoring bei Coding-Projekten und Jurytätigkeit bei Hackathons], ), ) #entry( "Dozent & Workshop-Leiter", "Chaos macht Schule", "Sachsen", "2014–2018", ( [Programmier-Workshops sowie Vermittlung von Datenschutz und IT-Sicherheit an Schulen], ), ) #entry( "Lead", "Open Data Dresden", "Dresden", "2014–2021", ( [Organisation von Community-Aktivitäten und Open-Data-Projekten], [Gründung eines Open-Data-Labs mit der Open Knowledge Foundation], ), ) #entry( "Speaker", "Web Montag Dresden, CCC-Veranstaltungen", "Dresden", "2012–2019", ( [Vorträge zu Webentwicklung und IT-Trends sowie Wissensaustausch in der Developer-Community], ), ) #section("Per", "sönliches") #v(1em) #set text(font: "Source Sans Pro", size: 9pt, weight: 300, fill: ink) Meine Familie ist mein wichtigster Rückhalt. In meiner Freizeit zieht es mich in die Berge oder aufs Wasser; außerdem widme ich mich gern der Musik. Als Autodidakt erschließe ich mir beruflich wie privat neue Technologien und Programmiersprachen. Im Team schätze ich den offenen, respektvollen Austausch: Unterschiedliche Perspektiven helfen mir, Zusammenhänge zu erkennen und gemeinsam tragfähige Lösungen zu entwickeln.