Softwareentwicklung C/C++ unter Linux, Linux-Systemintegration & Admin, Embedded Systems
Aktualisiert am 26.11.2021
Profil
Referenzen (1)
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.09.2022
Verfügbar zu: 100%
davon vor Ort: 10%
C++
Embedded Linux
OOP
embedded
Deutsch
Muttersprache
Englisch
sehr gut
Französisch
mittelmässig
Italienisch
gut

Einsatzorte

Einsatzorte

Berlin (+100km) Malchin (+100km) München (+100km) Mindelheim (+100km)
möglich

Projekte

Projekte

1 Jahr 9 Monate
2019-06 - 2021-02

Implementierung von Software für Infusionspumpen

Software-Entwickler C++11 Linux-Kernel Device-Tree ...
Software-Entwickler
  • Anpassung der umfangreichen Codebasis an aktuelle Compiler, neue C++-Standards (C++03 -> C++11), neue Boost-Version, große Teile durch Konstrukte aus der Standardbibliothek ersetzt, viele Bugfixes in Buildumgebung und C++-Code: Anwendungscode, Upstream-Pakete, Kernel
  • Redesign der Betriebssystem-Anbindung, Dateisystem-Layout & -Verschlüsselung, Skripten, Umstellung zahlreicher Services von SysV- und Busybox-Init auf Systemd unter Beibehaltung von Kompatibilität zu Legacy-Plattformen
  • Design und Implementierung einer Wireless-LAN-Abstraktionsschicht über alte Codebasis, Implementierung der Kommunikation mit Kernel über Linux-Netlink / nl80211 unter Beibehaltung der Kompatibilität zu Linux WExt-API auf Legacy-Plattformen
  • Realisierung zweier CAN-Schnittstellen, Debugging von Treibern und Anpassungen im Device-Tree
  • Kommunikation mit Platinenherstellern auf Schaltplan-Ebene
  • Design und Implementierung eines modularen Build- und Test-Frameworks in Python, mit dem sich alle in der Abteilung vorhandenen Test- und Produktionsimages integrieren und testen lassen, integriertes Dependency-Management, Paketerstellungs- und Deployment-Pipeline, unterstützt Debian, Ubuntu, CentOS
  • Anpassungen in Qemu Upstream
  • Virtualisierung verschiedener vorhandener embededded-Linux-Distributionen unter Qemu, Integration in Test-Framework
  • Deployment desselben über eigene Git- und Paketrepositories
  • Implementierung von Webpages zur Konfiguration der Pumpen mit Python (cherrypy)
  • Review von Pull-Requests
  • Begleitung und Qualitätssicherung der Hardwareentwicklung
  • Dokumentation der Arbeit in Git, in eigenem Wiki, Jira, Bitbucket
  • Kommunikation mit den Upstream-Softwareentwicklern und Kollegen in den USA
Buildroot U-Boot Device-Tree i.MX6 SAMA5D3 Cortex-A5 Atlassian Jira Atlassian Bitbucket
C++11 Linux-Kernel Device-Tree Python CMake GNU Make
B.Braun Melsungen AG
Melsungen / Home Office
4 Jahre 4 Monate
2015-03 - 2019-06

Entwicklung Audio-Hardware

Entwickler C++ embedded Linux Wt ...
Entwickler

Entwicklung einer Linie von Geräten zur Verteilung von Audio über Netzwerk

  • Implementierung eines Softwarestacks auf ARM Cortex (embedded Linux)
  • Web-Interface zur Bedienung
  • Synchronisierung der Zustände der Nodes
  • Anbindung externer Chips über SPI, I2C, USB
  • Leiterplattendesign
  • Gehäusedesign

Im Rahmen dieses umfangreichen Projekts wurde auf diversen Microcrontrollern der STM32-Familie ein anspruchsvoller Software-Stack realisiert, der die Geräte in die Lage versetzt, ihre Zustandsdaten (Pegel, Meter, Routing, Effektgerätparameter) nicht nur zu steuern, sondern über ein proprietäres Protokoll netzwerkweit M2M-Bedienclients zur Verfügung zu stellen. Ein embedded Webserver liefert außerdem eine moderne Webapplikation (Progressive Web App) aus, mit der diese Parameter jeweils von Menschen bedient werden können. Zum Einsatz kommt embedded Linux, Buildsystem ist Yocto / Poky / OpenEmbedded. Der Stack besteht aus vielen Bibliotheken und Services, und ist größtenteils in modernem C++ geschrieben, einschließlich der Webapp.

ARM Cortex STM32 Segger J-Link OpenOCD FreeCAD KiCad Google Test GCC Clang GNU Make Lighttpd
C++ embedded Linux Wt Unix-Netzwerk-Programmierung CMSIS U-Boot ARM Assembly Buildroot Yocto Python
janware GmbH
Schliersee
6 Jahre 2 Monate
2013-05 - 2019-06

Infrastruktur janware GmbH

Admin / Entwickler / Geschäftsführung C++ Wt Perl ...
Admin / Entwickler / Geschäftsführung

Design, Implementierung, Betrieb und Wartung der Firmeninfrastruktur

  • Administration der Server für Web, E-Mail, DNS, Dateiservice (NFS, Samba, FTP, TFTP, WebDAV), LDAP, DHCP, NTP, OpenVPN, GroupDAV, MySQL, Wiki, Bugzilla, RPM- and Debian-Repositories, OwnCloud, diverse Kollaborationstools, Codeanpassungen bei zahlreichen Komponenten, Versionierung und Deployment derselben
  • Implementierung und Dokumentation von CD/CI - Pipeline (Git-Repos -> Build-/Test-Server -> Paketrepositories)  für eigene und Third-Party-Software , Software Dependency-Management
  • Thinclient-Arbeitsplätze
  • Betreuung von Kunden, einem fest angestellten und mehreren freiberuflichen Mitarbeitern.
  • Entwicklung von Audio-Hardware siehe anderes Projekt.
Bugzilla SOGo OwnCloud Linux mySQL OpenLDAP 389-Directory-Server DokuWiki OpenVPN Apache nginx Postfix Cyrus BIND9 MariaDB WebDAVCGi Bootstrap ISC DHCPD Samba iptables RPM ProFTPD SWIG Git
C++ Wt Perl HTML5 PHP git Management Python JavaScript Bash
janware GmbH
Schliersee
3 Monate
2018-12 - 2019-02

Portierung von Serversoftware von Solaris auf Linux

Software-Entwickler & Administrator C++ C++ 14 Linux ...
Software-Entwickler & Administrator

Migration von Software für den Betrieb von Notrufsäulen an deutschen Autobahnen von Solaris auf Linux

  • Diverse unternehmenskritische Daemons von Solaris auf Linux portiert (RHEL 7)
  • Neues Buildsystem eingeführt, mit Unterstützung für Paketerstellung, Versionierung und Deployment-Pipeline
  • Einführung von Git-SVN in den Workflow
  • Anpassung der Sourcen an Linux-typische Deployments (Systemd, Konfigurationsdateien, FHS, usw)
  • Software-Paket-Repositories eingerichtet, einschließlich FTP-Server, Firewall- und SELinux-Administration
  • Integration in unternehmenseigene DevOps-Prozesse (Jenkins)
  • Deployment mit Ansible
  • Dokumentation in eigenem Wiki
  • Tracken von Aufwänden, Projektfortschritt und Abhängigkeiten zwischen Arbeitspaketen in eigenem Ticketsystem
gcc clang Jenkins RHEL SysV Make DokuWiki GNU Make Ansible
C++ C++ 14 Linux GNU Make
GDV DL GmbH
Hamburg
5 Monate
2016-10 - 2017-02

Machbarkeitsstudie Migration Windows NT Embedded auf Linux

Software-Entwickler Reverse Engineering Windows NT Embedded Kerneltreiber ...
Software-Entwickler

Modernisierung Fahrgastinformation und Bordrechner

In diversen System eines Verkehrsnetzbetreibers (Fahrzeug-Bordrechner, Fahrgastinformation) kommen Windows-NT-Embedded-Rechner zum Einsatz. Eine Migration auf Linux und freie Software soll geprüft werden, mangels Dokumentation der bestehenden Systeme kommen dabei Techniken des Reverse Engineering zum Einsatz.

Kollaborationsplatform für das Projektteam eingerichtet und gepflegt (Wiki, Ticketsystem, Dateiserver, Controlling-Tools, Code- und Paketrepositories, DevOps-Spielregeln dokumentiert), Reverse Engineering von Windows NT Embedded Geräten, Linux-Distribution erstellt, automatische Erzeugung derselben aus Paketquellen + Git implementiert, Linux-Soundtreiber für Geode-Chip geschrieben, Soundtreiber in Wine gehackt, I2C-Geräte unter Wine ansprechbar gemacht.

gcc clang GNU Make wine python bash
Reverse Engineering Windows NT Embedded Kerneltreiber Wine I2C Linux-Administration Netzwerke Embedded Linux
SWM GmbH
München
1 Jahr 4 Monate
2013-11 - 2015-02

Entwicklung und Support Digital Signage System

Software-Entwickler, Supportmitarbeiter C++ Wt Perl ...
Software-Entwickler, Supportmitarbeiter

Das bestehende Digital Signage System wurde modernisiert und mit einer interaktiven HTML5-Weboberfläche zur Bedienung versehen. Bestehende Service-Level-Agreements wurden entsprechend der Konzern-internen Vorgaben des Kunden angepasst und ITIL-Konformität dokumentiert.

Wt
C++ Wt Perl MySQL HTML5 JavaScript PHP ITIL LDAP
BMW
München
6 Monate
2013-11 - 2014-04

Messung von Schallleitung in Schnee

Soft- und Hardware-Entwickler AutoCAD C++ Unix-Shell-Programmierung ...
Soft- und Hardware-Entwickler

Für die Erforschung von Möglichkeiten zur Beurteilung von Schneedecken wurde eine Apparatur entwickelt, mit der sich die Ausbreitung von Schallwellen in Schnee messen lässt. Es wurde nach Vorgaben ein Gerät zur Körperschallübertragung konstruiert, gebaut und in einem Wiki dokumentiert, das von der Universität zur Messung verwendet wurde. Dateien mit Testsignalen wurden erzeugt und zur Verfügung gestellt. Ein Mitarbeiter wurde eingestellt und für die Experimente angeleitet.

Octave
AutoCAD C++ Unix-Shell-Programmierung git Signalverarbeitung Matlab Embedded Linux Python
Universität Heidelberg
Schliersee
2 Jahre 11 Monate
2010-05 - 2013-03

Entwicklung und Support Digital Signage System

Entwickler, Supportmitarbeiter Linux C++ Unix-Shell ...
Entwickler, Supportmitarbeiter
Das bestehende Digital Signage System wurde weiterentwickelt und gewartet.
openSUSE Linux 11.2 - 12.1 Bind-9.8 Proftpd 1.2.x ISC dhcpd 4 PHP 4 PHP 5 NTP 4.x openLDAP
Linux C++ Unix-Shell DNS DHCP Apache Wt Perl mySQL git LDAP
BMW
München / Schliersee
8 Monate
2009-10 - 2010-05

Projektleitung Softwareprojekt

Projektleiter Projektleitung Perl Bugzilla ...
Projektleiter

Ein Softwareprojekt des Kunden war stark im Verzug und benötigte externe Beratung. Zum Aufgabenbereich gehörte die Anleitung und Koordination von etwa 20 Entwicklern, die Einführung von Source-Code-Management, Ticket-System, eines einfachen und selbstgeschriebenen Zeitmanagement-Tools, von Wikis, stringenter Dokumentation des Kundenprojektes, die Kommunikation mit dem Kunden des Kunden und technische Entscheidungen. Bugzilla wurde zu einem Projektmanagement-Tool erweitert.

Bugzilla Jira MySQL
Projektleitung Perl Bugzilla Atlassian JIRA
Salzbrenner Stagetec
Buttenheim
2 Jahre 2 Monate
2007-08 - 2009-09

Entwicklung digitales Mischpult

Software-Entwickler C++ Unix-Netzwerkprogrammierung Windows Netzwerkprogrammierung ...
Software-Entwickler

Für ein großes Mischpult wurde eine native Klangverarbeitung mit niedriger Latenz entwickelt. Linux-Kerneltreiber für die Audio-Interfacekarten wurden für den Realtime-Einsatz angepasst.

RTAI Linux
C++ Unix-Netzwerkprogrammierung Windows Netzwerkprogrammierung Signalverarbeitung Realtime Embedded Linux
Salzbrenner Stagetec
Schliersee
3 Jahre 1 Monat
2006-08 - 2009-08

Entwicklung Digital Signage System

Projektleiter / Entwickler C++ Java Qt ...
Projektleiter / Entwickler

Für einen Autohersteller wurde Hard- und Software für ein Digital Signage System entwickelt. Das System besteht aus etwa zweihundert embedded Rechnern, die zeitsynchron in verschiedenen Formaten Audio- und Video wiedergeben, nebst Steuer-, Prozessing und Archivrechnern. Die Ausspielrechner booten via PXE vom Netz und werden via PoE mit Strom versorgt. Das System lässt sich über eine Java-Bibliothek von der Mediensteuerung des Auftraggebers fernsteuern und läuft ansonsten autark. Implementiert wurde die multiclientfähige Steuerungssoftware, Netzwerk-Monitoring-Tools, die Ausspielsoftware, diverse Kerneltreiber und viele Skripte zur Integration der Rechner. Gehäuse der embedded Computer wurden mit AutoCAD konstruiert, Layout verschiedener Platinen der Rechner mit gEDA erstellt.

Benutzerverwaltung, Monitoring, DNS-, DHCP-, FTP-Services mit LDAP-Backend implementiert. Replikation über mehrere Standorte aufgesetzt und gepflegt.

OpenLDAP RHEL SUSELinux
C++ Java Qt Shell G-Code Python PHP Perl Unix-Netzwerkprogrammierung Apache Signalverarbeitung FFMpeg Gehäuseentwicklung MADI AES3 SDI Embedded Linux LDAP
BMW
Schliersee / München
5 Monate
2005-11 - 2006-03

Entwicklung grafische Oberfläche für Mischpult

Software-Entwickler C++ Qt Unix-Netzwerkprogrammierung ...
Software-Entwickler

Für ein großes Theatermischpult (mehrere 1000 Bedienparameter) wurde mit Qt eine grafische Benutzeroberfläche programmiert. Die Oberfläche wurde auf mehreren Monitoren im Mischpult angezeigt, die über Xdmx angesteuert werden. Die Integration der Software auf mehreren embedded Rechnern im Mischpult und die Fernwartung gehörte zur Aufgabe.

SuSE Linux 10.3 ELinOS gcc
C++ Qt Unix-Netzwerkprogrammierung Embedded Linux
Salzbrenner Stagetec
Homeoffice / Buttenheim
1 Jahr 2 Monate
2002-11 - 2003-12

Aufbau der Supportinfrastruktur für ein Mischpult

Projektleiter Projektleitung
Projektleiter

Für ein großes Theatermischpult wurde eine Support-Infrastruktur eingerichtet. Dazu zählte die Koordinierung der Soft- und Hardwarezulieferer, der Einsätze der Techniker beim Kunden, die Anbindung der Kunden per VPN, die Einrichtung und Pflege einer Hotline, einer Ticketdatenbank und eines primitiven Warenwirtschaftssystems, und die Kommunikation mit den Kunden. Für letztere wurde den Kunden ein Portal mit Ticketdatenbank, Produktinformationen und Datei-Downloads eingerichtet.

Bugzilla MySQL Perl PHP LDAP Apache
Projektleitung
Salzbrenner Stagetec
Homeoffice / Deutschlandweit / Buttenheim
1 Jahr 4 Monate
2001-07 - 2002-10

Entwicklung DSP-Server für Mischpult

Software-Entwickler C++ Unix-Netzwerkprogrammierung Windows-Netzwerkprogrammierung ...
Software-Entwickler

Für ein großes Mischpult (mehrere 1000 Bedienparameter) wurde ein multiclientfähiger DSP-Server konzipiert und implementiert. Die Tonverarbeitung wurde von einer Drittfirma geliefert. Die Schnittstellen für deren Bedienung wurden spezifiziert und die dann gelieferten Karten abgenommen, Linux-Kerneltreiber dafür programmiert, die Parameter und Pegelanzeigen als multiclient-fähiger TCP/IP-Netzwerkdienst zur Verfügung gestellt, eine Windows Client-DLL für die Bedienoberfläche programmiert.

Linux Kernel 2.4.x Win32 gcc Visual C++ 6.0 Linux x86
C++ Unix-Netzwerkprogrammierung Windows-Netzwerkprogrammierung Embedded Linux Kerneltreiber
Salzbrenner Stagetec
Homeoffice
4 Monate
2001-03 - 2001-06

Entwicklung DSP-Server für Spracherkennung

Software-Entwickler Mustererkennung C++ STL ...
Software-Entwickler

Für eine CTI-Software, die in Massencallcentern eingesetzt wurde, wurde ein modulares System zur sprecherunabhängigen Spracherkennung entwickelt. Der Wortschatz war gering ("Eins" bis "Neun", "Ja", "Nein"). Das Programm übernahm die Merkmalsextraktion und Zuordnung der Audio-Daten zu den erkannten Worten. Es war als Client-Server-Architektur aufgebaut, programmiert wurde sowohl der Server in C++, als auch die Client-Software in C++ und Delphi. Die Integration der Produktions-Server gehörte zum Aufgabenfeld.

Win32 gcc Visual C++ 6.0 Linux GCC GNU Make
Mustererkennung C++ STL CVS GNU-Make Delphi Embedded Linux
Voice Robots GmbH
Heidelberg
3 Monate
2001-01 - 2001-03

Aufbau eines Firmen-Netzwerks

Netzwerk-Administrator Netzwerkadministration
Netzwerk-Administrator

Das Intranet einer Firma wurde konzipiert und an das Internet angebunden. Dazu gehörte auch das Aufsetzen der In-House betriebenen Web- und Mailserver mit dem Webservice der Firma (Einkaufsgutscheine in PHP) und Firewall. Intranet: DHCP-, DNS-, NTP-, Dateiserver (Samba), Windows-Arbeitsplatzrechner, DMZ / Internet: Konzeption und Implementierung einer zweistufigen Firewall, redundanter Web-, Mail- und DNS-Server, Programmierung von PHP-Skripten zur Administration der Services, Verhandlungen mit dem Provider

Debian Linux 2.2 Linux Kernel 2.2 Bind 9.1 Apache Postfix Xntp Windows 2000 Samba MySQL
Netzwerkadministration
Geenee GmbH
Berlin
6 Monate
2000-03 - 2000-08

Homebanking-Server PIN / TAN

Software-Entwickler Netzwerkadministration Windows-Netzwerkprogrammierung Unix-Netzwerkprogrammierung ...
Software-Entwickler

Bereits bestehende CORBA-Server wurden an die Business-Logik des Projektes angepasst und getestet. Die Arbeit wurde dokumentiert, nebst der bestehenden anderen Server. Das Netzwerk des neuen Projektbüros wurde geplant und administriert, das betraf der Arbeitsplatzrechner unter Windows NT, den Testserver unter Solaris und die Anbindung des Netzwerkes an die Bank via VPN. Außerdem wurde die vorhandene Netzwerkimplementierung eines Home-Banking-Client unter Palm-OS debugged und gefixt.

Sun Spark Ultra 10 Intel x86 Palm V Solaris 5.6 Linux 2.2 Solaris CC IONA Orbix 3 4.4BSD Sockets Palm OS Metrowerks Code Warrior für Palm OS
Netzwerkadministration Windows-Netzwerkprogrammierung Unix-Netzwerkprogrammierung C C++ Unix-Shell TCL CORBA IDL
Deutsche Bank / emagine
Berlin
3 Monate
1999-07 - 1999-09

Entwicklung Brokerage Server

Software-Entwickler Unix-Netzwerkprogrammierung C / C++ Unix-Shell
Software-Entwickler

Ein Proxy-Server für die Anbindung eines proprietären Chipcard-Clients an das Bank-Backend wurde in C++ programmiert. Ein C++-API für Test-Plugins wurde implementiert. Ein Thread-Handler für die Firmen-Bibliothek wurde neu geschrieben. Das Deployment der Software und die Administration der Test- und Produktionsrechner nebst der Datenbanken (Oracle 8i) und CORBA-Infrastruktur gehörte zur Aufgabe. Die eigenen Arbeit und das Gesamtprojekt wurde dokumentiert.

Solaris 5.6 HP-UX IONA Orbix 3 4.4BSD Sockets Oracle 8i Solaris CC
Unix-Netzwerkprogrammierung C / C++ Unix-Shell
Deutsche Börse / GEFM mbH
Frankfurt
8 Monate
1998-08 - 1999-03

Entwicklung HBCI Server

Software-Entwickler Unix-Netzwerkprogrammierung C C++ ...
Software-Entwickler

Ein Proxy-Server für die Anbindung eines undokumentierten aber quelloffenen HBCI-Servers einer Drittfirma an das Bank-Backend wurde in C++ programmiert. Die Anbindung an das Bank-Backend erfolgte über CORBA. Das Deployment der Software und die Administration der Test- und Produktionsrechner gehörte zur Aufgabe. Die eigenen Arbeit und das Gesamtprojekt wurde dokumentiert.

IBM RS/6000 PPC AIX 4.2.1 IONA Orbix 2 4.4BSD Sockets
Unix-Netzwerkprogrammierung C C++ Unix-Shell Rational Rose CORBA
Deutsche Bank / GEFM mbH
Frankfurt
4 Monate
1998-02 - 1998-05

Perspektivische Entzerrung von Unfallaufnahmen

Software-Entwickler Bildverarbeitung Objekterkennung C
Software-Entwickler

Für das Umrechnen von perspektivischen Aufnahmen von Verkehrsunfällen in Draufsichten wurde eine DLL erstellt, die die nötigen Bildbearbeitungs-Algorithmen zur Verfügung stellt. Zum Testen wurde ein grafisches Tool in Visual Basic programmiert, mit dem diverse Fixpunkte in der Originalaufnahme markiert und deren gemessene Koordinaten eingegeben werden konnten. Außerdem wurde eine Windows-DLL in C++ mit Konversionsroutinen zwischen diversen Grafikdateiformaten implementiert.

Visual C++ 1.5 Win 3.1 SDK MFC 2.5 Visual Basic 3.0
Bildverarbeitung Objekterkennung C
Delta Software GmbH
Freiburg
2 Jahre
1996-02 - 1998-01

Entwicklung einer Beschreibungssprache für Neuronale Netzwerke

Software-Entwickler neuronale Netzwerke Objekterkennung C ...
Software-Entwickler

Eine Beschreibungssprache nebst Interpreter für komplexe Neuronale Netze zur Erforschung des visuellen Systems wurde entwickelt. Ein- und Ausgabe der Daten war sowohl aus ASCII-Dateien als auch als Windows Bitmap möglich. Eine grafische Benutzeroberfläche in C für XLib / OSF Motif wurde ebenfalls entwickelt. Die Interpreter-Engine wurde mit Perl- und Shellscripten automatisiert.

DEC-Alpha Workstations Digital UNIX V4.0D Xlib OSF/Motif IDL
neuronale Netzwerke Objekterkennung C Unix-Shell Perl IDL (eine Datenbeschreibungssprache ähnlich Mathlab)
Universität Marburg
Marburg
2 Jahre
1996-02 - 1998-01

Entwicklung eines Animationsprogramms

Software-Entwickler Neuronale Netzwerke C Unix-Shell
Software-Entwickler
Ein Animationsprogramm wurde entwickelt, das aus Trajektorien im dreidimensionalen Raum Filme erzeugt, die zum Training neuronaler Netzwerke benutzt werden.
DEC-Alpha Workstations Digital UNIX V4.0D Xlib OSF/Motif
Neuronale Netzwerke C Unix-Shell
Universität
Marburg

Aus- und Weiterbildung

Aus- und Weiterbildung

Diplomphysiker (Nebenfach Mathematik)
Metallflugzeugbauer

Position

Position

Softwareentwickler, Systemintegrator und Berater für Softwarelösungen unter Linux

Kompetenzen

Kompetenzen

Top-Skills

C++ Embedded Linux OOP embedded

Produkte / Standards / Erfahrungen / Methoden

389-Directory-Server
Apache
Atlassian Bitbucket
Atlassian JIRA
Bildverarbeitung
Bind 9
Bootstrap
Bugzilla
Buildroot
clang
CMSIS
CVS
Debian
DHCP
DNS
DokuWiki
FFMpeg
gcc
git
HTML5
IONA Orbix 2
IONA Orbix 3
ISC dhcpd 4
Jenkins
Jira
Kerneltreiber
KiCad
LDAP
Lighttpd
Metrowerks Code Warrior für Palm OS
MFC
nginx
NTP
OpenLDAP
openSUSE / SLES
OSF/Motif
OwnCloud
Postfix
ProFTPD
Qt
Rational Rose
RHEL / CentOS / Fedora
RPM
RTAI
RTAI Linux
RTLinux
Samba
Signalverarbeitung
SOGo
STL
STM32
SysV Make
U-Boot
Visual C++
Win 3.1 SDK
Win32
Windows NT Embedded
wine
Wt
Xlib
Xntp
Yocto
Yosys
 

Betriebssysteme

AIX
Device-Tree
Digital UNIX
ELinOS
embedded Linux
HP-UX
iptables
Linux
Linux (SLES / openSUSE, RHEL / CentOS / Fedora, Debian / Ubuntu)
Linux-Kernel
Linux-Kernel
MS-DOS
Palm OS
SUN OS, Solaris
Windows (Server, NT, XP, NT Embedded)

Programmiersprachen

Assembler
mäßig
Bash
sehr gut
Basic
schon länger her
C
sehr gut
C++
sehr gut
C++ 11/14
gut
C++11
C++11
CMake
CORBA IDL
schon länger her
Delphi
ganz annehmbar
G-Code
GNU Make
GNU Make, SysV Make
große Projekte mit make organisiert (>1000 Dateien)
IDL (eine Datenbeschreibungssprache ähnlich Mathlab)
Java
APIs definiert, wenig konkrete Programmiererfahrung
JavaScript
des öfteren debugged und gefixt, keine grösseren Projekte
Pascal
ganz annehmbar
Perl
mäßig
PHP
PHP 4, 5, 7
okay, diverse Webtools mit PHP geschrieben (Admin, Passwort-Manager)
Python
ganz annehmbar
Scriptsprachen
Shell
TCL
Tcl/Tk
mehr Tk als Tcl, aber auch schon eine Weile her
TeX, LaTeX
sehr gut
VHDL
mäßig

Datenbanken

MariaDB
MySQL
Clients programmiert mit Perl, C++, Python, PHP; Admistriert als Backend für Bugzilla, OwnCloud, SOGo, diverse CMS
Oracle
Installiert und administriert, Clients programmiert mit Instantclient
Postgresql
Administriert als Backend von Bugzilla
SQLite
Als Backend in eigener Software eingesetzt von C++ aus

Datenkommunikation

4.4BSD Sockets
AES3
AVB
CORBA
IONA Orbix 2 + 3
DNS
Ethernet
Administration großer Netze; Webbasiertes Monitoring-Tool in C++ geschrieben
HTTP / HTTPS / Ajax / Websockets
I2C
Internet, Intranet
Diverse Firewalls konzipiert und administriert, Services DNS, Mail, HTTP, HTTPS, Socks, LDAP, LAN-Administration
ISO/OSI
Kenntnis der Protokolle L3: IP, ARP, ICMP; L4: TCP, UDP, RTP; L7: HTTP, SMTP, HTTPS, NFS, NTP, FTP
LAN, LAN Manager
LAN Konzeption und Administration
MADI
Novell
Administration
OpenVPN
parallele Schnittstelle
Diverse Elektronik von Linux aus angesprochen
RS485 / RS422 / RS232
SDI
SMB / Samba
SMTP
RFC gelesen (im Rahmen der Mailserver-Admin)
SNMP
Traps in diversen Projekten verschickt und ausgewertet
SPI
TCP/IP
BSD und Windows-Sockets programmiert
Unix-Netzwerkprogrammierung
USB
Linux-Kerneltreiber debugged
Voice
Spracherkennungsserver programmiert
Windows Netzwerk
LAN-Administration, PDC-Controller, Samba
Winsock
sockets programmiert

Diverse embedded-Systeme mit diversen Kommunikationsprotokollen (TCP/IP, UDP/IP, ICMP, seriell) an Server angebunden. Multiclient-fähige Server für Steuerungsandwendungen geschrieben. Netzwerk-Überwachungstools geschrieben.

Hardware

AMD Geode
ARM Cortex
ARM Cortex M3, M7
Cortex-A5
DEC Alpha
i.MX6
IBM RS/6000 PPC
PowerPC
Intel x86 / PC
Raspberry Pi (& ähnliche: BeagleBone, Odroid, etc)
SAMA5D3
Soundkarten
div Linux-Kerneltreiber programmiert
Sun Spark Ultra 10

Berechnung / Simulation / Versuch / Validierung

Neuronale Netzwerke
Objekterkennung / Bilddaten
Objekterkennung / Sprache

Simulation von Gehirnströmen in neuronalen Netzwerken

Eigene Beschreibungssprache in C realisiert

Framework für Regressionstests aufgesetzt

Design / Entwicklung / Konstruktion

AutoCAD
FreeCAD
Gehäuseentwicklung
Reverse Engineering

Design großer Projekte (C++/Java) (>500.000 Codezeilen)

Managementerfahrung in Unternehmen

Geschäftsführung
ITIL
Management

Branchen

Branchen

Banken: Homebanking-Server und -Client
Börse: Brokerage-Server
Telekommunikation: Spracherkennungs-Server
Universität: neuronale Netzwerke
Industrie: ProAudio, Bildverarbeitung, Video

Einsatzorte

Einsatzorte

Berlin (+100km) Malchin (+100km) München (+100km) Mindelheim (+100km)
möglich

Projekte

Projekte

1 Jahr 9 Monate
2019-06 - 2021-02

Implementierung von Software für Infusionspumpen

Software-Entwickler C++11 Linux-Kernel Device-Tree ...
Software-Entwickler
  • Anpassung der umfangreichen Codebasis an aktuelle Compiler, neue C++-Standards (C++03 -> C++11), neue Boost-Version, große Teile durch Konstrukte aus der Standardbibliothek ersetzt, viele Bugfixes in Buildumgebung und C++-Code: Anwendungscode, Upstream-Pakete, Kernel
  • Redesign der Betriebssystem-Anbindung, Dateisystem-Layout & -Verschlüsselung, Skripten, Umstellung zahlreicher Services von SysV- und Busybox-Init auf Systemd unter Beibehaltung von Kompatibilität zu Legacy-Plattformen
  • Design und Implementierung einer Wireless-LAN-Abstraktionsschicht über alte Codebasis, Implementierung der Kommunikation mit Kernel über Linux-Netlink / nl80211 unter Beibehaltung der Kompatibilität zu Linux WExt-API auf Legacy-Plattformen
  • Realisierung zweier CAN-Schnittstellen, Debugging von Treibern und Anpassungen im Device-Tree
  • Kommunikation mit Platinenherstellern auf Schaltplan-Ebene
  • Design und Implementierung eines modularen Build- und Test-Frameworks in Python, mit dem sich alle in der Abteilung vorhandenen Test- und Produktionsimages integrieren und testen lassen, integriertes Dependency-Management, Paketerstellungs- und Deployment-Pipeline, unterstützt Debian, Ubuntu, CentOS
  • Anpassungen in Qemu Upstream
  • Virtualisierung verschiedener vorhandener embededded-Linux-Distributionen unter Qemu, Integration in Test-Framework
  • Deployment desselben über eigene Git- und Paketrepositories
  • Implementierung von Webpages zur Konfiguration der Pumpen mit Python (cherrypy)
  • Review von Pull-Requests
  • Begleitung und Qualitätssicherung der Hardwareentwicklung
  • Dokumentation der Arbeit in Git, in eigenem Wiki, Jira, Bitbucket
  • Kommunikation mit den Upstream-Softwareentwicklern und Kollegen in den USA
Buildroot U-Boot Device-Tree i.MX6 SAMA5D3 Cortex-A5 Atlassian Jira Atlassian Bitbucket
C++11 Linux-Kernel Device-Tree Python CMake GNU Make
B.Braun Melsungen AG
Melsungen / Home Office
4 Jahre 4 Monate
2015-03 - 2019-06

Entwicklung Audio-Hardware

Entwickler C++ embedded Linux Wt ...
Entwickler

Entwicklung einer Linie von Geräten zur Verteilung von Audio über Netzwerk

  • Implementierung eines Softwarestacks auf ARM Cortex (embedded Linux)
  • Web-Interface zur Bedienung
  • Synchronisierung der Zustände der Nodes
  • Anbindung externer Chips über SPI, I2C, USB
  • Leiterplattendesign
  • Gehäusedesign

Im Rahmen dieses umfangreichen Projekts wurde auf diversen Microcrontrollern der STM32-Familie ein anspruchsvoller Software-Stack realisiert, der die Geräte in die Lage versetzt, ihre Zustandsdaten (Pegel, Meter, Routing, Effektgerätparameter) nicht nur zu steuern, sondern über ein proprietäres Protokoll netzwerkweit M2M-Bedienclients zur Verfügung zu stellen. Ein embedded Webserver liefert außerdem eine moderne Webapplikation (Progressive Web App) aus, mit der diese Parameter jeweils von Menschen bedient werden können. Zum Einsatz kommt embedded Linux, Buildsystem ist Yocto / Poky / OpenEmbedded. Der Stack besteht aus vielen Bibliotheken und Services, und ist größtenteils in modernem C++ geschrieben, einschließlich der Webapp.

ARM Cortex STM32 Segger J-Link OpenOCD FreeCAD KiCad Google Test GCC Clang GNU Make Lighttpd
C++ embedded Linux Wt Unix-Netzwerk-Programmierung CMSIS U-Boot ARM Assembly Buildroot Yocto Python
janware GmbH
Schliersee
6 Jahre 2 Monate
2013-05 - 2019-06

Infrastruktur janware GmbH

Admin / Entwickler / Geschäftsführung C++ Wt Perl ...
Admin / Entwickler / Geschäftsführung

Design, Implementierung, Betrieb und Wartung der Firmeninfrastruktur

  • Administration der Server für Web, E-Mail, DNS, Dateiservice (NFS, Samba, FTP, TFTP, WebDAV), LDAP, DHCP, NTP, OpenVPN, GroupDAV, MySQL, Wiki, Bugzilla, RPM- and Debian-Repositories, OwnCloud, diverse Kollaborationstools, Codeanpassungen bei zahlreichen Komponenten, Versionierung und Deployment derselben
  • Implementierung und Dokumentation von CD/CI - Pipeline (Git-Repos -> Build-/Test-Server -> Paketrepositories)  für eigene und Third-Party-Software , Software Dependency-Management
  • Thinclient-Arbeitsplätze
  • Betreuung von Kunden, einem fest angestellten und mehreren freiberuflichen Mitarbeitern.
  • Entwicklung von Audio-Hardware siehe anderes Projekt.
Bugzilla SOGo OwnCloud Linux mySQL OpenLDAP 389-Directory-Server DokuWiki OpenVPN Apache nginx Postfix Cyrus BIND9 MariaDB WebDAVCGi Bootstrap ISC DHCPD Samba iptables RPM ProFTPD SWIG Git
C++ Wt Perl HTML5 PHP git Management Python JavaScript Bash
janware GmbH
Schliersee
3 Monate
2018-12 - 2019-02

Portierung von Serversoftware von Solaris auf Linux

Software-Entwickler & Administrator C++ C++ 14 Linux ...
Software-Entwickler & Administrator

Migration von Software für den Betrieb von Notrufsäulen an deutschen Autobahnen von Solaris auf Linux

  • Diverse unternehmenskritische Daemons von Solaris auf Linux portiert (RHEL 7)
  • Neues Buildsystem eingeführt, mit Unterstützung für Paketerstellung, Versionierung und Deployment-Pipeline
  • Einführung von Git-SVN in den Workflow
  • Anpassung der Sourcen an Linux-typische Deployments (Systemd, Konfigurationsdateien, FHS, usw)
  • Software-Paket-Repositories eingerichtet, einschließlich FTP-Server, Firewall- und SELinux-Administration
  • Integration in unternehmenseigene DevOps-Prozesse (Jenkins)
  • Deployment mit Ansible
  • Dokumentation in eigenem Wiki
  • Tracken von Aufwänden, Projektfortschritt und Abhängigkeiten zwischen Arbeitspaketen in eigenem Ticketsystem
gcc clang Jenkins RHEL SysV Make DokuWiki GNU Make Ansible
C++ C++ 14 Linux GNU Make
GDV DL GmbH
Hamburg
5 Monate
2016-10 - 2017-02

Machbarkeitsstudie Migration Windows NT Embedded auf Linux

Software-Entwickler Reverse Engineering Windows NT Embedded Kerneltreiber ...
Software-Entwickler

Modernisierung Fahrgastinformation und Bordrechner

In diversen System eines Verkehrsnetzbetreibers (Fahrzeug-Bordrechner, Fahrgastinformation) kommen Windows-NT-Embedded-Rechner zum Einsatz. Eine Migration auf Linux und freie Software soll geprüft werden, mangels Dokumentation der bestehenden Systeme kommen dabei Techniken des Reverse Engineering zum Einsatz.

Kollaborationsplatform für das Projektteam eingerichtet und gepflegt (Wiki, Ticketsystem, Dateiserver, Controlling-Tools, Code- und Paketrepositories, DevOps-Spielregeln dokumentiert), Reverse Engineering von Windows NT Embedded Geräten, Linux-Distribution erstellt, automatische Erzeugung derselben aus Paketquellen + Git implementiert, Linux-Soundtreiber für Geode-Chip geschrieben, Soundtreiber in Wine gehackt, I2C-Geräte unter Wine ansprechbar gemacht.

gcc clang GNU Make wine python bash
Reverse Engineering Windows NT Embedded Kerneltreiber Wine I2C Linux-Administration Netzwerke Embedded Linux
SWM GmbH
München
1 Jahr 4 Monate
2013-11 - 2015-02

Entwicklung und Support Digital Signage System

Software-Entwickler, Supportmitarbeiter C++ Wt Perl ...
Software-Entwickler, Supportmitarbeiter

Das bestehende Digital Signage System wurde modernisiert und mit einer interaktiven HTML5-Weboberfläche zur Bedienung versehen. Bestehende Service-Level-Agreements wurden entsprechend der Konzern-internen Vorgaben des Kunden angepasst und ITIL-Konformität dokumentiert.

Wt
C++ Wt Perl MySQL HTML5 JavaScript PHP ITIL LDAP
BMW
München
6 Monate
2013-11 - 2014-04

Messung von Schallleitung in Schnee

Soft- und Hardware-Entwickler AutoCAD C++ Unix-Shell-Programmierung ...
Soft- und Hardware-Entwickler

Für die Erforschung von Möglichkeiten zur Beurteilung von Schneedecken wurde eine Apparatur entwickelt, mit der sich die Ausbreitung von Schallwellen in Schnee messen lässt. Es wurde nach Vorgaben ein Gerät zur Körperschallübertragung konstruiert, gebaut und in einem Wiki dokumentiert, das von der Universität zur Messung verwendet wurde. Dateien mit Testsignalen wurden erzeugt und zur Verfügung gestellt. Ein Mitarbeiter wurde eingestellt und für die Experimente angeleitet.

Octave
AutoCAD C++ Unix-Shell-Programmierung git Signalverarbeitung Matlab Embedded Linux Python
Universität Heidelberg
Schliersee
2 Jahre 11 Monate
2010-05 - 2013-03

Entwicklung und Support Digital Signage System

Entwickler, Supportmitarbeiter Linux C++ Unix-Shell ...
Entwickler, Supportmitarbeiter
Das bestehende Digital Signage System wurde weiterentwickelt und gewartet.
openSUSE Linux 11.2 - 12.1 Bind-9.8 Proftpd 1.2.x ISC dhcpd 4 PHP 4 PHP 5 NTP 4.x openLDAP
Linux C++ Unix-Shell DNS DHCP Apache Wt Perl mySQL git LDAP
BMW
München / Schliersee
8 Monate
2009-10 - 2010-05

Projektleitung Softwareprojekt

Projektleiter Projektleitung Perl Bugzilla ...
Projektleiter

Ein Softwareprojekt des Kunden war stark im Verzug und benötigte externe Beratung. Zum Aufgabenbereich gehörte die Anleitung und Koordination von etwa 20 Entwicklern, die Einführung von Source-Code-Management, Ticket-System, eines einfachen und selbstgeschriebenen Zeitmanagement-Tools, von Wikis, stringenter Dokumentation des Kundenprojektes, die Kommunikation mit dem Kunden des Kunden und technische Entscheidungen. Bugzilla wurde zu einem Projektmanagement-Tool erweitert.

Bugzilla Jira MySQL
Projektleitung Perl Bugzilla Atlassian JIRA
Salzbrenner Stagetec
Buttenheim
2 Jahre 2 Monate
2007-08 - 2009-09

Entwicklung digitales Mischpult

Software-Entwickler C++ Unix-Netzwerkprogrammierung Windows Netzwerkprogrammierung ...
Software-Entwickler

Für ein großes Mischpult wurde eine native Klangverarbeitung mit niedriger Latenz entwickelt. Linux-Kerneltreiber für die Audio-Interfacekarten wurden für den Realtime-Einsatz angepasst.

RTAI Linux
C++ Unix-Netzwerkprogrammierung Windows Netzwerkprogrammierung Signalverarbeitung Realtime Embedded Linux
Salzbrenner Stagetec
Schliersee
3 Jahre 1 Monat
2006-08 - 2009-08

Entwicklung Digital Signage System

Projektleiter / Entwickler C++ Java Qt ...
Projektleiter / Entwickler

Für einen Autohersteller wurde Hard- und Software für ein Digital Signage System entwickelt. Das System besteht aus etwa zweihundert embedded Rechnern, die zeitsynchron in verschiedenen Formaten Audio- und Video wiedergeben, nebst Steuer-, Prozessing und Archivrechnern. Die Ausspielrechner booten via PXE vom Netz und werden via PoE mit Strom versorgt. Das System lässt sich über eine Java-Bibliothek von der Mediensteuerung des Auftraggebers fernsteuern und läuft ansonsten autark. Implementiert wurde die multiclientfähige Steuerungssoftware, Netzwerk-Monitoring-Tools, die Ausspielsoftware, diverse Kerneltreiber und viele Skripte zur Integration der Rechner. Gehäuse der embedded Computer wurden mit AutoCAD konstruiert, Layout verschiedener Platinen der Rechner mit gEDA erstellt.

Benutzerverwaltung, Monitoring, DNS-, DHCP-, FTP-Services mit LDAP-Backend implementiert. Replikation über mehrere Standorte aufgesetzt und gepflegt.

OpenLDAP RHEL SUSELinux
C++ Java Qt Shell G-Code Python PHP Perl Unix-Netzwerkprogrammierung Apache Signalverarbeitung FFMpeg Gehäuseentwicklung MADI AES3 SDI Embedded Linux LDAP
BMW
Schliersee / München
5 Monate
2005-11 - 2006-03

Entwicklung grafische Oberfläche für Mischpult

Software-Entwickler C++ Qt Unix-Netzwerkprogrammierung ...
Software-Entwickler

Für ein großes Theatermischpult (mehrere 1000 Bedienparameter) wurde mit Qt eine grafische Benutzeroberfläche programmiert. Die Oberfläche wurde auf mehreren Monitoren im Mischpult angezeigt, die über Xdmx angesteuert werden. Die Integration der Software auf mehreren embedded Rechnern im Mischpult und die Fernwartung gehörte zur Aufgabe.

SuSE Linux 10.3 ELinOS gcc
C++ Qt Unix-Netzwerkprogrammierung Embedded Linux
Salzbrenner Stagetec
Homeoffice / Buttenheim
1 Jahr 2 Monate
2002-11 - 2003-12

Aufbau der Supportinfrastruktur für ein Mischpult

Projektleiter Projektleitung
Projektleiter

Für ein großes Theatermischpult wurde eine Support-Infrastruktur eingerichtet. Dazu zählte die Koordinierung der Soft- und Hardwarezulieferer, der Einsätze der Techniker beim Kunden, die Anbindung der Kunden per VPN, die Einrichtung und Pflege einer Hotline, einer Ticketdatenbank und eines primitiven Warenwirtschaftssystems, und die Kommunikation mit den Kunden. Für letztere wurde den Kunden ein Portal mit Ticketdatenbank, Produktinformationen und Datei-Downloads eingerichtet.

Bugzilla MySQL Perl PHP LDAP Apache
Projektleitung
Salzbrenner Stagetec
Homeoffice / Deutschlandweit / Buttenheim
1 Jahr 4 Monate
2001-07 - 2002-10

Entwicklung DSP-Server für Mischpult

Software-Entwickler C++ Unix-Netzwerkprogrammierung Windows-Netzwerkprogrammierung ...
Software-Entwickler

Für ein großes Mischpult (mehrere 1000 Bedienparameter) wurde ein multiclientfähiger DSP-Server konzipiert und implementiert. Die Tonverarbeitung wurde von einer Drittfirma geliefert. Die Schnittstellen für deren Bedienung wurden spezifiziert und die dann gelieferten Karten abgenommen, Linux-Kerneltreiber dafür programmiert, die Parameter und Pegelanzeigen als multiclient-fähiger TCP/IP-Netzwerkdienst zur Verfügung gestellt, eine Windows Client-DLL für die Bedienoberfläche programmiert.

Linux Kernel 2.4.x Win32 gcc Visual C++ 6.0 Linux x86
C++ Unix-Netzwerkprogrammierung Windows-Netzwerkprogrammierung Embedded Linux Kerneltreiber
Salzbrenner Stagetec
Homeoffice
4 Monate
2001-03 - 2001-06

Entwicklung DSP-Server für Spracherkennung

Software-Entwickler Mustererkennung C++ STL ...
Software-Entwickler

Für eine CTI-Software, die in Massencallcentern eingesetzt wurde, wurde ein modulares System zur sprecherunabhängigen Spracherkennung entwickelt. Der Wortschatz war gering ("Eins" bis "Neun", "Ja", "Nein"). Das Programm übernahm die Merkmalsextraktion und Zuordnung der Audio-Daten zu den erkannten Worten. Es war als Client-Server-Architektur aufgebaut, programmiert wurde sowohl der Server in C++, als auch die Client-Software in C++ und Delphi. Die Integration der Produktions-Server gehörte zum Aufgabenfeld.

Win32 gcc Visual C++ 6.0 Linux GCC GNU Make
Mustererkennung C++ STL CVS GNU-Make Delphi Embedded Linux
Voice Robots GmbH
Heidelberg
3 Monate
2001-01 - 2001-03

Aufbau eines Firmen-Netzwerks

Netzwerk-Administrator Netzwerkadministration
Netzwerk-Administrator

Das Intranet einer Firma wurde konzipiert und an das Internet angebunden. Dazu gehörte auch das Aufsetzen der In-House betriebenen Web- und Mailserver mit dem Webservice der Firma (Einkaufsgutscheine in PHP) und Firewall. Intranet: DHCP-, DNS-, NTP-, Dateiserver (Samba), Windows-Arbeitsplatzrechner, DMZ / Internet: Konzeption und Implementierung einer zweistufigen Firewall, redundanter Web-, Mail- und DNS-Server, Programmierung von PHP-Skripten zur Administration der Services, Verhandlungen mit dem Provider

Debian Linux 2.2 Linux Kernel 2.2 Bind 9.1 Apache Postfix Xntp Windows 2000 Samba MySQL
Netzwerkadministration
Geenee GmbH
Berlin
6 Monate
2000-03 - 2000-08

Homebanking-Server PIN / TAN

Software-Entwickler Netzwerkadministration Windows-Netzwerkprogrammierung Unix-Netzwerkprogrammierung ...
Software-Entwickler

Bereits bestehende CORBA-Server wurden an die Business-Logik des Projektes angepasst und getestet. Die Arbeit wurde dokumentiert, nebst der bestehenden anderen Server. Das Netzwerk des neuen Projektbüros wurde geplant und administriert, das betraf der Arbeitsplatzrechner unter Windows NT, den Testserver unter Solaris und die Anbindung des Netzwerkes an die Bank via VPN. Außerdem wurde die vorhandene Netzwerkimplementierung eines Home-Banking-Client unter Palm-OS debugged und gefixt.

Sun Spark Ultra 10 Intel x86 Palm V Solaris 5.6 Linux 2.2 Solaris CC IONA Orbix 3 4.4BSD Sockets Palm OS Metrowerks Code Warrior für Palm OS
Netzwerkadministration Windows-Netzwerkprogrammierung Unix-Netzwerkprogrammierung C C++ Unix-Shell TCL CORBA IDL
Deutsche Bank / emagine
Berlin
3 Monate
1999-07 - 1999-09

Entwicklung Brokerage Server

Software-Entwickler Unix-Netzwerkprogrammierung C / C++ Unix-Shell
Software-Entwickler

Ein Proxy-Server für die Anbindung eines proprietären Chipcard-Clients an das Bank-Backend wurde in C++ programmiert. Ein C++-API für Test-Plugins wurde implementiert. Ein Thread-Handler für die Firmen-Bibliothek wurde neu geschrieben. Das Deployment der Software und die Administration der Test- und Produktionsrechner nebst der Datenbanken (Oracle 8i) und CORBA-Infrastruktur gehörte zur Aufgabe. Die eigenen Arbeit und das Gesamtprojekt wurde dokumentiert.

Solaris 5.6 HP-UX IONA Orbix 3 4.4BSD Sockets Oracle 8i Solaris CC
Unix-Netzwerkprogrammierung C / C++ Unix-Shell
Deutsche Börse / GEFM mbH
Frankfurt
8 Monate
1998-08 - 1999-03

Entwicklung HBCI Server

Software-Entwickler Unix-Netzwerkprogrammierung C C++ ...
Software-Entwickler

Ein Proxy-Server für die Anbindung eines undokumentierten aber quelloffenen HBCI-Servers einer Drittfirma an das Bank-Backend wurde in C++ programmiert. Die Anbindung an das Bank-Backend erfolgte über CORBA. Das Deployment der Software und die Administration der Test- und Produktionsrechner gehörte zur Aufgabe. Die eigenen Arbeit und das Gesamtprojekt wurde dokumentiert.

IBM RS/6000 PPC AIX 4.2.1 IONA Orbix 2 4.4BSD Sockets
Unix-Netzwerkprogrammierung C C++ Unix-Shell Rational Rose CORBA
Deutsche Bank / GEFM mbH
Frankfurt
4 Monate
1998-02 - 1998-05

Perspektivische Entzerrung von Unfallaufnahmen

Software-Entwickler Bildverarbeitung Objekterkennung C
Software-Entwickler

Für das Umrechnen von perspektivischen Aufnahmen von Verkehrsunfällen in Draufsichten wurde eine DLL erstellt, die die nötigen Bildbearbeitungs-Algorithmen zur Verfügung stellt. Zum Testen wurde ein grafisches Tool in Visual Basic programmiert, mit dem diverse Fixpunkte in der Originalaufnahme markiert und deren gemessene Koordinaten eingegeben werden konnten. Außerdem wurde eine Windows-DLL in C++ mit Konversionsroutinen zwischen diversen Grafikdateiformaten implementiert.

Visual C++ 1.5 Win 3.1 SDK MFC 2.5 Visual Basic 3.0
Bildverarbeitung Objekterkennung C
Delta Software GmbH
Freiburg
2 Jahre
1996-02 - 1998-01

Entwicklung einer Beschreibungssprache für Neuronale Netzwerke

Software-Entwickler neuronale Netzwerke Objekterkennung C ...
Software-Entwickler

Eine Beschreibungssprache nebst Interpreter für komplexe Neuronale Netze zur Erforschung des visuellen Systems wurde entwickelt. Ein- und Ausgabe der Daten war sowohl aus ASCII-Dateien als auch als Windows Bitmap möglich. Eine grafische Benutzeroberfläche in C für XLib / OSF Motif wurde ebenfalls entwickelt. Die Interpreter-Engine wurde mit Perl- und Shellscripten automatisiert.

DEC-Alpha Workstations Digital UNIX V4.0D Xlib OSF/Motif IDL
neuronale Netzwerke Objekterkennung C Unix-Shell Perl IDL (eine Datenbeschreibungssprache ähnlich Mathlab)
Universität Marburg
Marburg
2 Jahre
1996-02 - 1998-01

Entwicklung eines Animationsprogramms

Software-Entwickler Neuronale Netzwerke C Unix-Shell
Software-Entwickler
Ein Animationsprogramm wurde entwickelt, das aus Trajektorien im dreidimensionalen Raum Filme erzeugt, die zum Training neuronaler Netzwerke benutzt werden.
DEC-Alpha Workstations Digital UNIX V4.0D Xlib OSF/Motif
Neuronale Netzwerke C Unix-Shell
Universität
Marburg

Aus- und Weiterbildung

Aus- und Weiterbildung

Diplomphysiker (Nebenfach Mathematik)
Metallflugzeugbauer

Position

Position

Softwareentwickler, Systemintegrator und Berater für Softwarelösungen unter Linux

Kompetenzen

Kompetenzen

Top-Skills

C++ Embedded Linux OOP embedded

Produkte / Standards / Erfahrungen / Methoden

389-Directory-Server
Apache
Atlassian Bitbucket
Atlassian JIRA
Bildverarbeitung
Bind 9
Bootstrap
Bugzilla
Buildroot
clang
CMSIS
CVS
Debian
DHCP
DNS
DokuWiki
FFMpeg
gcc
git
HTML5
IONA Orbix 2
IONA Orbix 3
ISC dhcpd 4
Jenkins
Jira
Kerneltreiber
KiCad
LDAP
Lighttpd
Metrowerks Code Warrior für Palm OS
MFC
nginx
NTP
OpenLDAP
openSUSE / SLES
OSF/Motif
OwnCloud
Postfix
ProFTPD
Qt
Rational Rose
RHEL / CentOS / Fedora
RPM
RTAI
RTAI Linux
RTLinux
Samba
Signalverarbeitung
SOGo
STL
STM32
SysV Make
U-Boot
Visual C++
Win 3.1 SDK
Win32
Windows NT Embedded
wine
Wt
Xlib
Xntp
Yocto
Yosys
 

Betriebssysteme

AIX
Device-Tree
Digital UNIX
ELinOS
embedded Linux
HP-UX
iptables
Linux
Linux (SLES / openSUSE, RHEL / CentOS / Fedora, Debian / Ubuntu)
Linux-Kernel
Linux-Kernel
MS-DOS
Palm OS
SUN OS, Solaris
Windows (Server, NT, XP, NT Embedded)

Programmiersprachen

Assembler
mäßig
Bash
sehr gut
Basic
schon länger her
C
sehr gut
C++
sehr gut
C++ 11/14
gut
C++11
C++11
CMake
CORBA IDL
schon länger her
Delphi
ganz annehmbar
G-Code
GNU Make
GNU Make, SysV Make
große Projekte mit make organisiert (>1000 Dateien)
IDL (eine Datenbeschreibungssprache ähnlich Mathlab)
Java
APIs definiert, wenig konkrete Programmiererfahrung
JavaScript
des öfteren debugged und gefixt, keine grösseren Projekte
Pascal
ganz annehmbar
Perl
mäßig
PHP
PHP 4, 5, 7
okay, diverse Webtools mit PHP geschrieben (Admin, Passwort-Manager)
Python
ganz annehmbar
Scriptsprachen
Shell
TCL
Tcl/Tk
mehr Tk als Tcl, aber auch schon eine Weile her
TeX, LaTeX
sehr gut
VHDL
mäßig

Datenbanken

MariaDB
MySQL
Clients programmiert mit Perl, C++, Python, PHP; Admistriert als Backend für Bugzilla, OwnCloud, SOGo, diverse CMS
Oracle
Installiert und administriert, Clients programmiert mit Instantclient
Postgresql
Administriert als Backend von Bugzilla
SQLite
Als Backend in eigener Software eingesetzt von C++ aus

Datenkommunikation

4.4BSD Sockets
AES3
AVB
CORBA
IONA Orbix 2 + 3
DNS
Ethernet
Administration großer Netze; Webbasiertes Monitoring-Tool in C++ geschrieben
HTTP / HTTPS / Ajax / Websockets
I2C
Internet, Intranet
Diverse Firewalls konzipiert und administriert, Services DNS, Mail, HTTP, HTTPS, Socks, LDAP, LAN-Administration
ISO/OSI
Kenntnis der Protokolle L3: IP, ARP, ICMP; L4: TCP, UDP, RTP; L7: HTTP, SMTP, HTTPS, NFS, NTP, FTP
LAN, LAN Manager
LAN Konzeption und Administration
MADI
Novell
Administration
OpenVPN
parallele Schnittstelle
Diverse Elektronik von Linux aus angesprochen
RS485 / RS422 / RS232
SDI
SMB / Samba
SMTP
RFC gelesen (im Rahmen der Mailserver-Admin)
SNMP
Traps in diversen Projekten verschickt und ausgewertet
SPI
TCP/IP
BSD und Windows-Sockets programmiert
Unix-Netzwerkprogrammierung
USB
Linux-Kerneltreiber debugged
Voice
Spracherkennungsserver programmiert
Windows Netzwerk
LAN-Administration, PDC-Controller, Samba
Winsock
sockets programmiert

Diverse embedded-Systeme mit diversen Kommunikationsprotokollen (TCP/IP, UDP/IP, ICMP, seriell) an Server angebunden. Multiclient-fähige Server für Steuerungsandwendungen geschrieben. Netzwerk-Überwachungstools geschrieben.

Hardware

AMD Geode
ARM Cortex
ARM Cortex M3, M7
Cortex-A5
DEC Alpha
i.MX6
IBM RS/6000 PPC
PowerPC
Intel x86 / PC
Raspberry Pi (& ähnliche: BeagleBone, Odroid, etc)
SAMA5D3
Soundkarten
div Linux-Kerneltreiber programmiert
Sun Spark Ultra 10

Berechnung / Simulation / Versuch / Validierung

Neuronale Netzwerke
Objekterkennung / Bilddaten
Objekterkennung / Sprache

Simulation von Gehirnströmen in neuronalen Netzwerken

Eigene Beschreibungssprache in C realisiert

Framework für Regressionstests aufgesetzt

Design / Entwicklung / Konstruktion

AutoCAD
FreeCAD
Gehäuseentwicklung
Reverse Engineering

Design großer Projekte (C++/Java) (>500.000 Codezeilen)

Managementerfahrung in Unternehmen

Geschäftsführung
ITIL
Management

Branchen

Branchen

Banken: Homebanking-Server und -Client
Börse: Brokerage-Server
Telekommunikation: Spracherkennungs-Server
Universität: neuronale Netzwerke
Industrie: ProAudio, Bildverarbeitung, Video

Vertrauen Sie auf GULP

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das GULP Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.