Themen

IoT, Web-Apps und Smartphone Apps

Ich entwickle Software als Fullstack-Entwickler. Dies umfasst Anwendungen im Bereich IoT (Internet of Things) sowie Web-Applikationen oder Smartphone-Apps.

Diese Leistungen lassen sich gut mit der Entwicklung von Embedded Software kombinieren.

Dabei setze ich auf folgenden Technologie-Stack:

  • Backend-Technologien
  • Python-Django
  • Django-Channels
  • Apache-Server
  • Frontend-Technologien
  • React-JS
  • JavaScript
  • jQuery
  • Bootstrap
  • Mobile Apps
  • React Native
  • Redux
  • Django-REST

Embedded Software

Ich entwickle Software für Embedded-Systeme in den Programmiersprachen C sowie C++.

Bei den Embedded-Systemen kann es sich dabei sowohl um Microcontroller (MCU) als auch um Mikroprozessoren (MPU) handeln. Zur Programmierung nutze ich entweder die vom Hersteller des Zielsystems mitgelieferte Entwicklungsumgebung oder Open Source Tools wie Platform IO.

Ich habe mich bereits mit folgenden Themen vertieft auseinandergesetzt:

  • Audio-Signalverarbeitung auf ARM-Cortex
  • Hardware-Interrupts
  • Unit Tests mit Unity
  • Serielle Kommunikation
  • I2C
  • Auslesen von Sensoren

Data Analytics

Ich ziehe die richtigen Schlüsse aus Ihren Daten und helfe Ihnen dabei, Entscheidungen auf dieser Grundlage zu treffen.

Als Physiker habe ich gelernt, komplexe Zusammenhänge zu verstehen. Dies verbinde ich mit meinen Fähigkeiten in der Softwareentwicklung. Dies konnte ich bereits in Projekten für den Luftfahrzeughersteller Airbus unter Beweis stellen. So habe ich beispielsweise ein numerisches Modell für die Positions-abhängige Vorhersage des Lärmpegels in Flugzeugen entwickelt.

Bei der Analyse von Daten nutze ich folgende Tools:

  • Matlab
  • Python
  • Keras
  • Tensorflow
  • numpy
  • pandas
  • SQL

Sollten Sie oder ich nicht über ausreichende Rechnerkapazitäten für Ihr Projekt verfügen, so berücksichtige ich gerne Nutzungskontingente für leistungsfähige Rechner aus der Amazon-Cloud in Ihrem Angebot.

Leistungen

Als freiberuflicher Softwareentwickler unterstütze ich Ihr Team bei der Entwicklung oder übernehme die vollständige Entwicklung Ihrer Software. Dabei können Sie mich für alle Phasen der Softwareentwicklung einsetzen:

  • Analyse
  • Entwurf
  • Implementierung
  • Test
  • Wartung

Arbeitsweise

Ich bevorzuge agile Vorgehensmodelle zur Softwareentwicklung.

Bei der Entwicklung setze ich generell Versionsverwaltungssoftware wie git oder svn ein. In Verbindung mit Codehosting-Plattformen wie Gitlab oder Github beugt dies Datenverlust vor und erleichtert die Arbeit im Team.

Neben der Nutzung von Code-Hosting-Plattformen biete ich ebenfalls die Einrichtung und Administration von Gitlab-EE auf Ihrem eigenen Server an. Dies umfasst die Implementierung von CI/CD Pipelines.

Ich setze Unit Tests ein, um die Teilkomponenten der Software bereits während der Entwicklung zu überprüfen. Das hilft mir, effizient zu arbeiten und meinen Kunden gibt es die Sicherheit, dass die fertige Software korrekt funktioniert.

Durch automatisierte Deployment Pipelines liefere ich Ihnen jederzeit den aktuellsten Stand Ihrer Software aus.

Ich arbeite von Hamburg aus im Homeoffice oder bei Ihnen vor Ort.

Spezialkenntnisse

Neben meiner Kompetenz in der Softwareentwicklung verfüge ich über folgende Spezialkenntnisse:

  • 6 Jahre Erfahrung in der Luftfahrzeug-Industrie
  • Vertiefte Kenntnisse in Akustik und Elektroakustik
  • Vertiefte Kenntnisse in digitaler Signalverarbeitung

Programmiersprachen

Ich beherrsche die folgenden Programmiersprachen:

  • Python
  • JavaScript (ECMAScript 2018)
  • JSX
  • C/C++
  • Matlab