Softwareintegration (mittels C/C++/Python) von FPGAs auf Embedded Linux Device (Yocto) im Bereich Kameras
Software-EntwicklerCC++Python...
Software-Entwickler
Softwareentwicklung im agilen (Scrum) Umfeld: Integration von FPGAs in die Software eines Embedded-Linux Gerätes (Kamera) unter Verwendung von C, C++ und Python. Entwicklung neuer, und Anpassung vorhandener Linux-Treiber, vorrangig im Userspace sowie darauf aufbauender Software. Einhergehend mit Unittests (Catch2) und Continuous Integration (Jenkins, Gitlab). Verwendung aktueller Code-Versionsverwaltungs- (git; gitlab) und Tickets-/Scrumboards-Werkzeugen (Atlassian). Ca. 95% Remote.
CC++PythonGitGitlabJenkinsAtlassian ConfluenceAtlassian JIRAYoctoEmbedded LinuxVisual Studio CodeUnittestClean CodeAgile SoftwareentwicklungScrumRemoteCatch2Continuous IntegrationCMakeBourne-again-shellDocker
1 Jahr 8 Monate
2020-09 - 2022-04
Softwareentwicklung Embedded Linux mit C/C++17, Qt, Python für Multi-Sensor-Device
Konzeption, Softwareentwicklung und TestingCC++17Qt...
Konzeption, Softwareentwicklung und Testing
Planung, Entwicklung und Analyse von Embedded-Softwarekomponenten in C/C++ unter Linux (Ubuntu und Embedded) für Multi-Sensor-Device im Industrie- und Automatisierungs-Umfeld.
Planung, Architektur, Entwicklung und Testing von Features (u.a. Z-Wave) für Embedded Linux Devices unter Linux in C/C++, Qt und Python in der Solarenergie-Branche.
Microsoft Visual CodeGitlabQtCreatorMicrosoft Visual StudioZ-Wave
Entwicklung und Analyse von Embedded-Features/Komponenten in C/C++ unter Linux (Ubuntu und Embedded) mit Eclipse für Sensoren im Industrie- und Automotive-Sektor.
Embedded-LinuxUbuntuPolarionAtlassian Bitbucket
C++C++11QtGitClean CodeOOAOODOOPDesign PatternsEmbeddedSvnCMakeGitHubRedisBackend Entwicklung
ifm syntron GmbH
Remote
6 Monate
2016-12 - 2017-05
C++ / Visual C# Softwareentwicklung - GUI
Software-EntwicklerScrumC#GUI...
Software-Entwickler
Entwicklung einer Desktop-GUI für Windows und einer Testframework-Anbindung mittels C# im Embedded Automotive Umfeld
Idee, Design, Konzept, Umsetzung und Veröffentlichung (1.-3.) von Android Apps:
Lernsoftware "Trainiere Einmaleins – 1x1": Android-App für Kinder zum Vertiefen des Einmaleins. Fokus lag in der Gestaltung eines intuitiven User-Interfaces, insbesondere durch Animation; Eintrag im Google Play Store. (Statistik: >140.000 Downloads, 310 Bewertungen, 4.5/5 Sterne, Stand: 13.02.2018)
Lernsoftware "Trainiere die Uhrzeit zu lesen": Android-App für Kinder zum Lernen von Uhrzeiten in analoger und digitaler Darstellung. Fokus lag auf der Integration von Werbung mittels Google AdMob; Eintrag im Google Play Store. (Statistik: >5.300 Downloads, 14 Bewertungen, 4.4/5 Sternen, Stand: 13.02.2018)
"Minigolf Punktekarte" zur Erfassung von Minigolf-Spielpunkten mit dem Smartphone: Android-App zur Erfassung von Spielpunkten. Fokus lag in der Gestaltung eines intuitiven und innovativen User-Interfaces; Eintrag im Google Play Store. (Statistik: >1.200 Downloads, 11 Bewertungen, 4.5/5 Sternen, Stand: 13.02.2018)
Ende-zu-Ende verschlüsselter Messenger für GPS-Positionen und Text (Android): Verknüpfte Kontakte können gegenseitig ihre aktuelle GPS-Position Ende-zu-Ende verschlüsselt abfragen/senden – bedarfsweise mit zusätzlichem Text. Fokus lag auf 'Google Cloud Messaging (GCM)', User-Interface mit Material Design und Notifications.
2 Android Consumer Apps für Smartphones und Tablets
Software-EntwicklerJavaAndroidRenderscript...
Software-Entwickler
Implementierung von Custom GUI-Komponenten, u.a. zum Laden und intuitiven Bearbeiten von Bildern (Skalierung, Drehung, Filterung, Ausrichtung) mittels Touch-Gesten.
Microsoft WindowsAndroid Studio
JavaAndroidRenderscriptCrashlyticsVolleyGsonActionBarSherlockSQLitegradleRedmineScrumGitTortoiseGitGoogle Play Services
Eigene Gründungsidee, gefördert durch EXIST (BMWi), ausgezeichnet beim Gründerwettbewerb (BMWi):
System zur Unterstützung des Verkaufspersonals im Fahrradfachhandel durch Einsatz von Tablet-Computern:
Aktuelle und multimediale Produktinformationen (Bilder, Videos), Verfügbarkeit/Lieferbarkeit, Produkt-Querverweise („Cross-Selling“) sind für den Verkäufer im Kundengespräch direkt griffbereit und können zur Beratung eingesetzt werden. (Somit entfallen kostenintensive, veraltete Produktkataloge sowie zeitaufwendige Recherchen am Computer.) Zusätzliche Multimediasäulen bieten die Möglichkeit die Inhalte der Tablet-Computer im Großformat mit gutem Klang zu präsentieren. Integrierte BikeFitting-Erweiterung: Mit Hilfe eines Stereo-Kamerasystems kann der Kunde innerhalb von 2-3 Minuten vermessen und auf Basis dieser Vermessung ein passendes Fahrrad sowie der erforderlichen Einstellungen (Sattelhöhe, Vorbau, ..) ermittelt werden.
Microsoft WindowsEclipseMicrosoft Visual StudioAndroid Studio
Administration der Linux-Rechner (Suse) am Lehrstuhl Angewandte Informatik III
Stellvertretung
Stellvertretung
7 Jahre 10 Monate
2004-07 - 2012-04
Sichere Mensch/Roboter-Koexistenz und -Kooperation; Umsetzung in C++, Qt unter Linux
Forschung und EntwicklungCC++Forschung...
Forschung und Entwicklung
Industrieroboter werden bislang hinter Schutzzäunen eingesetzt. Jedoch verspricht die direkte Zusammenarbeit zwischen Mensch und Roboter Synergieeffekte, d.h. eine kostengünstigere sowie flexiblere Produktion. Aus Sicherheitsgründen ist hierfür jedoch notwendig, dass das Robotersystem den Aufenthaltsort des Menschen kennt. Durch Geschwindigkeitsreduktion und Neuplanung der Roboterbewegung, wird in geeigneter Weise auf die Anwesenheit des Menschen reagiert.
Erforscht und entwickelt wurde ein verteiltes Multi-Kamerasystem, welches konservative 3D Modelle aus Bilddaten rekonstruiert und das Ergebnis nutzt, um einem Robotersystem mitzuteilen, wo sich Menschen im Arbeitsraum aufhalten könnten. Die Ergebnisse resultierten in einer Dissertation. Evaluiert wurde das System bei einem deutschen Automobilhersteller.
Eckdaten zur Umsetzung:
Verteiltes System, bestehend aus Linux-Rechnern und FireWire-Kameras.
Wesentlicher Fokus lag auf Kamera (Kalibrierung/Registrierung), Bildverarbeitung, Entwicklung/Analyse von Algorithmen und Datenstrukturen im 2D und 3D.
Universität Bayreuth (Robotik und Eingebettete Systeme)
6 Monate
2011-01 - 2011-06
Mensch/Roboter-Koexistenz in der Automobil-Montage: Aufbau, Anbindung und Einrichtung eines kamerabasierten Sicherheitssystems zur Mensch/Roboter-Koexistenz bei einem Automobilhersteller zur Evaluation.
Aufbau, Implementierung von Interfaces und Konfiguration der kamerabasierten Überwachungskomponente.
Diplom Informatiker (Dipl.-Inf.), TU Kaiserslautern, Kaiserslautern
Diplom Informatiker (Dipl.-Inf.)
TU Kaiserslautern, Kaiserslautern
Schwerpunkte im Hauptstudium
Eingebettete Systeme
Computergrafik
Sensordatenverarbeitung
Robotik
Diplomarbeit
Entwicklung und Analyse von Algorithmen zur generischen Beschreibung, Simulation und Ansteuerung der Kinematik parallelkinematischer Strukturen.
Iterative Optimierungsverfahren
Codegenerierung mit Wolfram Mathematica
Softwareentwicklung unter Java und C++
Plattform: Windows und Linux
8 Jahre 11 Monate
1989-08 - 1998-06
Allgemeines Gymnasium
Allgemeine Hochschulreife, Gymnasium an der Heinzenwies, Idar-Oberstein
Allgemeine Hochschulreife
Gymnasium an der Heinzenwies, Idar-Oberstein
Kompetenzen
Kompetenzen
Top-Skills
SoftwareentwicklungEmbedded SystemsC / C++ / PythonCC++Clean CodePythonEmbedded SoftwareEmbedded LinuxAlgorithmenUnit TestingDockerGitLabGitIndustrielle BildverarbeitungObjektorientierte SoftwareentwicklungGraphical User InterfaceForschung & Entwicklung
Produkte / Standards / Erfahrungen / Methoden
Agile
Android Studio
Animation
Aspektorientierte Programmierung
Atlassian Bitbucket
Atlassian Confluence
Atlassian JIRA
automated testing
Backend Entwicklung
Backend-Entwicklung
Bildverarbeitung
Boost
Clean Code
Continuous Integration
Design Pattern
Design Patterns
Eclipse
Embedded
gcc
Git
GitHub
Gitlab
Google AdMob
Google Cloud Messaging (GCM)
Google Play Store
GPGPU
gradle
GUI
HTML
iptables
Jenkins
Kameratechnologie
Linux Administration
make
MessageBroker
Microsoft Visual Code
Microsoft Visual Studio
Netzwerk
OOA
OOD
OOP
OpenCV
OpenGL
Polarion
Printserver
QtCreator
Redis
Scrum
Skype
SmartHome
Software-Entwicklung
Softwareentwicklung
SSH
STL
SVN
TDD
Testing
TortoiseGit
Unit Tests
Visual C#
Visual Studio
Visualisierung
Volley
WPF
wxWidgets
XML
Z-Wave
Betriebssysteme
Android
Debian
Debian Linux
Embedded Linux
Embedded-Linux
Linux
Linux Mint
Microsoft Windows
Ubuntu
Unix
Programmiersprachen
.NET
Bash
Bash Shell
C
C#
C++
C++11
CMake
Java
JavaScript
JSON
Linux-Scripting
Perl
PHP
Python
Qt
Shell
TypeScript
Datenbanken
JDBC
MySQL
Postgres
SQL
SQLite
Datenkommunikation
Ethernet
HTTP
Internet, Intranet
MQTT
TCP/IP
Hardware
PC
Raspberry PI
Sensoren
Berechnung / Simulation / Versuch / Validierung
MKS (Mehrkörpersimulation)
Design / Entwicklung / Konstruktion
Blender 3D
Branchen
Branchen
IT-Dienstleistungen
Mobile Apps
Automotive
Forschung & Entwicklung
Einsatzorte
Einsatzorte
Bayreuth (+300km)
Deutschland
möglich
Projekte
Projekte
2 Jahre 2 Monate
2022-05 - 2024-06
Softwareintegration (mittels C/C++/Python) von FPGAs auf Embedded Linux Device (Yocto) im Bereich Kameras
Software-EntwicklerCC++Python...
Software-Entwickler
Softwareentwicklung im agilen (Scrum) Umfeld: Integration von FPGAs in die Software eines Embedded-Linux Gerätes (Kamera) unter Verwendung von C, C++ und Python. Entwicklung neuer, und Anpassung vorhandener Linux-Treiber, vorrangig im Userspace sowie darauf aufbauender Software. Einhergehend mit Unittests (Catch2) und Continuous Integration (Jenkins, Gitlab). Verwendung aktueller Code-Versionsverwaltungs- (git; gitlab) und Tickets-/Scrumboards-Werkzeugen (Atlassian). Ca. 95% Remote.
CC++PythonGitGitlabJenkinsAtlassian ConfluenceAtlassian JIRAYoctoEmbedded LinuxVisual Studio CodeUnittestClean CodeAgile SoftwareentwicklungScrumRemoteCatch2Continuous IntegrationCMakeBourne-again-shellDocker
1 Jahr 8 Monate
2020-09 - 2022-04
Softwareentwicklung Embedded Linux mit C/C++17, Qt, Python für Multi-Sensor-Device
Konzeption, Softwareentwicklung und TestingCC++17Qt...
Konzeption, Softwareentwicklung und Testing
Planung, Entwicklung und Analyse von Embedded-Softwarekomponenten in C/C++ unter Linux (Ubuntu und Embedded) für Multi-Sensor-Device im Industrie- und Automatisierungs-Umfeld.
Planung, Architektur, Entwicklung und Testing von Features (u.a. Z-Wave) für Embedded Linux Devices unter Linux in C/C++, Qt und Python in der Solarenergie-Branche.
Microsoft Visual CodeGitlabQtCreatorMicrosoft Visual StudioZ-Wave
Entwicklung und Analyse von Embedded-Features/Komponenten in C/C++ unter Linux (Ubuntu und Embedded) mit Eclipse für Sensoren im Industrie- und Automotive-Sektor.
Embedded-LinuxUbuntuPolarionAtlassian Bitbucket
C++C++11QtGitClean CodeOOAOODOOPDesign PatternsEmbeddedSvnCMakeGitHubRedisBackend Entwicklung
ifm syntron GmbH
Remote
6 Monate
2016-12 - 2017-05
C++ / Visual C# Softwareentwicklung - GUI
Software-EntwicklerScrumC#GUI...
Software-Entwickler
Entwicklung einer Desktop-GUI für Windows und einer Testframework-Anbindung mittels C# im Embedded Automotive Umfeld
Idee, Design, Konzept, Umsetzung und Veröffentlichung (1.-3.) von Android Apps:
Lernsoftware "Trainiere Einmaleins – 1x1": Android-App für Kinder zum Vertiefen des Einmaleins. Fokus lag in der Gestaltung eines intuitiven User-Interfaces, insbesondere durch Animation; Eintrag im Google Play Store. (Statistik: >140.000 Downloads, 310 Bewertungen, 4.5/5 Sterne, Stand: 13.02.2018)
Lernsoftware "Trainiere die Uhrzeit zu lesen": Android-App für Kinder zum Lernen von Uhrzeiten in analoger und digitaler Darstellung. Fokus lag auf der Integration von Werbung mittels Google AdMob; Eintrag im Google Play Store. (Statistik: >5.300 Downloads, 14 Bewertungen, 4.4/5 Sternen, Stand: 13.02.2018)
"Minigolf Punktekarte" zur Erfassung von Minigolf-Spielpunkten mit dem Smartphone: Android-App zur Erfassung von Spielpunkten. Fokus lag in der Gestaltung eines intuitiven und innovativen User-Interfaces; Eintrag im Google Play Store. (Statistik: >1.200 Downloads, 11 Bewertungen, 4.5/5 Sternen, Stand: 13.02.2018)
Ende-zu-Ende verschlüsselter Messenger für GPS-Positionen und Text (Android): Verknüpfte Kontakte können gegenseitig ihre aktuelle GPS-Position Ende-zu-Ende verschlüsselt abfragen/senden – bedarfsweise mit zusätzlichem Text. Fokus lag auf 'Google Cloud Messaging (GCM)', User-Interface mit Material Design und Notifications.
2 Android Consumer Apps für Smartphones und Tablets
Software-EntwicklerJavaAndroidRenderscript...
Software-Entwickler
Implementierung von Custom GUI-Komponenten, u.a. zum Laden und intuitiven Bearbeiten von Bildern (Skalierung, Drehung, Filterung, Ausrichtung) mittels Touch-Gesten.
Microsoft WindowsAndroid Studio
JavaAndroidRenderscriptCrashlyticsVolleyGsonActionBarSherlockSQLitegradleRedmineScrumGitTortoiseGitGoogle Play Services
Eigene Gründungsidee, gefördert durch EXIST (BMWi), ausgezeichnet beim Gründerwettbewerb (BMWi):
System zur Unterstützung des Verkaufspersonals im Fahrradfachhandel durch Einsatz von Tablet-Computern:
Aktuelle und multimediale Produktinformationen (Bilder, Videos), Verfügbarkeit/Lieferbarkeit, Produkt-Querverweise („Cross-Selling“) sind für den Verkäufer im Kundengespräch direkt griffbereit und können zur Beratung eingesetzt werden. (Somit entfallen kostenintensive, veraltete Produktkataloge sowie zeitaufwendige Recherchen am Computer.) Zusätzliche Multimediasäulen bieten die Möglichkeit die Inhalte der Tablet-Computer im Großformat mit gutem Klang zu präsentieren. Integrierte BikeFitting-Erweiterung: Mit Hilfe eines Stereo-Kamerasystems kann der Kunde innerhalb von 2-3 Minuten vermessen und auf Basis dieser Vermessung ein passendes Fahrrad sowie der erforderlichen Einstellungen (Sattelhöhe, Vorbau, ..) ermittelt werden.
Microsoft WindowsEclipseMicrosoft Visual StudioAndroid Studio
Administration der Linux-Rechner (Suse) am Lehrstuhl Angewandte Informatik III
Stellvertretung
Stellvertretung
7 Jahre 10 Monate
2004-07 - 2012-04
Sichere Mensch/Roboter-Koexistenz und -Kooperation; Umsetzung in C++, Qt unter Linux
Forschung und EntwicklungCC++Forschung...
Forschung und Entwicklung
Industrieroboter werden bislang hinter Schutzzäunen eingesetzt. Jedoch verspricht die direkte Zusammenarbeit zwischen Mensch und Roboter Synergieeffekte, d.h. eine kostengünstigere sowie flexiblere Produktion. Aus Sicherheitsgründen ist hierfür jedoch notwendig, dass das Robotersystem den Aufenthaltsort des Menschen kennt. Durch Geschwindigkeitsreduktion und Neuplanung der Roboterbewegung, wird in geeigneter Weise auf die Anwesenheit des Menschen reagiert.
Erforscht und entwickelt wurde ein verteiltes Multi-Kamerasystem, welches konservative 3D Modelle aus Bilddaten rekonstruiert und das Ergebnis nutzt, um einem Robotersystem mitzuteilen, wo sich Menschen im Arbeitsraum aufhalten könnten. Die Ergebnisse resultierten in einer Dissertation. Evaluiert wurde das System bei einem deutschen Automobilhersteller.
Eckdaten zur Umsetzung:
Verteiltes System, bestehend aus Linux-Rechnern und FireWire-Kameras.
Wesentlicher Fokus lag auf Kamera (Kalibrierung/Registrierung), Bildverarbeitung, Entwicklung/Analyse von Algorithmen und Datenstrukturen im 2D und 3D.
Universität Bayreuth (Robotik und Eingebettete Systeme)
6 Monate
2011-01 - 2011-06
Mensch/Roboter-Koexistenz in der Automobil-Montage: Aufbau, Anbindung und Einrichtung eines kamerabasierten Sicherheitssystems zur Mensch/Roboter-Koexistenz bei einem Automobilhersteller zur Evaluation.
Aufbau, Implementierung von Interfaces und Konfiguration der kamerabasierten Überwachungskomponente.