Matthias Thömel verfügbar

Matthias Thömel

Software Entwickler C/C++; JAVA (Android); embedded; Linux; hardwarenah; Middleware; HMI

verfügbar
Profilbild von Matthias Thoemel Software Entwickler C/C++; JAVA (Android); embedded; Linux; hardwarenah; Middleware; HMI aus Hannover
  • 30159 Hannover Freelancer in
  • Abschluss: nicht angegeben
  • Stunden-/Tagessatz: 55 €/Std.
  • Sprachkenntnisse: deutsch (Muttersprache) | englisch (verhandlungssicher)
  • Letztes Update: 13.01.2019
SCHLAGWORTE
PROFILBILD
Profilbild von Matthias Thoemel Software Entwickler C/C++; JAVA (Android); embedded; Linux; hardwarenah; Middleware; HMI aus Hannover
DATEIANLAGEN
Referenzschreiben Bosch Radio/Navigations-Entwicklung
Der Download dieser Datei ist nur mit einem kostenpflichtigen Account möglich.
Erfahrungen und technische Kenntnisse
Der Download dieser Datei ist nur mit einem kostenpflichtigen Account möglich.
Projektliste
Der Download dieser Datei ist nur mit einem kostenpflichtigen Account möglich.
Project Reference
Der Download dieser Datei ist nur mit einem kostenpflichtigen Account möglich.
Skills
Der Download dieser Datei ist nur mit einem kostenpflichtigen Account möglich.
Linux Kernel Development Referenz
Der Download dieser Datei ist nur mit einem kostenpflichtigen Account möglich.
PORTFOLIO
SKILLS
Die folgenden Punkte beschreiben in etwa die letzten 10 Jahre, in meinen Dokumenten können Sie alles nachlesen:

·    TensorFlow KI Programmierung
·    Linux-Kernel-Treiber Entwicklung für DMA- und Tracing-Treiber
·    Projection auf Android Java API in Richtung Android Wear
·    P2P Verschlüsselung mit RSA 1024 Bit
·    Bluetooth Kommunikation auf Android Java API
·    Protokollayer für ein Kundenprotokoll zwischeneiner Verkehrsleitstelle und den Bussen im öffentlichen Bereich
·    UDP Scrambler um das Verhalten von UDP über Luftschnittstelle für den Test und die Entwicklung zu simulieren
·    Hoch-Parallele Bilddatenverarbeitung auf Nvidia GPUs (Filtering, Mustererkennung)
·    Embedded Mediaplayer Core Design und Implementation
·    Design einer Mediaplayer Datenbank für SqLite inklusive prototypischer SqLite SQL Abfragen für SqLite Performance Analyse unter embedded Linux
·    Entwicklung eines Function Tracing Tools für embedded Linux als Preload Bibliothek
·    Entwicklung eines Memory Tracing Tool für embedded Linux als Preload Bibliothek
·    Einführen einer Eclipse-CDT Debugging Umgebung unter X86 (uBuntu) für embedded Linux (ARM) Debugging
·    Portierung von C/C++ Software von t-kernel auf X86 Linux und ARM embedded Linux (Monta Vista) unter GNU-EABI (C/C++), inklusive Buildsystem-Anpassungen für Cross-Compile mit GNU EABI Toolchain

·    Thread-Control und -Scheduling Framework für CUDA 5.0
·    Eigenes State Machine Framework für generierte Statemaschinen
·    Memory- und Function-Trace Tools für embedded Linux (C/C++)
·    Oberfläche für ein Live-Soundmixing-System (C# / .NET)
·    Portierung der LUA Script Bibliothek auf ein embedded Target
·    Erweiterung des Nucleus+ OS in C
·    Diverse Optimierungen für die C55 DSP Software (RAMSET, Stackmove)
·    Erweiterung des DSP/BIOS um Analysefunktionen und Task-Steuerung
·    Applikationsverwaltung auf Basis C55 DSP/BIOS
·    Diverse Devices und Treiber unter VxWorks
·    Realisation eines eignen DSP Multitasking Echtzeit-Betriebssystems als Basis für diverse Teilprojekte (für DSP 56826)
·    Verteiltes System zur Übermittlung von Internetdaten zum Mobile Phone und zurück (Japanische Nutzer)

·    Linux Coherence Memory Interface (ARM v7)
·    Bluetooth (Android API)
·    MOST-Bus für vernetzte CAR Multimedia Systeme
·    MIDI unter Windows (für Digitale Mischpulte; System-Exclusive, Controller-Daten)
·    AIC23 AD/DA Wandler
·    Serielle Interfaces unter DSP und VxWorks

·    iMX6, ARM V7 (Linux/Kernel)
·    ARM Prozessor (WinCE 4.2)
·    Nvidia-GPU (GT-260) Stream Processors (CUDA 5.0)
·    ARM Triton 3 Core System on Chip (Kundenentwicklung) (t-kernel und embedded Linux)
·    Texas Instruments OSK5912, OSK5946 (Trinity-OSK)
·    Texas Instruments OMAP5912 (C55 DSP), OMAP5946 (Trinity) (C55 DSP)
·    Motorola DSP 56826

·    ArgoUML + eigenes State Machine Framework
·    TresosGUIDE mit XML Export und Crosscompiler auf C
·    Rational Rose für Realtime (PPC860)
 
REFERENZEN
Auszug aus meiner Projektliste:

Systemdesigner und Senior-Developer / Architekt für ein HMI- und Navigationsmodul (embedded Linux und t-kernel auf ARM-Multicore System on Chip)
Zeitraum:
2010.2 – 2013.10

Hardware:
Triton  Prozessor (3 Core ARM Architektur, embedded Linux), MOST-Bus

Software:
Embedded Linux (Monta Vista), SqLite embedded, uBuntu X86 Linux, t-kernel, C/C++, STL, Eclipse-CDT, GNU EABI Toolchain, K2L MOST Tooling, Trace-Tool, perf für Linux, Lauterbach-Debugger, ClearCase

Tätigkeiten:
  • Erste Portierung vorhandener Software auf X86 Linux
  • Erste Portierung vorhandener Software auf embedded Linux für GNU EABI gcc inklusive der Buildsystem Anpassungen für Cross-Compile mit GNU EABI
  • Einführung von Eclipse remote CDT Debugging für Target unter X86 Linux mit GNU EABI gdb/gdbserver
  • Entwicklerworkshops für C/C++, Buildsystem, Download-System, Remote-Debugging
  • Zwei Geräte-Muster Präsentationen in Detroit/USA (2011)
  • Entwicklung eines Memory-Tracers als Preload für embedded Linux
  • Entwicklung eines Function-Tracers als Preload für embedded Linux
  • Redesign der Mediaplayer Datenbank im embedded Linux
  • C/C++ Code Review der gesamten Modulsoftware
  • Coaching und Steuerung der Mediaplayer Entwicklergruppe bei Monta Vista
  • Fehlersuche und Fehleranalyse im Gesamtsystem (MOST, externe Komponenten, HMI-Modul)
  • Leitung der Performance Task-Force für den t-kernel Teil des Systems
  • Support aller Entwickler im Bereich Fehlersuche, Debugging, Codedesign, Architektur, Systemdesign
  • Mitarbeit im Bereich Performance Analyse im embedded Linux
  • Performance Analyse einiger Prozesse im embedded Linux
  • Analyse von Audio Problemen im Gesamtsystem (MOST, externe Komponenten, t-kernel, Linux)
  • Betreuung aller Entwickler und Fachteamleiter in technischen und systemischen Fragen
  • Fachteamleitung für Media Player Core Entwicklungsteam
  • Entwicklung eines State Machine Frameworks für generierte State Machines mit ArgoUML
  • Entwicklung eines sehr schnellen SQLite3 Abstraktionslayers für eine Mediaplayer Applikation

 
Privates Parallelprojekt: Hochparallele Bilddatenverarbeitung auf Nvidia GPU Stream Prozessoren mit CUDA
Zeitraum:
2012.12 – 2013.02

Hardware:
Nvidia GPU (GT-260)

Software:
Windows, CUDA 5.0, WT (WebToolkit), Videoinput

Tätigkeiten:
  • Entwicklung eines Thread-Control und -Scheduling Frameworks um tausende Threads auf den Stream Prozessoren zeitgesteuert zu starten und zu unterbrechen
  • Entwicklung eines Webfrontends für die CUDA Software
  • Entwicklung von Filter und Bilderkennungsalgorithmen für die Stream Prozessoren

Entwickler für mobile Geräte im Bereich öffentlicher Nahverkehr
Zeitraum:
2013.10 – 2014.02

Hardware:
ARM CPU

Software:
WindowsCE 4.2, Subversion, MS Developer Studio

Tätigkeiten:
  • Design und Entwicklung eines UDP Scramblers der das Verhalten von UDP Pakten auf einer Luftschnittstelle simuliert (als Testtool)
  • Design und Entwicklung eines Kommunikationslayers für ein kundenspezifisches Protokoll zwischen Leitstelle und den Bussen im öffentlichen Nahverkehr
  • Design und Entwicklung von Tools (perl/tk) für einen Software Produktionsprozess für ein mittelständisches Unternehmen auf Basis von SVN

 
Systemdesigner und Senior-Developer (embedded Linux auf iMX6 Multicore)
Zeitraum:
2014.02 – 2015.09

Hardware:
iMX6, Kundenhardware

Software:
Embedded Linux, SqLite3 embedded, uBuntu X86 Linux, C/C++, STL, Eclipse-CDT, GNU EABI Toolchain, perf für Linux, ClearCase

Tätigkeiten:
  • Kernteam-Member für Media Player Core Entwicklungsteam
  • Bugfixing, Weiterentwicklung Mediaplayer
  • Design und Implementierung für Content Sharing Funktion
  • Einführung des Statemachine-Framework für Phone Komponente, Schulung der Mitarbeiter, Designmeetings für diese neue Komponente

 
Private Parallelprojekte: Android Apps für Phone und Wear
Zeitraum:
2015.02 – 2015.07

Hardware:
diverse Android Phones und Tables; Android Wear

Software:
JAVA, Android JAVA API, Open GLES, Android Studio, Corel Draw, Videoschnitt

Tätigkeiten:
  • Entwicklung von Android Spielen und Apps:
  • TopLoad: Casual Game
  • Adjustment: Casual Game
  • Nexty – Advanced Bluetooth Chat für Phone und Android Wear (Watch)
  • Phone Remote Control für Android Wear
  • Komplette Produktionskette:
  • Planung, SW-Design, Grafik-Design, Implementierung, Test, Vermarktung (mit Funktionsvideos)

Link
https://play.google.com/store/apps/developer?id=Matthias+Credits

 
Linux Treiberentwicklung: DMA Treiber / Device Tree
Zeitraum:
2016.10 – jetzt

Hardware:
Altera SocKIT (ARM CPU + FPGA)

Software:
Linux kernel, C, gcc toolchain,  make, Eclipse CDT, perl, GoogleTest

Tätigkeiten:
  • Entwicklung eines DMA Treibers unter Linux als Teil einer Plattform-Entwicklung für Magnet-Resonanz-Spektrografen
  • Entwicklung eines Tracing Systems mit minimalem Overhead, einsetzbar in Linux Treibern und Userland
  • Mit bash und perl Scripten zur Visualisierung der Traces
  • Analyse des vorhandenen Treibers
  • Integration von Google Test Framework und Herstellung von Google Testcases
  • Softwaredesign des DMA Treibers
  • Konfiguration des devce tree für neuen DMA Treiber und vorhandene Produkt Treiber
  • Entwicklung eines Character Device Drivers zur rekursiven Interpretation des spezifischen Plattform device tree
  • Entwicklung, Test, Dokumentation

 
ZEITLICHE UND RÄUMLICHE VERFÜGBARKEIT
Ich möchte in Hannover arbeiten. Hauptsächlich Remote also. Zu Besprechungen kann ich gerne zum Auftraggeber fahren.
KONTAKTANFRAGE VERSENDEN

Ja, ich akzeptiere die AGB

Ja, ich akzeptiere die Datenschutzbestimmungen

Hinweis: der Versand ihrer Kontaktanfrage ist komplett kostenfrei

WEITERE PROFILE IM NETZ