Software-Entwicklung aus Leidenschaft

Adresse

Bauhofstraße 29
83334 Inzell

Geöffnet

Sa: 08:00 – 18:00

Projekte

Vom Konzept zur Umsetzung: Meine Projekterfahrung

Durch meine breitgefächerte Erfahrung in der Software-Entwicklung konnte ich in unterschiedlichsten Projekten technisches Know-how gezielt einsetzen, um anspruchsvolle Kundenanforderungen erfolgreich umzusetzen. Ob in der Cyber-Security, der Elektronikindustrie oder anderen Branchen – stets lag mein Fokus darauf, robuste, skalierbare und wartbare Lösungen zu entwickeln, die den Produktivbetrieb zuverlässig unterstützen und langfristig sichern.

Mein tiefes Verständnis für moderne Technologien sowie meine strukturierte, lösungsorientierte Arbeitsweise haben es mir ermöglicht, komplexe Systeme effizient zu analysieren, weiterzuentwickeln und neue Funktionalitäten in bestehende Architekturen zu integrieren. Der enge Austausch mit Kunden, die sorgfältige Dokumentation und die konsequente Qualitätssicherung trugen maßgeblich dazu bei, dass Projekte termingerecht, erfolgreich und nachhaltig abgeschlossen werden konnten.

HIL-FRAMEWORK

Branche: Elektronik

Laufzeit: 3 Monate

Rolle: Senior Software-Entwickler

Raspberry Pi (CM4, CM5, Zero 2w), Python, Python-Test, LabGrid, Shelly Plug S, BLE, Yocto, KAS, GitLab, PlantUML

 

In diesem Projekt wurde – im Rahmen eines Forschung & Entwicklungs-Projektes – ein HIL (Hardware-in-the-loop) Framework evaluiert und in einem Prototypen umgesetzt. Der Funktionsumfang umfasste die Entwicklung einer beispielhaften Kundenapplikation, welche nach dem commit in ein Repository von einem Runner abgeholt und in ein Yocto-Projekt basiertes Betriebssystem integriert wurde. Das gebaute Image wird von einem weiteren Runner auf dem Test-Host abgeholt und automatisiert auf das DUT geflasht. Nach einem power-cycle startet das Kunden-Image und die Tests können ausgeführt werden. Dazu wurde LagGrid verwendet, welches zum Einen auf dem Test-Host läuft und eine Hardware-Anbindung hat, um dort die Schnittstellen (GPIO) zu testen, zum Anderen auch eine angebundene LabGrid-Instanz in der Cloud, um die Ergebnisse der Tests in Runner zu dokumentieren. Ziel des Projektes war es, eine cloud-gnostische Vorgehensweise zu haben, welche an den Kunden angepasst und als Dienstleistung aufgebaut werden kann.

CAN-Stack integration

Branche: KFZ-Verwaltung

Laufzeit: 3 Monate

Rolle: Senior Software-Entwickler

ESP32, SN65HVD230, C/C++, CAN, UDS, MQTT, Python-Tkinter, ZephyrOS, PlantUML

 

In diesem Projekt wurde ein bestehendes System erneuert, dazu gehörte zum Einen eine neue Hardware-Plattform und zum Anderen die Integration eines neuen Software-Stacks für die Nutzung von CAN UDS und den neuen Datenpunkten. Die neue Hardware-Plattform umfasste einen integrierten CAN-Controller, welcher mit einen CAN-Transceiver zum Auto verbunden werden konnte. Der bestehende Software-Stack wurde um einen proprietären CAN-Stack erweitert und in die bestehende Kunden-Applikation integriert. Die Datenübertragung zum Desktop erfolgt über GSM und MQTT. Die Datenpunkte sind in der Desktop-App konfiguriert und wurden dort erweitert. Für die Projektdurchführung wurde eine Aufwandsabschätzung für ein Kundenangebot erstellt, die Architektur erstellt und abgenommen, sowie mit Stakeholdern verhandelt.

DUT TESTING VIA UART

Branche: Elektronik

Laufzeit: 3 Monate

Rolle: Senior Software-Entwickler

STM32H750, ESP32, C, TDD, GitHub, Docker, Dev-Container, PlantUML, arm64

 

Im Rahmen dieses Projekts wurde ein UART-basiertes Kommunikationsprotokoll entwickelt und als flexible Bibliothek bereitgestellt, speziell für den Einsatz an Prüfständen zur Vernetzung deren Komponenten. Die Entwicklung wurde auf Basis eines bereits bestehenden Frameworks des Unternehmens realisiert, jedoch so generisch entwickelt, dass der Einsatz auf anderen Platformen möglich ist. Das Hauptziel des Protokolls war es, eine effiziente und robuste Kommunikation zwischen dem Prüf-PC und dem Prüfstand mit mehreren integrierten Komponenten zu ermöglichen. Dadurch wurde das umfassende Testen verschiedener Schnittstellen eines DUT (Device Under Test), einschließlich analoger/digitaler Ein- und Ausgänge sowie Lese-/Schreibtests des FRAM realisiert. Die Bibliothek wurde im Hinblick auf eine mögliche Erweiterung um eine ReST-Anbindung entwickelt. Ergänzend zur technischen Umsetzung wurde eine detaillierte Dokumentation in Form eines Entwicklerleitfadens erstellt, um die Integration und Nutzung der Bibliothek zu erleichtern und zukünftige Entwicklungsarbeiten
zu beschleunigen.

POST-QUANTUM CRYPTOGRAPHIE VIA WEB API

Branche: Cyber-Security

Laufzeit: 10 Monate

Rolle: Software-Entwickler

C++, Oat++, Python-Requests, Docker, Docker-Compose, PlantUML, GitLab, bash

 

Im Rahmen dieses Projekts wurde eine virtuelle Test- und Entwicklungsumgebung auf Basis von Docker, Docker-Compose und Dev-Containern aufgebaut. Die Umgebung ermöglichte eine effiziente, isolierte Entwicklung und das Testen komplexer Anforderungen. Ein zentraler Bestandteil war die Entwicklung einer ReST-API, die als Convenience-Wrapper für eine bestehende Bibliothek zur post-quanten-computer-sicherer Verschlüsselung- und Signierung dient. Diese API stellte eine JSON-basierte Schnittstelle bereit, um die Funktionen der Bibliothek einfach und zugänglich zu nutzen. Die Dokumentation wurde in Markdown und PlantUML erstellt.

VPN-PLUGIN FOR POST-QUANTUM SECURITY

Branche: Cyber-Security

Laufzeit: 10 Monate

Rolle: Software-Entwickler

C, IPsec, SoftHSM, PKCS#11, OpenSSL, Docker, Docker-Compose, PlantUML, GitLab, bash

 

In diesem Projekt wurde eine virtuelle Test- und Entwicklungsumgebung auf Basis von Docker, Docker-Compose und Dev-Containern erstellt. Diese Umgebung ermöglichte eine effiziente Entwicklung, das Debugging und das Testen sicherheitsrelevanter Verschlüsselungsfunktionen in einer isolierten und reproduzierbaren Umgebung. Der zentrale Aspekt war die Entwicklung eines Plug-Ins für eine bestehende VPN-Lösung, um post-quanten-computer-sichere Kommunikation zu ermöglichen. Das Plug-In ermöglichte den Zugriff auf Schlüssel und Zertifikate, die in einem SoftHSM gespeichert sind, welches den PKCS#11-Standard als Schnittstelle verwendet. Damit können diese sicheren Schlüssel und Zertifikate von der VPN-Lösung genutzt werden. Die Dokumentation wurde in Markdown und PlantUML erstellt.

UNIVERSAL DUT TEST AUTOMATION

Branche: Elektronik

Laufzeit: 1 Jahr

Rolle: Software-Entwickler

Qt, C++, QML, GitLab, PlantUML, ascii-doctor, cppcheck, valgrind

 

Ziel dieses Projektes war die Erweiterung einer bestehenden Prüf-Host-Software, um die interaktive Ausführung generischer Tests und Prüfschritte zu ermöglichen. Dabei lag der Fokus auf der Entwicklung einer leistungsfähigen Kommunikationsschnittstelle, die eine effiziente Ansteuerung von DUTs in Prüfständen gewährleistet. Diese Schnittstelle arbeitet mit standardisierten Prüfmodulen und verwendet ein fest definiertes Protokoll, um reibungslose Abläufe zu garantieren. Zusätzlich wurde eine umfassende Architekturdokumentation erstellt, um die Systemstruktur klar darzulegen, sowie ein ausführlicher Entwicklerleitfaden verfasst, der zukünftige Implementierungen und Weiterentwicklungen erleichtert. Damit wurde die Grundlage für eine skalierbare und wiederverwendbare Testumgebung geschaffen.

SERIAL NUMBER MANAGER

Branche: Elektronik

Laufzeit: 6 Monate

Rolle: Software-Entwickler

Python, Django, PostgreSQL, bash, TDD, GitLab, PlantUML, arc42

 

Im Rahmen dieses Projekts wurde ein produktiver Web-Service entwickelt, der das effiziente Management von MAC-Adressen sowie die Generierung von variabel definierbaren Seriennummern ermöglicht. Der Service wurde nahtlos an ein Datenbankmanagementsystem angebunden, um eine zuverlässige und skalierbare Datenverarbeitung sicherzustellen. Neben der initialen Entwicklung stand die kontinuierliche Weiterentwicklung des Services im Fokus, um auf sich ändernde Anforderungen in der Produktionsumgebung und etwaigen Änderungen der Vorschriften flexibel reagieren zu können. Begleitend entstand eine umfassende, englischsprachige Software- und Architekturdokumentation, die sowohl die Funktionsweise als auch die Systemstruktur detailliert beschreibt und als wertvolle Ressource für Entwickler dient.

INDUSTRIAL WATER QUALITY ANALYZER

Branche: Wasserversorgung

Laufzeit: 3 Jahre

Rolle: Software-Entwickler

C++, 4diac, Golang, JavaScript, Python, boost, SHM, JSON, GitLab, PlantUML, Yocto, cppcheck, valgrind

 

In diesem Projekt wurde die Architektur für ein verteiltes System zur Überwachung der Trinkwasseraufbereitung entwickelt, das durch eine Cloud-Anbindung eine effiziente Datenverarbeitung und -speicherung gewährleistet. Ein zentraler Aspekt war die Festlegung der Kommunikationsformate sowie der zugrunde liegenden Datenbankstrukturen, um eine nahtlose Integration der Systemkomponenten zu ermöglichen. Zusätzlich wurden Fehlerbaumanalysen erstellt, um potenzielle Ausfallrisiken frühzeitig zu identifizieren und Personenschäden zu minimieren. Die Implementierung umfasste die Entwicklung von Anwendungen und Konnektoren, die als wiederverwendbare Bibliothek bereitgestellt wurden. Für die iterative Entwicklung des Systems wurden klare Meilensteine definiert, und die Zuweisung von Arbeitspaketen an die Teammitglieder erfolgte, um eine strukturierte und effiziente Projektabwicklung zu gewährleisten.

IFSF-GATEWAY

Branche: Mineralöl/Chemie

Laufzeit: 1 Jahr

Rolle: Software-Entwickler

C++, Qt, boost, qmake/cmake, Python, IFSF, SOAP, JSON, OS-Konfiguration

 

Im Rahmen dieses Projekts wurde eine Gateway-Software auf Hardware-Ebene entwickelt, die die Kommunikation zwischen IFSFbasierten Geräten zu einer SOAP-Schnittstelle ermöglicht. Dies erforderte eine präzise Abstimmung der Kommunikationsprotokolle und die Implementierung einer robusten Softwarelösung, die die reibungslose Datenübertragung gewährleistet. Zunächst wurde ein detailliertes Lastenheft sowie die Systemarchitektur erstellt, um die technischen Anforderungen und Rahmenbedingungen festzulegen. Bei der Auswahl der verwendeten Bibliotheken wurde besonders auf Kriterien wie Lizenzierung, Wartbarkeit, Verfügbarkeit und Performance geachtet, um eine langfristig stabile Lösung sicherzustellen. Darüber hinaus erfolgte die Mitorganisation des Rollouts, um den Übergang in den produktiven Betrieb reibungslos zu gestalten. Ergänzend wurde Kundensupport geleistet, um sicherzustellen, dass alle Implementierungen korrekt funktionieren und die Benutzer optimal unterstützt werden.

MONITORING THE POSITION OF HERD ANIMALS

Branche: Landwirtschaft

Laufzeit: 1 Jahr

Rolle: Software-Entwickler

Python, Django ReST, JSON, C++, AWS, PostgreSQL, MQTT, GitLab

 

Im Rahmen dieses Projekts wurde eine Gateway-Software auf Hardware-Ebene entwickelt, die die Kommunikation zwischen IFSFbasierten Geräten zu einer SOAP-Schnittstelle ermöglicht. Dies erforderte eine präzise Abstimmung der Kommunikationsprotokolle und die Implementierung einer robusten Softwarelösung, die die reibungslose Datenübertragung gewährleistet. Zunächst wurde ein detailliertes Lastenheft sowie die Systemarchitektur erstellt, um die technischen Anforderungen und Rahmenbedingungen festzulegen. Bei der Auswahl der verwendeten Bibliotheken wurde besonders auf Kriterien wie Lizenzierung, Wartbarkeit, Verfügbarkeit und Performance geachtet, um eine langfristig stabile Lösung sicherzustellen. Darüber hinaus erfolgte die Mitorganisation des Rollouts, um den Übergang in den produktiven Betrieb reibungslos zu gestalten. Ergänzend wurde Kundensupport geleistet, um sicherzustellen, dass alle Implementierungen korrekt funktionieren und die Benutzer optimal unterstützt werden.

Multiprotokoll IoT Edge Gateway: Sprachsteuerung und Cloud-Architektur für SPS-Anlagen

Branche: Forschung & Entwicklung

Laufzeit: 1 Jahr

Rolle: Software-Entwickler

C++, Python, JavaScript, 4diac, ASK, AWS-Lambda, AWS-IoT, Node-RED, GitLab

 

In diesem Projekt wurde eine Sprachsteuerung für eine Soft-SPS (speicherprogrammierbare Steuerung) integriert, um die Bedienung von industriellen Prozessen durch natürliche Sprachbefehle zu ermöglichen. Dazu wurde ein benutzerfreundlicher Sprachassistent entwickelt, der in Echtzeit mit einem WebService kommuniziert, um Sprachbefehle zu interpretieren und in Steuerungsbefehle für die Soft-SPS zu übersetzen. Das eingebettete Gerät, das mit der Soft-SPS verbunden ist, wird über eine sichere Cloud-Lösung gesteuert, was eine flexible und ortsunabhängige Kontrolle ermöglicht. Durch die Kombination von Sprachsteuerung und Cloud-Architektur konnte eine innovative Lösung geschaffen werden, die sowohl die Effizienz als auch die Benutzerfreundlichkeit der Steuerungssysteme erheblich verbessert.

Gerne helfe ich auch in Ihrem Projekt!

Sie suchen Unterstützung bei der Software-Entwicklung, Homepage-Design oder Erstellung von Printmedien? Als freiberuflicher Entwickler mit fundierter Erfahrung unterstütze ich Sie flexibel, zuverlässig und lösungsorientiert – remote oder vor Ort. Kontaktieren Sie mich jetzt für eine unverbindliche Zusammenarbeit.