Profilbild von Werner Dittmann Werner Dittmann aus Albaching

Werner Dittmann

verfügbar

Letztes Update: 27.03.2024

Werner Dittmann

Firma: Werner Dittmann
Abschluss: nicht angegeben
Stunden-/Tagessatz: anzeigen
Sprachkenntnisse: deutsch (Muttersprache) | englisch (verhandlungssicher)

Dateianlagen

DittmannWerner-ProjectProfile-en_270324.pdf

Skills

  • Über 30 Jahre Fachwissen in IT Design und Entwicklung in internationalen Projekten mit Schwerpunkt auf Lösungs- und Systemarchitektur, IT- und Netzwerkintegration. 
  • Sehr gutes und breites Praxiswissen in der Softwareentwicklung, in verschiedenen Programmiersprachen wie C, C++, Java, Kotlin
  • Seit etwa 10 Jahren mit Schwerpunkt auf Design, Entwicklung und Implementierung von Android Anwendungen, zum Beispiel Kommunikations­anwendungen (Audio, Video, Messaging) mit Verschlüsselung (in C und C++, Java und Kotlin), UI Implementierung. Verwendete Protokolle sind unter anderem SIP, RTP, XMPP, HTTP
  • Langjähriges Know-How bei der Entwicklung sicherheitskritischer Software, (VoIP Verschlüsselung, SRTP, ZRTP, ThreeFish, Skein, etc)
  • Verwendete Entwicklungssysteme für Android: Android Studio, Gradle, Android SDK, Android NDK (für C/C++ Anteile)
  • Testmethodiken u.a Android Espresso, UI Automation, JUnit Tests, Instrumentation Tests, Google Test für C++ und C

Projekthistorie

03/2022 - bis jetzt
Development of In-Car Passenger Entertainment System
BMW Group (Automobil und Fahrzeugbau, >10.000 Mitarbeiter)

This project was set up to develop a passenger entertainment system for the manufacturer's topline cars. The system consists of a large screen (8k by 2.5k), a specific hardware to drive the screen and to connect to the car's other systems. The project is implemented by an international team.

As a software architect and a software developer I'm responsible for software design, interfaces to other systems, and software implementation across the whole system. This includes the full range of Android development:
- Android UI implementation (MVVM)
- Android service implementation (application level) to connect to other car systems
- Implementation of Hardware Abstraction Layer (HAL) modules and associated services (AOSP level) to provide lower layer connectivity
- Implementation of tests, test suites
- etc

The whole project strictly follows the manufacturer's project development, test, and release processes with a very high focus on development quality and test/QA procedures.

The following main tools are in use:
- Android Studio, gradle etc to develop Android software
- Git (Enterprise) as software repositories
- Jira and Confluence to support project managment and documentation
- Gerrit and AOSP tools to develop AOSP software

On top of these tools several manufacturer specific tools are in use as well.

02/2021 - 02/2022
Porting proprietary payment terminal software to Android and Android capable hardware
NDA (Banken und Finanzdienstleistungen, 500-1000 Mitarbeiter)

The existing software was implemented in the C language and runs on a proprietary hardware (payment terminal). The build process used standard makefiles, GNU autotools and the source management was using CVS. 

The project was set up to to develop Android software to replace many of the existing C based software modules, to use newer development and build tools, and to connect to C modules which could not be replaced. Another part of the project was to use a newer hardware which was able to run an Android system. 

The first step of the project replaced the build system: migrate makefiles, GNU autotools to gradle and cmake This first step was necessary to enable Android software development. Parallel to these actitivies the CVS software management system  was migrated to to git and Google repo tool.

During the second project step the team developed the new Android software and started , implemented interfaces (JNI) to remaining C modules. This included new and/or enhanced UI design, adaptations to the new hardware and its features. Another important topic was to migrate the test suite of the software to provide the certification process.

Other tools were: Jira, Confluence to manage to project.

01/2018 - 12/2020
Software für verschlüsselten Nachrichtenaustausch (Chat) auf Basis XMPP / OMEMO / Double Ratchet Protokoll
(Telekommunikation, 10-50 Mitarbeiter)

DIe Aufgabenstellung umfasst die Entwicklung einer in C++ implementierten Bibliothek zum verschlüsselen/entschlüsseln und versenden von Nachrichten über einen XMPP Server. Die Bibliothek implementiert die OMEMO XMPP Erweiterung, die Verschlüsselungsmethoden und -protokolle. DIe Bibliothen ist für Android, iOS, Windows, MacOs etc verfügbar.
Die entsprechenden Chat-Clients auf den jeweiligen Plattformen nutzen diese Bibliothek und implementieren das UI. Teil meiner Aufgabe ist die Unterstürtzung um Implementierung der Android Chat-Client. Die Entwicklung für Android erfolgt in Kotlin.

06/2018 - 12/2018
Entwicklung einer Android Anwendung zur Erfassung von Störungen und Defekten im Bahnbereich, Spezifikation REST Schnittstelle zum Server
Atos/VPS (Transport und Logistik, 5000-10.000 Mitarbeiter)

Eine einfach zu bedienende Android Andwendung zur Erfassung von diversen Störungen im Bahnbetrieb, melden von defekten Teilen wie Signale, Weichen und ähnliches. Besonderer Wert wurde auf einfach und schnell Bedienung gelegt, damit das Betriebspersonal (Lokführer, Rangierführer) schnell und ohne weiter Ablenkungen Störungen und Defekte melden können.
Die Entwicklung erfolgte in sehr enger Abstimmung mit dem Kunden und dem Fachpersonal.
Desweiteren wurde eine REST Schnittstelle zwischen der Android Anwendung und dem Server spezifiziert und in der Anwendung implementiert.
Uterstürtzung bei Inbetriebnahme der Gesamtlösung, Anwendung inklusive Serveranteil.

05/2017 - 12/2017
Entwicklung einer Android Anwendung im Bereich Bank
Atos/Helaba (Banken und Finanzdienstleistungen, 5000-10.000 Mitarbeiter)

Der Kunde benötigt eine Rahmenapplikation, in die verschiedene weitere Funktionsmodule eingegliedert werden können. In einem ersten Schritte wurde ein Modul für Videolegitimation in die Rahmenapplikation integriert. In weiteren Schritte sollen weitere Module folgen.

Daneben die Unterstützung der Projektleitung bei Android-spezifischen Fragen, Deploymentkonzept, Bewertung der Softwarezulieferungen von Dritten, usw.


03/2013 - 12/2017
Design und Implementierung einer Kommunikationsanwendung für Android
Silent Circle (Telekommunikation, 50-250 Mitarbeiter)

Die Anwendung implementiert verschlüsselte Audio- und Videoübertragung sowie Messaging mit Attachments (u.a. Audio, Video, Bild Attachements). Die Anwendung nutzt die übliche Android Architektur wie Activities, Fragments, Boradcastreceivers, und Services.

Besondere Schwerpunkte dieser Anwendung liegen auf den Bereichen Sicherheit der Anwendung (verschlüsselte Kommunikation), Sicherheit der Daten, einfache Bedienbarkeit (UI), sowie auf Energieeffizienz um die Laufzeit der mobilen Geräte nicht zu verkürzen.

Die Verschlüsselungsfunktionen sowie bestimmte Protokollfunktionen wurden in den Programmiersprachen C und C++ implementiert und über die entsprechenden Schnittstellen mit dem Android Java Code integriert. Hierbei wurde das Android NDK verwendet.

Die Nutzung von Android Diensten wie zum Beispiel Bluetooth, Power- management, Netzmanagment und Monitoring ist für diese Anwendung notwendig.

Ein wichtiger Teil des Projekts und der Implementierung ist die Integration der Anwendung mit den Backendsystemen SIP Server, Benutzerverwaltung (Provisioning), und Konfigurationssystemen. Die Integration mit Benutzer- verwaltung und den Konfigurationssystemen Integration erfolgt mit Webservices (REST, JSON)


01/2017 - 03/2017
Erweiterung einer Android Anwendung im Bereich Fahrzeugautomatisierung
(Automobil und Fahrzeugbau)

In diesem Projekt bestand die Aufgabe darin eine bestehende Android- anwendung zu erweitern. Die Anwendung verwendet ein spezielles Framework, um Fahrzeugdaten zu erfassen und darzustellen, mit einem Backend-Server zu kommunizieren und Aufträge entgegenzunehmen.

Diese Anwendung wurde erweitert, um Bluetooth-Geräte zur Datenerfassung (Scanner, Fahrzeugdaten) zu unterstützen. Zusätzlich wurden noch eine Netzwerküberwachung sowie Schnittstellen für RFID Karten entwickelt.


Reisebereitschaft

Verfügbar in den Ländern Deutschland
Ab ca. Oktober 2020 bevorzugt Großraum München
Profilbild von Werner Dittmann Werner Dittmann aus Albaching Werner Dittmann
Registrieren