Intro
Willkommen auf meiner Homepage! Ich bin freiberuflicher Informatiker mit vielen Jahren Praxiserfahrung, in denen ich hauptsächlich mit Systemdesign und Systemprogrammierung beschäftigt war.
In den letzten Jahren habe ich viele Projekte in den Bereichen Android, Automotive und Connected Car als Freelancer realisiert. Aber auch andere Aufgabenfelder sind willkommen, als Software Architekt, Team Lead und gerne auch in der Hands-On Entwicklung.
Wenn Sie interessiert sind, senden Sie mir bitte eine E-Mail oder rufen Sie mich einfach an.
Top Skills
Android
Java
Mobile Architecture
C / C++
Kotlin
Team Lead
Automotive / Connected Car
Databases
Unix
Mac OS
Windows
Projekte
Android/Backend Architekt und Lead Developer für ein mittelständisches Unternehmen, das Motor-Tuning-Module entwickelt und vertreibt. Die Tuning-Module können mit Hilfe von neu entwickelten Smartphone Apps per Bluetooth Classic & Low Energy angesteuert werden. Es gibt diverse Hardware-Varianten, die jeweils von einer eigenen App angesteuert werden. Alle diese Apps lassen sich aus einer gemeinsamen Sourcecode-Basis erzeugen, so dass der Wartungsaufwand gering gehalten wird. Jede App kommuniziert per REST-API mit einem zentralen Backend, um Daten des Tuning-Moduls zu senden oder neue Konfigurationen und Firmware zu laden. Ich bin verantwortlich für Design / Implementierung von Android App und Backend, außerdem für die Koordination der iOS-Entwicklung.
Wartung einer App für den öffentlichen Nahverkehr in Nürnberg. Das ist eine Folgebeauftragung des Projekts von 03/2020 - 03/2021, siehe unten.
Einbindung einer TSE (technische Sicherheitseinrichtung) gemäß Kassensicherungsverordnung in eine bestehende Android-App für mittelständische Taxi-Unternehmen.
Entwicklung einer Android-App für ein Forschungsprojekt zum Tracking von Verkehrsteilnehmern, um den Verkehrsfluss in einer deutschen Stadt zu optimieren.
Wartung einer existierenden Flottenverwaltungs-App und Entwurf eines Frameworks für eine neue App, die auf Android Custom Hardware in den Fahrzeugen installiert wird.
Android UI- und Service-Framework für eine App, die im Führerstand von Lokomotiven eingesetzt werden soll, um den Fahrer bei der Wahl einer effizienten Fahrstrategie zu unterstützen. Die Business-Logik wurde komplett vom Kunden umgesetzt und läuft in einem Hintergrund-Service. Ich war für das Aufsetzen eines State-of-the-Art Android Frameworks verantwortlich, so dass der Hintergrund-Service asynchron und nach dem MVVM-Konzept mit den UI-Komponenten kommunizieren kann. Außerdem habe ich einige dynamische graphische UI-Komponenten realisiert.
Design und Erstellung diverser Android Apps zur Verwaltung der Zugriffsrechte Dritter auf ausgewählte private Daten des Benutzers im Sinne der DSGVO. Design und Erstellung eines Backends mit REST-API zum Zugriff auf diese Rechteverwaltung. Die REST API kann von beliebigen REST-Clients wie mobilen Apps (iOS, Android) oder von Web-Apps verwendet werden.
Framework and Teil einer App für den öffentlichen Nahverkehr in Nürnberg. Entwurf und Implementierung eines Chat-Moduls mit WhatsApp-ähnlicher Funktionalität, u.a. Text-Chat mit eingebetteten Multimedia Elementen (Bilder und andere Dokumente). Benutzer können mit dem Kundensupport chatten und Nachrichten und Verkehrsinformationen abonnieren. Kommunikation mit dem Backend über REST API.
App-Prototyp für eine App für Paketzusteller. Es wurde ein Proof-of-Concept und ein Android-App-Framework erstellt für eine App, die im Kiosk-Modus als einzige App auf einem Rugged-Device laufen soll und aus der heraus eine Navigation unter Google Maps gestartet werden kann. Wenn die Google Maps Navigation beendet ist oder unterbrochen wird, geht die Kontrolle zurück an die Kiosk-App.
App-Prototyp für eine Payment-Lösung. Eine Client-App (z.B. Shopping-App) schickt die Daten der Zahlung an eine Payment-Provider-Server-App auf demselben Gerät. Die Payment-Provider-App blendet ein UI-Overlay über der Client-App mit den Zahlungsdaten ein, so dass der Nutzer die Zahlung bestätigen kann. An die Server-App könnte nun eine Payment-API eines externen Payment-Backends angebunden werden, das war aber nicht Teil des Prototyps.
Android Architekt (Automotive) für SCANIA Deutschland. Konzept und Erstellung einer Android nativen Tablet-App zur Schadenserfassung bei der Vermietung von Fahrzeugen, die eine existierende Web-App einbettet und um native Funktionalitäten (Kamera, Image-Editor) erweitert. Anbindung an ein existierendes Backend via REST API.
Android Architekt/Developer für T-Systems Multimedia Solutions. Konzept und grundlegende Bausteine eines Frameworks zur Erstellung einer nativen Android E-Mail App
Android Architekt/Developer für contura Modellbau, Berlin. Konzept und Erstellung einer Android nativen Tablet-App mit Anbindung von externer Hardware via Bluetooth LE. Die App läuft im Kiosk-Modus auf einem Tablet, das in ein Messe-Modell eingebettet ist. Durch Betätigung externer Hardware-Buttons können Funktionen in der Tablet-App ausgelöst werden und z.B. Videos abgespielt werden.
Android Architekt/Developer bei einem mittelständischen Social-Media Unternehmen. Es wurde eine standort-bezogene Message-Funktion für eine Schüler-App entwickelt, mit der Möglichkeit neben Text auch Bilder an die anderen Teilnehmer zu senden und die Beiträge anderer zu bewerten. Weiterhin können die Rankings der Beiträge und Gruppen angezeigt werden. Die App kommuniziert per REST-API mit einem zentralen Backend.
Android Architekt bei einer BOSCH-Tochterfirma in Berlin. Verantwortlich für die Kommunikation mit den Offshore und Nearshore-Developer-Teams sowie für Erstellung von Konzepten, technischer Architektur und Dokumentation sowie Security-Analysen für ein ConnectedCar Projekt und zugehöriges SDK im Bereich Android, iOS + Backend/Portal.
Umbau einer Android-App als Teil einer Fahrzeug-Flottenverwaltung zur automatisierten Fahrtenbuchführung, Strecken- und Tankstopverwaltung, Fahrerauthentifizierung, mit direkter Anbindung über OBD2 / Bluetooth an das Fahrzeug zur Ermittlung der verfügbaren Fahrzeugparameter. Die App wird an an neues konzernweites Backend angebunden, außerdem wird die Auswertung der Fahrzeugdaten ausgebaut. Auftraggeber ist Volkswagen AG, die diese Lösung beim Verkauf ganzer Fahrzeugflotten mit anbietet.
Ausbau der Android-Wear Smartwatch Anwendung von Ende 2014, die als Connected-Car Showcase für Automobilmessen dient. Die Android-Companion-App wird nun auch tablet-fähig und enthält neue Szenarien für den Showcase. Außerdem wurde eine Digital Car Key Funktionalität eingebaut. Auftraggeber ist Volkswagen AG, die eine solche Lösung später in Serie in ihre Produkte integrieren will.
Design und Implementierung eines Android-Treibers und einer Android-Test-App zur Kommunikation mit einem Bluetooth-OBD-Dongle im Auto (PKW). Die Verbindung wird zunächst auf Bluetooth-Ebene aufgebaut, dann erfolgt eine kryptographische Authentifizierung. Die Test-App ermöglicht das Auslesen und die Darstellung von Fahrzeugdaten. (für Volkswagen AG)
Konzept für Modularisierung sowie Erstellung und Dokumentation eines App-Frameworks für die Android-Apps der Abteilung AppFactory der Volkswagen AG
Architektur und Implementierung von Google Deep Linking in einer der populärsten deutschsprachigen Wetter-Apps für Android mit mehreren Millionen Downloads. Die neue Funktionalität musste in das bestehende Application Framework eingebettet werden und Unit Tests mussten erstellt werden.
Review und technisches Redesign einer Android App zum Thema ConnectedCar. Die App verbindet sich mit einem Bluetooth-OBDII-Dongle im Auto (PKW) und stellt aktuelle und historische Fahrzeugdaten wie z.B. zum Benzinverbrauch, Fahrtenbuch, Fehler- und Wartungsmeldungen usw. in der App dar. Auftraggeber ist Volkswagen AG, die Dongle und App als Zubehör mit seinen Fahrzeugen vertreiben will
Android Showcase-App zur Darstellung von Falschfahrern auf Autobahnen, die im Rahmen eines Forschungsprojekts von einem Detektor in Echtzeit erkannt werden und mit Ort und Koordinaten (Google Maps) in der App dargestellt werden. Außerdem werden in der App weitere Informationen über das Forschungsprojekt visualisiert und angezeigt. Auftraggeber ist Volkswagen AG, die eine solche Falschfahrerwarnung später in seine Fahrzeuge integrieren will
Android-Wear Smartwatch Anwendung als Connected-Car Showcase für eine Automobilmesse. Der Fahrer kann auf seiner Android Smartwatch bestimmte Funktionen des verbundenen Autos auslösen (z.B. Türen öffnen/schließen, Medienplayer bedienen). Außerdem können Messwerte aus dem Fahrzeug auf der Uhr angezeigt werden, z.B. Verbrauch, Tankfüllstand, Reichweite, km-Leistung usw.) Auftraggeber ist Volkswagen AG, die eine solche Lösung später in Serie in seine Produkte integrieren will.
Android-Tablet-App, die eine Überwachungslösung für große Trucks als Demo-App auf mehreren Nexus 10 Tablets demonstriert. Die Nexus 10 Tablets kommunizieren in einem LAN, wobei eines die Rolle eines Räubers übernimmt, der den Sicherheitsbereich des Trucks kompromittiert. Die anderen Tablets übernehmen die Rollen des LKW-Fahrers bzw. des Fuhrparkmanagers und stellen die vom Räuber ausgelösten Alarme in Verbindung mit simulierten Überwachungsvideos und -fotos grafisch dar. Der Fahrer hat die Möglichkeit, auf die Alarme zu reagieren, indem er z.B. eine Sirene betätigt oder direkt aus der App heraus einen Anruf bei der Sicherheitszentrale tätigt. Auftraggeber ist Volkswagen AG, die basierend auf dieser Demo eine Sicherheitslösung für ihre Trucks entwickeln will.
Android-App als Teil einer Fahrzeug-Flottenverwaltung zur automatisierten Fahrtenbuchführung, Strecken- und Tankstopverwaltung, Fahrerauthentifizierung, mit direkter Anbindung über OBD II / Bluetooth an das Fahrzeug zur Ermittlung der verfügbaren Fahrzeugparameter. Die Android-Geräte werden in die Fahrzeuge eingebaut. Die erfassten Daten werden kontinuierlich via JSON/REST-API mit der Flottenverwaltung auf einem SAP-Backend synchronisiert. Auftraggeber ist Volkswagen AG, die diese Lösung beim Verkauf ganzer Fahrzeugflotten mit anbietet.
Erweiterung einiger Messe-Informationssystem Apps unter Android, z.B. für die “ILA Air Show” in Berlin und die SMM Schiffahrtsmesse in Hamburg, weiterhin “ITB Berlin”, “nortec”, “Reisen Hamburg”, “Best of Events”, “HansePferd”. Die App liest die Messedaten von einem Webservice aus dem Internet, speichert diese in einer internen SQLite Datenbank und stellt sie strukturiert dar, ergänzt um Favoriten-, Notiz-, Adressbuch-Funktionen. Die Apps basieren auf dem von mir im Jahre 2011/2012 entwickelten Framework.
C++ Projekt zur Serverüberwachung in Mainframe- und Unix-Rechenzentren: Logfileüberwachung, Datenkonvertierung, Datenverifizierung, Datenreparatur.
Android-App im medizinischen Bereich (Fitness/Bewegung) mit Schrittzähler und Aktivitätserfassung, graphischer Auswertung, Login und Speicherung der Daten auf einem Server.
Android-App für lokale Kleinanzeigen, mit Foto- und Google Map View, Kommunikation mit einem Server via REST-API.
Android App für regionalen Tourismus (Müritz App) mit Google Maps Funktionalität und ortsbasierten Techniken, Bildergalerie sowie schneller und vielseitiger Suchfunktion im Anbieterverzeichnis. Die Suchergebnisse können in einer Liste oder als interaktive Marker auf einer Landkarte angezeigt werden. Diese App wird auch als Framework zur Entwicklung weiterer Tourismus Apps dienen.
Messe-Informationssystem Apps unter Android, z.B. für die “ILA Air Show” in Berlin und die SMM Schiffahrtsmesse in Hamburg, weiterhin “ITB Berlin”, “nortec”, “Reisen Hamburg”, “Best of Events”, “HansePferd”. Die Android-App wurde komplett neu entwickelt. Als Vorlage für die Funktionalität diente eine existierende iOS App. Die App liest die Messedaten von einem Webservice aus dem Internet, speichert diese in einer internen SQLite Datenbank und stellt sie strukturiert dar, ergänzt um Favoriten-, Notiz-, Adressbuch-Funktionen. Außerdem wurde ein Framework erstellt für weitere Messe-Apps.
Entwicklung einer E-Book App unter Android unter Vorlage der iOS App “Fingerspiele”.
Kleine Showcase App für Android / iOS für eine Software Firma, die Apps für beide Betriebssysteme erstellt. Es wird jeden Tag ein neues Gedicht von einem Webservice geladen und angezeigt.
Mitarbeit an der Entwicklung einer Kleinanzeigen-App (iOS + Android), die von vielen Verlagen weltweit eingesetzt wird.
Design/Implementierung einer nativen Apple iPhone Multimedia Applikation, die als Client eines Enterprise Application Servers agiert.
Design/Implementierung diverser SOA Komponenten in einem PowerBuilder-Sybase-EAServer Projekt für integrierte Print- und Web-Lösungen.
Design/Implementierung einer Lösung zum verschlüsselten Speichern von Kreditkartendaten in einer RDBMS basierend auf Triple-DES.
Diverse Erweiterungen (Silbentrennung, Rechtschreibprüfung, Unicode) des vorher erwähnten WYSIWYG-Editors und Ausbau des Anzeigenerfassungssystems.
Java-Client mit GUI (mit Swing) und C++-Server für die Jobticketverarbeitung einer Print-Management Software.
Windows-Applikation zur Texterkennung in Fernsehsendungen (mit Abbyy FineEngine OCR und Hauppauge WinTV SDK), implementiert in C++.
BMC Patrol Knowledge Module, u.a. ein universeller Logfileadapter und eine Netware-Printserver Überwachung.
Design/Implementierung des Kerns eines Anzeigenerfassungssystems für Kleinanzeigen-Zeitungen (Zweite Hand / ISV) und elektronische Medien (mit Sybase).
WYSIWYG-Editor implementiert als Windows DLL für eine PowerBuilder Applikation.
Voicemail Kernel and Applikationen mit Schnittstelle zu einer Oracle Datenbank.
Interprozess-Kommunikationsmodul für Novell IPX/SPX
Design/Implementierung einer objektorientierten Programmiersprache (Compiler, Runtime, RDBMS Anbindung…) für WILD AG, Heidelberg
Design einer ereignisgesteuerten Benutzungsoberfläche für ASCII-Terminals (Runtime + UI-Beschreibungssprache/Translator)
Steuerung und Verwaltung eines Hochregallagers einschließlich der Implementierung einer Datenbank
Betriebssystem für ein fehlertolerantes Multiprozessorsystem (Unterwasserroboter).
Design/Implementierung des Geometriekerns einer 2D CAD Applikation
Skills & Tools
- Automotive
- Verlagswesen Print
- Verlagswesen Online
- Logistik
- Maschinenbau
- Telekommunikation
- Rundfunk/Fernsehen
- Verwaltung
- Banken
- IT-Dienstleistungen
- Lebensmittel
- Luftfahrt
- Tourismus
- Gesundheitswesen
- ÖPNV / Verkehr
- Google Android SDK/NDK app development (Smartphones, Tablets, Android Wear Smartwatch)
- Android Studio / IntelliJ
- Eclipse (Android, Java, C++)
- Apple iPhone iOS native app development
- Windows Systemprogrammierung
- MS Visual Studio (C++, C#, VBA)
- Apple Xcode
- Borland C++
- Borland JBuilder
- objektorientierte Entwicklung (OOA/OOD/OOP)
- Agile Software Development, SCRUM Master
- BMC Patrol KM Entwicklung
- Triple-DES Verschlüsselung
- Revision Control: git, Subversion SVN, Mercurial, CVS, SourceTree, TortoiseSVN, gitGUI
- Build Tools: Gradle, Maven, Ant, Make
- Atlassian JIRA, Portfolio, Confluence, Stash, SourceTree
- Mantis
- HTML, CSS, REST, XML, JSON, Gson
- JMeter, RESTClient
- OpenAPI / Swagger
- Reactive Programming, RxJava, RxAndroid
- Clean Code
- Android SDK
- Android Wear
- Android Architecture Components
- Android Jetpack Components
- Android Security / Reverse Engineering : Apktool, jadx, bytecode-viewer
- DexGuard / ProGuard app hardening
- Android Google Maps API V1 / V2
- Android Frameworks for Bluetooth & Bluetooth LE
- Android Kiosk Mode
- Google Play Services
- Google ActionBarCompat
- Google Android Location API
- ActionBar Sherlock
- Google GSON
- basic-http-client / AndroidHttpClient (Chandler) - XML Pull Parser
- greenrobot / EventBus
- SQLite
- Realm
- Unit tests: JUnit, Espresso
- Retrofit
- Dagger
- RxJava
- MVP and MVVM architecture
- Bluetooth / Bluetooth LE
- CORBA
- Ethernet
- Internet, Intranet
- Proprietäre Protokolle
- RPC
- RS232
- SMTP
- SNMP
- TCP/IP
- UUCP
- Windows Netzwerk
- Winsock
Projekterfahrung in folgenden Programmiersprachen:
Sprache | seit |
---|---|
C | 1986 |
C++ | 1990 |
Java | 1999 |
Kotlin | 2017 |
JavaScript | 2005 |
HTML, XML | 1999 |
Shell (sh, tcsh, bash) | 1990 |
yacc/lex | 1992 |
Assembler | |
Basic | |
C# | |
ESQL/C | |
Imake, GNU-Make | |
Makrosprachen | |
Modula-2 | |
Objective C | 1990 |
Pascal | 1986 |
PL/SQL | |
Powerbuilder | 1995 |
Scriptsprachen | |
Smalltalk |
Datenbank | seit |
---|---|
SQL | 1985 |
Oracle | 1990 |
Postgres | 2000 |
Sybase | 1991 |
MS SQL Server | 1997 |
MySQL | 2000 |
SQLite | 2010 |
Adabas | 2000 |
DB2 | 2000 |
ODBC | 1995 |
Realm | 2016 |
CortexDB | 2018 |
Type | OS |
---|---|
Apple Mac | MacOS X |
Apple iPhone / iPad | iOS |
Android Phones, Tablets | Android |
Android Wear Watch | Android |
NeXT Cube / Station | NEXTSTEP |
PC | Windows, Linux |
Echtzeitsysteme | RTOS |
Embedded Systeme | diverse |
Proprietäre HW | diverse |
Siemens MX | ORG/M |
SPS | SIMATIC S5 |
Steuer und Regelsysteme | diverse |
SUN | Solaris |
DEC VAX | VAX/VMS |
Sprache | Level |
---|---|
Deutsch | Muttersprache |
Englisch | Professionell |
Spanisch | Fortgeschritten |
Portugiesisch | Grundkenntnisse |
Thai | Grundkenntnisse |
Zeitraum | |
---|---|
1983-1988 | Studium der Informatik an der TU Berlin. Schwerpunkt Software Engineering, Embedded Software, Betriebssysteme, Compilerbau |
1990 | Certified NeXT Developer (NEXTSTEP) |
1991 | Object Oriented Programming and Design (ACM training course) |
1999 | Certified BMC Patrol Knowledge Module Developer |
2010 | Certified ScrumMaster (Scrum Alliance / Boris Gloger) |