15 KiB
15 KiB
Inhalt
Enthält die Technologien mit denen ich bereits gearbeitet habe. Jede Technologie wird einzeln genannt und enthält das Level der verwendeten Komplexität, den Einsatz und das dazugehörige Projekt.
Softwareentwicklung und Extended Reality
c# in Gameengine Unity3D
- Komplexität: Komplexe, interaktive Anwendungen und plattformübergreifende Produktentwicklung.
- Einsatz: Konzeption, Entwicklung und Betreuung von mehr als 20 VR-, AR- und Flat-3D-Anwendungen; Multi-Target-Entwicklung aus gemeinsamen Unity-Codebasen für XR, Web und Mobile; Client-Server-Kommunikation und Performance-Optimierung.
- Kontext: vrbits GmbH, seit 2019.
OpenXR, Meta Quest SDK, Mindport VR Builder, Needle Engine und 3D Vista
- Komplexität: Integration unterschiedlicher Plattform-SDKs und XR-Werkzeuge.
- Einsatz: Entwicklung von VR-Trainings, 3D-Visualisierungen und virtuellen Showrooms für unterschiedliche Zielsysteme.
- Kontext: vrbits GmbH.
Android und iOS
- Komplexität: Mobile Zielplattformen innerhalb plattformübergreifender Unity-Projekte.
- Einsatz: Bereitstellung von Anwendungen aus einer gemeinsamen Codebasis.
- Kontext: vrbits GmbH.
Rust
- Komplexität: Grundlagen der Konsolen- und 3D-Anwendungsentwicklung mit Eingabeverarbeitung, Kontrollfluss, zeitgesteuerter Bewegung und Zustandsverwaltung.
- Einsatz: Zufallszahlenerzeugung mit
rand, Einlesen von Standardeingaben, Typumwandlung mitmatch-basierter Fehlerbehandlung und Vergleich überOrdering; 3D-Spielprototyp mit Spielfeldgrenzen, fallenden Spielsteinen und Gamepad-Eingaben. - Projekte: Rust-Ratespiel in
rust_guessing_game(Oktober 2018) und Threetris inthreetris(November 2018), jeweils durch eigene Commits belegt.
kiss3d, nalgebra und stick
- Komplexität: Aufbau eines interaktiven 3D-Spielprototyps mit Rendering, mathematischer Positionierung und Gamepad-Steuerung.
- Einsatz: 3D-Fenster, Kamera, Plattform und Würfel mit
kiss3d; Punkte und Translationen mitnalgebra; Abfrage von Gamepad-Eingaben mitstick. - Projekt: Threetris in
threetris, belegt durch eigene Commits im November 2018.
Python
- Komplexität: Entwicklung eines konfigurationsgesteuerten Migrationswerkzeugs mit API-Anbindung, Datenkonvertierung und Dateiverarbeitung.
- Einsatz: Abruf eines MediaWiki über dessen API, HTML-zu-Markdown-Konvertierung, Download von Bildern, Erzeugung von Metadaten und interaktive Link-Konvertierung.
- Projekt: MediaWiki-zu-Obsidian-Migration in
ScrapeMediawiki, belegt durch eigene Commits von August bis Oktober 2024.
MediaWiki-API, Requests, Beautiful Soup und html2text
- Komplexität: Authentifizierte API-Integration und automatisierte Inhaltsmigration.
- Einsatz: Paginierter Abruf aller Wiki-Seiten; Login über Token; Auswertung von Kategorien, internen und externen Links, Bildern und Revisionen; Konvertierung von HTML nach Markdown.
- Projekt: MediaWiki-zu-Obsidian-Migration in
ScrapeMediawiki, belegt durch eigene Commits von August bis Oktober 2024.
Obsidian und Markdown
- Komplexität: Datenmigration und versionsierte Sicherung von Wissensdaten.
- Einsatz: Konvertierung von MediaWiki-Inhalten nach Markdown für Obsidian; automatisiertes Backup eines Obsidian-Vaults.
- Projekte:
ScrapeMediawiki(August bis Oktober 2024) undobsidian-backup(März 2026), belegt durch eigene Commits.
Jekyll und Liquid
- Komplexität: Erweiterung einer statischen Website um wiederverwendbare, datengetriebene Seitenelemente.
- Einsatz: Erstellung eines Full-Width-Kartenlayouts und Einbindung von Karten über Liquid-Templates; Pflege von Seiten mit YAML-Front-Matter und Markdown.
- Projekt: Website für den Fuß- und Radentscheid Dresden in
fuss-und-radentscheid-dresden, belegt durch eigene Commits von März bis Juli 2022.
Ruby und Bundler
- Komplexität: Lokale Build- und Entwicklungsumgebung für eine statische Website unter Windows und Linux.
- Einsatz: Gem-basierte Abhängigkeiten, lokale Bundler-Konfiguration und Dokumentation der Ausführung mit
bundle exec jekyll serve. - Projekt: Website für den Fuß- und Radentscheid Dresden in
fuss-und-radentscheid-dresden, belegt durch eigene Commits im März und Mai 2022.
Sass
- Komplexität: Responsive Komponenten- und Seiten-Styles innerhalb eines bestehenden Jekyll-Themes.
- Einsatz: Anpassung von Kartenüberschriften, Kartenlayout, Full-Width-Darstellung, Kontaktbereich, Footer und projektspezifischem Farbschema.
- Projekt: Website für den Fuß- und Radentscheid Dresden in
fuss-und-radentscheid-dresden, belegt durch eigene Commits im Mai und Juli 2022.
Arduino C
- Komplexität: Firmware-Entwicklung mit Klassenabstraktion, Hardware-Ansteuerung und Netzwerkkommunikation.
- Einsatz: ESP8266-Firmware für einen WLAN-gesteuerten LED-Rahmen; Initialisierung und Ansteuerung eines adressierbaren LED-Streifens sowie HTTP-Routen zur Steuerung von Farben und Effekten.
- Projekt: WLAN-gesteuerter LED-Rahmen in
VRKeting-LED-Rahmen, belegt durch eigene Commits von September 2022 bis Januar 2023.
ESP8266, ESPAsyncTCP und ESPAsyncWebServer
- Komplexität: WLAN- und HTTP-Anbindung eines Mikrocontrollers.
- Einsatz: WLAN-Verbindung, asynchroner HTTP-Server auf Port 80 sowie GET-Routen für die Weboberfläche, direkte Farbsteuerung und Regenbogeneffekt.
- Projekt: WLAN-gesteuerter LED-Rahmen in
VRKeting-LED-Rahmen, belegt durch eigene Commits von September 2022 bis Januar 2023.
Adafruit NeoPixel und WS2811/WS2812
- Komplexität: Einzelpixelsteuerung und Animation eines adressierbaren LED-Streifens.
- Einsatz: Initialisierung eines 80 LEDs umfassenden Streifens, Helligkeitssteuerung, RGB-Farbwerte und Effekte wie Farbwechsel, Lauflicht und Regenbogen.
- Projekt: WLAN-gesteuerter LED-Rahmen in
VRKeting-LED-Rahmen, belegt durch eigene Commits von September 2022 bis Januar 2023.
Web, E-Commerce und Daten
PHP, JavaScript und MySQL
- Komplexität: E-Commerce- und Warenwirtschaftssysteme sowie komplexe Datenbankmigrationen.
- Einsatz: Webshop-Entwicklung, eigene Lösungen, Migration komplexer Systeme und Datenbanken.
- Kontext: selbstständige Full-Stack-Projekte, 2017 bis 2019.
HTML5, CSS3 und jQuery
- Komplexität: Webentwicklung mit responsiven Benutzeroberflächen.
- Einsatz: Entwicklung von Websites und Online-Shops; Responsive Design und Mobile First.
- Zusätzlicher Einsatz: Eingebettete HTML- und CSS-Bedienoberfläche für die Steuerung eines LED-Rahmens im Browser.
- Kontext: nebenberufliche Webprojekte, 2012 bis 2017, sowie WLAN-gesteuerter LED-Rahmen in
VRKeting-LED-Rahmen, September 2022 bis Januar 2023.
JavaScript und XMLHttpRequest
- Komplexität: Browserseitige Steuerung eines vernetzten Hardwaregeräts.
- Einsatz: Auslösen parameterisierter HTTP-GET-Anfragen zur Auswahl von LED-Programmen, Farben und Effektgeschwindigkeit.
- Projekt: WLAN-gesteuerter LED-Rahmen in
VRKeting-LED-Rahmen, belegt durch eigene Commits von September 2022 bis Januar 2023.
Node.js, React und Vue.js
- Komplexität: Moderne Web- und Frontend-Entwicklung.
- Einsatz: Web- und Full-Stack-Entwicklung.
- Kontext: berufliche Erfahrung in Webentwicklung und Full-Stack-Projekten.
Shopware und WordPress
- Komplexität: Webshop- und Content-Management-Systeme.
- Einsatz: Entwicklung von Webshops mit Shopware sowie Webentwicklung.
- Kontext: selbstständige Full-Stack-Projekte.
SQL, CRUD/REST-APIs, JSON und XML
- Komplexität: Datenmodellierung, Datenintegration und Schnittstellenprogrammierung.
- Einsatz: Datenbankdesign und -optimierung; Integration und Kapselung von Schnittstellen, Datenformaten und Services.
- Kontext: Webprojekte, selbstständige Full-Stack-Projekte und vrbits GmbH.
Betrieb, Qualität und Delivery
Git, GitHub Actions und GameCI
- Komplexität: Continuous Integration für mehrere Zielplattformen.
- Einsatz: CI-Pipelines auf lokalen und Remote-Runnern für sämtliche Zielplattformen.
- Kontext: vrbits GmbH.
Docker, Linux, POSIX Shell und Systemadministration
- Komplexität: Betrieb und Administration von Entwicklungs- und Serversystemen.
- Einsatz: IT-Support, Systemadministration und Infrastrukturarbeit.
- Kontext: MAGIX Development GmbH, selbstständige Projekte sowie aktuelle Softwareentwicklung.
- Systeme: Debian-Server, Fedora im privaten Einsatz, NixOS, FreeBSD und CentOS.
- Zusätzlicher Einsatz: Eigene Shell-Automatisierung für Backups, Serverwartung und PhotoPrism-Indexierung in Docker.
- Projekt:
lokale-scripte, November 2018 bis Mai 2026.
NixOS und Nix
- Komplexität: Modulare, deklarative Konfiguration eines Mehrzweckservers.
- Einsatz: Aufteilung der Systemkonfiguration in Nix-Module für Nutzer, Speicher, Samba, Nextcloud, Tailscale, Cockpit, VeraCrypt und systemnahe Programme; automatische System-Upgrades.
- Projekt: Deklarative NixOS-Heimserver-Konfiguration in
bfds-configuration.nix, belegt durch eigene Commits von Januar bis November 2024.
systemd
- Komplexität: Definition und Terminierung systemnaher Dienste.
- Einsatz: Service und stündlicher Timer für ein rsync-basiertes Backup sowie einmaliger Dienst zur Konfiguration der Festplatten-Energieverwaltung beim Systemstart.
- Projekt: Deklarative NixOS-Heimserver-Konfiguration in
bfds-configuration.nix, belegt durch eigene Commits von April bis November 2024.
ZFS
- Komplexität: Verwaltung mehrerer Storage-Datasets auf einem NixOS-Server.
- Einsatz: Einbindung eines ZFS-Pools und separater Datasets für persönliche und gemeinsam genutzte Dateiablagen.
- Projekt: Deklarative NixOS-Heimserver-Konfiguration in
bfds-configuration.nix, belegt durch eigene Commits im Jahr 2024.
Samba und SMB
- Komplexität: Bereitstellung von Netzwerkfreigaben für heterogene Client-Systeme.
- Einsatz: Konfiguration mehrerer Freigaben mit Berechtigungen; SMB2/SMB3-Protokollvorgaben, SMB-Signierung, Firewall-Freigaben und Windows-Netzwerkerkennung.
- Projekt: Deklarative NixOS-Heimserver-Konfiguration in
bfds-configuration.nix, belegt durch eigene Commits von Januar bis November 2024.
nginx, ACME und Let's Encrypt
- Komplexität: HTTPS-Bereitstellung und automatisierte Zertifikatsverwaltung für einen Dienst.
- Einsatz: nginx Virtual Host mit HTTPS-Erzwingung und ACME-Zertifikatsautomatisierung für Nextcloud.
- Projekt: Deklarative NixOS-Heimserver-Konfiguration in
bfds-configuration.nix, belegt durch eigene Commits im August 2024.
Tailscale und Cockpit
- Komplexität: Fernzugriff und webbasierte Serveradministration.
- Einsatz: Aktivierung des Tailscale-Dienstes sowie Bereitstellung der Cockpit-Verwaltungsoberfläche.
- Projekt: Deklarative NixOS-Heimserver-Konfiguration in
bfds-configuration.nix, belegt durch eigene Commits im Januar und November 2024.
Restic
- Komplexität: Automatisierte, verschlüsselte Backup- und Wiederherstellungsabläufe.
- Einsatz: Sicherung über SFTP, Ausschlusslisten für nicht relevante Daten sowie Skripte für Backup und Wiederherstellung.
- Projekt: Private Infrastruktur- und Backup-Automatisierung in
lokale-scripte, belegt durch eigene Commits von November 2021 bis Juli 2022.
rsync und SSH
- Komplexität: Automatisierte, serverübergreifende Dateisynchronisation.
- Einsatz: Nextcloud-Backups über SSH mit dediziertem Schlüssel, Ausschlussregeln und anschließender Berechtigungsanpassung; Offsite-Synchronisation; konfigurationsgesteuertes Obsidian-Backup mit Schlüsseldatei oder benutzerdefiniertem Remote-Shell-Kommando.
- Projekte: Nextcloud-Backup und Betriebsautomatisierung sowie private Backup-Automatisierung in
lokale-scripte(März 2020 bis Januar 2026) und Obsidian-Backup mit rsync und Git inobsidian-backup(März 2026), belegt durch eigene Commits.
Git
- Komplexität: Versionsierte Backup-Historie mit idempotentem Ablauf.
- Einsatz: Automatische Initialisierung eines Backup-Repositorys und Commit-Erstellung ausschließlich nach erkannten Änderungen aus der rsync-Synchronisation.
- Projekt: Obsidian-Backup mit rsync und Git in
obsidian-backup, belegt durch eigene Commits im März 2026.
Nextcloud
- Komplexität: Betrieb und automatisierte Sicherung einer laufenden Instanz.
- Einsatz: Wartungsmodus während Backups, Dateiscans und Aufräumarbeiten; Sicherung von Dateien und Datenbanken.
- Projekt: Nextcloud-Backup und Betriebsautomatisierung in
lokale-scripte, belegt durch eigene Commits von März 2020 bis Mai 2026.
MySQL und PHP
- Komplexität: Automatisierte Datenbank-Sicherungen und Archivierung.
- Einsatz: Erstellung von Datenbank-Dumps und Archivierung für Nextcloud-Backups.
- Projekt: Nextcloud-Backup und Betriebsautomatisierung in
lokale-scripte, belegt durch eigene Commits im Oktober 2023.
VeraCrypt, Robocopy und Windows Batch/PowerShell
- Komplexität: Verschlüsselte, plattformübergreifende Offsite-Sicherungen.
- Einsatz: Einbinden verschlüsselter Datenträger und Spiegeln von Daten für externe Backups unter Windows.
- Projekt: Private Infrastruktur- und Backup-Automatisierung in
lokale-scripte, belegt durch eigene Commits im November und Dezember 2024.
Windows, macOS und Netzwerk
- Komplexität: Arbeit in heterogenen IT- und Client-Umgebungen.
- Einsatz: IT-Support, Systemadministration und plattformübergreifende Entwicklung.
- Kontext: MAGIX Development GmbH, Compaq Computer Corporation und vrbits GmbH.
Automatisierte Tests und Qualitätssicherung
- Komplexität: Testentwicklung und Qualitätssicherung von Software.
- Einsatz: Softwaretest, automatisierte Testentwicklung und Qualitätssicherung.
- Kontext: MAGIX Development GmbH, 2006 bis 2017.
PhotoPrism
- Komplexität: Betriebsautomatisierung einer containerisierten Fotoverwaltung.
- Einsatz: Periodische Indexierung aus einem cron-tauglichen Shell-Skript mit Sperrdatei, Signalbehandlung und Log-Rotation.
- Projekt: PhotoPrism-Indexierungsautomatisierung in
lokale-scripte, belegt durch eigene Commits von Oktober 2025 bis Januar 2026.
3D und technische Gestaltung
OpenSCAD, Blender, OpenGL, 3ds Max und 3D-Druck
- Komplexität: 3D-Bearbeitung und -Entwicklung.
- Einsatz: Im Lebenslauf als 3D-Kenntnisse aufgeführt.
- Kontext: nicht weiter spezifiziert.
KI und maschinelles Lernen
ANNs und LLMs
- Komplexität: Anwendung und kontinuierliche Beschäftigung mit maschinellem Lernen und Sprachmodellen.
- Einsatz: ANNs seit 2016; LLMs seit 2020; seit 2025 verstärkter Einsatz von KI im Unternehmenskontext und in der eigenen Softwareentwicklung.
- Kontext: berufliche und private Softwareentwicklung.
RAG, OpenWebUI, LM Studio, GPUStack, MCP, BMAD, SpecKit, SDD, Context Engineering und Caveman
- Komplexität: Werkzeuge und Methoden für KI-gestützte Softwareentwicklung und LLM-Anwendungen.
- Einsatz: Im Lebenslauf als Kenntnisse aufgeführt.
- Kontext: berufliche und private Softwareentwicklung.
Werkzeuge
Jira und Visual Studio Code
- Komplexität: Werkzeuge für Projektarbeit und Softwareentwicklung.
- Einsatz: Im Lebenslauf als Tools aufgeführt.
- Kontext: nicht weiter spezifiziert.