Professionelle Softwareentwicklung in C++ für Linux. + Datenbanken z.B.PostgreSQL + Weitere Programmiersprachen (Java, Shell/Bash, PHP, JS, ...) + ..
Aktualisiert am 17.09.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 17.09.2024
Verfügbar zu: 100%
davon vor Ort: 10%
C++
Software Architect
Java
PHP
Bash Shell
JavaScript
Web Protokolle: IP, TCP, UDP, HTPP
IoT Protokolle: MQTT, OPC UA
Daten Formate: XML(XSD, XPATH), JSON
Web Services: SOAP, RESTful
Entwicklungswerkzeuge: Eclipse, make, gdb, tcpdump/wireshark, netcat nmap, valgrind,
Unix-Werkzeuge: sed, awk, vi, etc.
Deutsch
Muttersprache
Englisch
fließend
Rumänisch
radebrechend

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
möglich

Projekte

Projekte

1 Jahr 10 Monate
2022-10 - 2024-07

Eppendorf SE: Software-Architect & Leitungsoftwareentwicklung in Scrum-Project

Software-Architect C++
Software-Architect
Rollen:
Software-Architect
Leitung Software-Enwicklung (verschiedene Subteams) im Scrum-Project
Teamlead C++

Aufgaben:
Organisation der Entwicklung (Bestandsprodukt und Neuentwicklung)
Konzeption und Realisierung des C++ Backends
Anleitung und Training anderer Teammitglieder
Embedded Linux C++
C++
Eppendorf SE
remote, Hamburg
11 Monate
2021-10 - 2022-08

Bundesdruckerei

Senior Software Engineer C++ Visual Studio gitlab
Senior Software Engineer

Implementation und Weiterentwicklung von Softwarekomponenten inkl. der Erstellung von Unit bzw. Komponententests
Ausarbeitung technischer Lösungsmöglichkeiten in direkter Interaktion mit dem Architekten sowie angemessene
Dokumentation der Umsetzung Analyse und Beseitigung von Fehlern im Rahmen des 3rd Level Supports
Betrieb der entwickelten Anwendungen auf unserer Containerplattform (DevOps) aktive Teilnahme am agilen Entwicklungsprozess

C++ Visual Studio gitlab
9 Monate
2021-01 - 2021-09

Bosch Building Technology (Festanstellung)

Software-Architekt C++ Software Architektur Tech Lead ...
Software-Architekt

Analyse und Weiterentwicklung des Bestandssystems einer Überfall- und Alarmmeldeanlage
Planung und Realisierung des Nachfolgesystems
Etablierung eines Software-Entwicklungsteams


Eingesetzte Qualifikationen

Software Architektur / Modellierung, UML

C++ Software Architektur Tech Lead Linux MS Azure DevOps Git Confluence Atlassian JIRA
Robert Bosch GmbH
Aachen
1 Jahr 4 Monate
2019-09 - 2020-12

Neuentwicklung Kontrollwaage für Minebea Intec

Software Architect & Senior Software Engineer (Festanstellung) C++ Embedded Linux JavaScript Object Notation (JSON) ...
Software Architect & Senior Software Engineer (Festanstellung)
Softwareearchitektur und -entwicklung
- Konzeption und Implementierung einer komponentenbasierten, multithreadingfähigen Softwarearchitektur, die die parallele Verarbeitung von Request/Responses und interner Tasks ermöglicht
- Definition der States und Life-Cycles des Gesamtsystems sowie der bereitgestellten allgemeinen Services und spezifischen Komponenten
- Konzeption und Implementierung einer automatisierten JSON/C++ und vice versa Konvertierung von komplexen Datentypen zur Compile-Zeit, basierend auf Boost Hana
- Konzeption und Implementierung eines Request/Response-Verfahrens auf Basis des MQTT-Protokolls zur Kommunikation mit dem UI und der automatisierten Umwandlung zwischen JSON und C++-Objekten (s.o.)
- Erstellung von Debian-Paketen zum Deployment der aktuellen Software und Bereitstellung eines ? auf diesen basierenden ? Live-Systems, um die Integration des UIs durch das HMI-Team zu ermöglichen
- Evaluation einer ORM-Bibliothek und Integration in das Gesamtprojekt
- Schulung des Teams zu allen obigen Themen

Tätigkeiten in einem internationalen IIOT-Projekt
- Analyse der cloudbasierten System-Architektur
- Erstellung von Anforderungen für die Web-Applikation
- Prüfen und Implementieren von Anforderungen innerhalb der verantworteten Neuentwicklung und im Bestandscode
- Weiterbildung im Bereich OPC-UA

Verbesserungen des Prozesses der Softwareentwicklung
- Schulung der gesamten Abteilung zu den Themen Unit Testing (Boost), Versionskontrolle (svn), OOP (Schwerpunkt C++)
C++ Embedded Linux JavaScript Object Notation (JSON) Software Architektur / Modellierung Testing (IT) UML
Minebea Intec GmbH
Aachen
1 Jahr 1 Monat
2018-09 - 2019-09

Neuentwicklung eines Kontrollwaagensystems

SOFTWARE ARCHITECT / SENIOR SOFTWARE ENGINEER
SOFTWARE ARCHITECT / SENIOR SOFTWARE ENGINEER
Für Minebea Intec, global führender Hersteller für Industrielösungen, u.a. Kontrollwaagen: Neuentwicklung eines Kontrollwaagensystems zur Anwendung in der Lebensmittelindustrie und weiteren Branchen mit hohen Anforderungen an Genauigkeit, Durchsatz, gesetzlichen Vorschriften, wie z.B. Eichfähigkeit, und Industriestandards. Zuständig für die Architektur und Realisierung des gesamten Backends inklusive der Anbindung des UIs per MQTT. 

Softwareearchitektur und -entwicklung 
  • Konzeption und Implementierung einer komponentenbasierten, multithreadingfähigen Softwarearchitektur, die die parallele Verarbeitung von Request/Responses und interner Tasks ermöglicht 
  • Definition der States und Life-Cycles des Gesamtsystems sowie der bereitgestellten allgemeinen Services und spezifischen Komponenten 
  • Konzeption und Implementierung einer automatisierten JSON/C++ und vice versa Konvertierung von komplexen Datentypen zur Compile-Zeit, basierend auf Boost Hana 
  • Konzeption und Implementierung eines Request/Response-Verfahrens auf Basis des MQTT-Protokolls zur Kommunikation mit dem UI und der automatisierten Umwandlung zwischen JSON und C++-Objekten (s.o.) 
  • Erstellung von Debian-Paketen zum Deployment der aktuellen Software und Bereitstellung eines ? auf diesen basierenden ? Live-Systems, um die Integration des UIs durch das HMI-Team zu ermöglichen 
  • Evaluation einer ORM-Bibliothek und Integration in das Gesamtprojekt 
  • Schulung des Teams zu allen obigen Themen

Tätigkeiten in einem internationalen IIOT-Projekt
  • Analyse der cloudbasierten System-Architektur 
  • Erstellung von Anforderungen für die Web-Applikation 
  • Prüfen und Implementieren von Anforderungen innerhalb der verantworteten Neuentwicklung und im Bestandscode 
  • Weiterbildung im Bereich OPC-UA
 
Verbesserungen des Prozesses der Softwareentwicklung
  • Schulung der gesamten Abteilung zu den Themen Unit Testing (Boost), Versionskontrolle (svn), OOP (Schwerpunkt C++) 
Minebea Intec | Aachen
3 Monate
2018-07 - 2018-09

Umsetzung eines C++-Projekts

SENIOR SOFTWARE ENGINEER
SENIOR SOFTWARE ENGINEER
Für ModuleWorks, weltmarktführender Entwickler für Softwarekomponenten im Bereich CAD/CAM: Umsetzung eines C++-Projekts zur realistischen Visualisierung von CNC-Fräßvorgängen sowie einer Alexa-Anbindung. 
Module Works | Aachen
4 Jahre 4 Monate
2014-03 - 2018-06

Entwicklung des Xparc Produkts

SENIOR SOFTWARE ENGINEER C++ Embedded Linux Testing (IT) ...
SENIOR SOFTWARE ENGINEER
Amano Parking Europe N.V., ist innerhalb der Amano Corporation Japan für die Entwicklung des Xparc Produkts verantwortlich, das barcodegestützte Parkraumbewirtschaftung in mehr als 45 Ländern auf allen Kontinenten ermöglicht. Planung, Konzeption und Implementierung folgender Komponenten des Xparc-Gesamtsystems (soweit nicht anders angegeben implementiert in C++ unter Linux).

Softwareentwicklung und -architektur
  • Bluetooth Reader zur Identifikation durch Smartphone-Apps an Ein- und Ausfahrten als papierloser Ersatz der herkömmlichen Ticketidentifikation; Implementierung basierend auf Bluetooth Low Energy und D-Bus sowie zusätzlich einer Prototyp-App in React Native 
  • VoIP-Client, der Nutzern basierend auf SIP/RTP bei Bedarf audiovisuelle Kommunikation mit lokal oder remote verfügbaren Operatoren ermöglicht 
  • Systemkomponente, die verschiedene hard- und softwarebasierte Kennzeichenerkennungstechnologien verwaltet, um nummernschildbasierte Fahrzeugidentifikation uniform im Gesamtsystem anzubieten 
  • Realisierung eines Fiskalspeichers zur Einnahmenverfolgung entsprechend lettischer Gesetzgebung in XML-Dateien und binärem WORM-Speicher 
  • Javabasierter Service um interne Meldungen in binärem, proprietärem Format aufzunehmen und als JSON-Objekte über WebSockets zu dispatchen 
  • Konzeption einer hierarchischen Public/Private-Key Infrastruktur zum sicheren Zugriff auf Elemente (ggf. entfernter) Systeme 
  • Konzeption und Implementierung einer Reporting-Datenbank basierend auf Datenbank-Triggern und Web Services und entsprechenden Clients

Verbesserungen des Prozesses der Softwareentwicklung 
  • Konzeption und Implementierung einer Continuous-Integration-Lösung basierend auf standardisierten Softwarebuilds (make, Jenkins, dpkg) 
  • Automatisiert: saubere Buildumgebung, automatische Abhängigkeitsauflösung, Testausführung, Reporting 
  • On-demand: lokal, wahlweise nur Programm oder vollst. Debianpaket 
  • Konzeption und Implementierung einer Release-Methodik (inklusive Installations- und Upgrade-Mechanismus basierend auf Debianpaketen) 
  • Schulungen zu obigen Prozessverbesserrungen
C++ Embedded Linux Testing (IT) UML
Amano Parking Europe N.V. | Aachen
9 Jahre 5 Monate
2004-10 - 2014-02

Web Service ? implementiert

SOFTWARE ENGINEER (studiumsbedingt Teilzeit) C++ HTML JavaScript ...
SOFTWARE ENGINEER (studiumsbedingt Teilzeit)

Softwareentwicklung und -architektur 

  • Web Service ? implementiert in Java und basierend auf Apache CXF ? der die zentrale, externe Schnittstelle zum Hauptprodukt Xparc anbietet 
  • Zentrale Applikation zur Konfiguration, zum (Live-)Monitoring und Reporting des Xparc Gesamtsystems implementiert in den Webtechnologien PHP, JavaScript und HTML (später erweitert um WebSockets) 
  • Virtualisierung einer Handkasse mithilfe des MVC-Web Frameworks yii 

Verbesserungen des Prozesses der Softwareentwicklung 
  • Etablierung des Debian-Paket-Mechanismus als Standard zur Installation und Aktualisierung aller Komponenten des Xparc-Systems 
  • Einführung der Versionskontrolle mit Subversion 
  • Einführung eines Bugtrackingsystems (Bugzilla) 
  • Einführung eines Wikis zur internen Dokumentation 
  • Schulungen zu obigen Prozessverbesserrungen

C++ HTML JavaScript PHP
Amano Parking Europe N.V. (bis 2010 Axxteq GmbH)
Aachen
7 Monate
2004-03 - 2004-09

Web Service ? implementiert

SOFTWARE ENGINEER (Vollzeit)
SOFTWARE ENGINEER (Vollzeit)
Softwareentwicklung und -architektur 
  • Web Service ? implementiert in Java und basierend auf Apache CXF ? der die zentrale, externe Schnittstelle zum Hauptprodukt Xparc anbietet 
  • Zentrale Applikation zur Konfiguration, zum (Live-)Monitoring und Reporting des Xparc Gesamtsystems implementiert in den Webtechnologien PHP, JavaScript und HTML (später erweitert um WebSockets) 
  • Virtualisierung einer Handkasse mithilfe des MVC-Web Frameworks yii 

Verbesserungen des Prozesses der Softwareentwicklung 
  • Etablierung des Debian-Paket-Mechanismus als Standard zur Installation und Aktualisierung aller Komponenten des Xparc-Systems 
  • Einführung der Versionskontrolle mit Subversion 
  • Einführung eines Bugtrackingsystems (Bugzilla) 
  • Einführung eines Wikis zur internen Dokumentation 
  • Schulungen zu obigen Prozessverbesserrungen
Amano Parking Europe N.V. (bis 2010 Axxteq GmbH)
Aachen

Aus- und Weiterbildung

Aus- und Weiterbildung

2 Jahre 7 Monate
2011-10 - 2014-04

Master-Studium Informatik

Master of Science (Computer Science), RWTH Aachen
Master of Science (Computer Science)
RWTH Aachen

Master Thesis: Validation of Architectural Communication Integrity Based on Run-Time Monitoring of Software Systems


6 Jahre 8 Monate
2004-09 - 2011-04

Informatik-Studium

Bachelor of Science (Computer Science), RWTH Aachen
Bachelor of Science (Computer Science)
RWTH Aachen

Bachelor Thesis: Development of an Integrated Design and Administration Environment for Technical Workflows



2 Jahre 5 Monate
2001-09 - 2004-01

Ausbildung Fachinformatiker

Fachinformatiker Anwendungsentwickler, AixTeMa GmbH
Fachinformatiker Anwendungsentwickler
AixTeMa GmbH
Softwareentwicklung, Webtechnologien

Position

Position

Senior Software Engineer

Meine Kenntnisse und Erfahrungen als Software-Entwickler setze ich zielgerichtet ein, um professionelle und hochwertige Software zu realisieren. Als C++ Experte entwickle ich eigenverantwortlich passende Software-Komponenten.

Als Linux-Enthusiast steht mir während der Entwicklung das gesamte Linux Ökosystem zu Verfügung, welches ich in verschiedenen Bereichen (z.B. Qualitätssicherung, Code/Daten Generierung, Debugging, ...) gewinnbringend einzusetzen weiß.

Jenseits von C++ und Linux, kenne ich unterschiedliche Programmiersprachen, Betriebssystem und Konzepte, so dass ich mit erweitertem Horizont Entscheidungen treffen und mich in Diskussionen einbringen kann.

Zusätzlich habe ich bereits selbstständig Continous Integration eines komplexen verteilten Systems per Jenkins implementiert und auch CI per MS DevOps administriert.



Software-Architect

Zusätzlich zu meinen Kenntnissen als Software Engineer verfüge ich auch über Expertise in der Software-Architektur. Eine gute Architektur ist das tragende Gerüst der Software, sie erlaubt es Teile des Systems zu entkoppeln und senkt so die Komplexität für die Entwickler. Als Architect stehen für mich Qualität und Agilität der Software-Architektur an erster Stelle.

Qualität erlaubt robuste, deterministische Systeme zu bauen.

Agilität erlaubt die Architektur so inkrementell wie den Source Code zu entwickeln und sie während der Entwicklung zu ändern.



Gerne verknüpfe ich beide Bereiche als programmierender Architekt oder als modellierender Software Engineer. Um professionell Software entwickeln zu können, müssen in natürlicher Weise Designentscheidungen getroffen, Daten modelliert und Lösungsansätze dokumentiert werden, so dass ich auch bei reinen Programmieraufgaben, meine konzeptionellen Fähigkeiten einsetzen kann.


Kompetenzen

Kompetenzen

Top-Skills

C++ Software Architect Java PHP Bash Shell JavaScript Web Protokolle: IP, TCP, UDP, HTPP IoT Protokolle: MQTT, OPC UA Daten Formate: XML(XSD, XPATH), JSON Web Services: SOAP, RESTful Entwicklungswerkzeuge: Eclipse, make, gdb, tcpdump/wireshark, netcat nmap, valgrind, Unix-Werkzeuge: sed, awk, vi, etc.

Produkte / Standards / Erfahrungen / Methoden

SKILLS
  • Teamplayer 
  • eigeninitiativ 
  • impulsgebend 
  • analytisch 
  • lösungsorientiert 
  • sozial kompetent 
  • wissbegierig 
  • selbstkritisch

Profil
Softwarearchitekt und Entwickler mit fast 20 Jahre Berufserfahrung und tiefem Wissen der Softwareentwicklung, insbesondere in C++ und Linux, sowie breit gestreutem Wissen durch Kenntnisse der Arbeitsweisen von Programmiersprachen, Betriebssystemen, Netzwerken, UIs, sowie Konzepten hinter Design Patterns und Software Architekturen. Meine Expertise setze ich gewinnbringend in Projekte und Prozesse ein um qualitativ hochwertige Software zu entwickeln.

WEBTECHNOLOGIEN
  • HTML
  • CSS

PROTOKOLLE
  • Web: TCP, UDP, HTTP, MQTT
  • IOT: OPC UA

FORMATE
  • XML (XSD, XPATH)
  • JSON

ENTWICKLUNGS - WERKZEUGE
  • Eclipse
  • make
  • gdb
  • tcpdump/wireshark 
  • netcat
  • nmap
  • valgrind
  • Unix-Werkzeuge: sed, awk, vi, etc.

Programmiersprachen

C++
03 | 11 | 14 | 17
Java
Shell/Bash
PHP
JavaScript
Prolog

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
möglich

Projekte

Projekte

1 Jahr 10 Monate
2022-10 - 2024-07

Eppendorf SE: Software-Architect & Leitungsoftwareentwicklung in Scrum-Project

Software-Architect C++
Software-Architect
Rollen:
Software-Architect
Leitung Software-Enwicklung (verschiedene Subteams) im Scrum-Project
Teamlead C++

Aufgaben:
Organisation der Entwicklung (Bestandsprodukt und Neuentwicklung)
Konzeption und Realisierung des C++ Backends
Anleitung und Training anderer Teammitglieder
Embedded Linux C++
C++
Eppendorf SE
remote, Hamburg
11 Monate
2021-10 - 2022-08

Bundesdruckerei

Senior Software Engineer C++ Visual Studio gitlab
Senior Software Engineer

Implementation und Weiterentwicklung von Softwarekomponenten inkl. der Erstellung von Unit bzw. Komponententests
Ausarbeitung technischer Lösungsmöglichkeiten in direkter Interaktion mit dem Architekten sowie angemessene
Dokumentation der Umsetzung Analyse und Beseitigung von Fehlern im Rahmen des 3rd Level Supports
Betrieb der entwickelten Anwendungen auf unserer Containerplattform (DevOps) aktive Teilnahme am agilen Entwicklungsprozess

C++ Visual Studio gitlab
9 Monate
2021-01 - 2021-09

Bosch Building Technology (Festanstellung)

Software-Architekt C++ Software Architektur Tech Lead ...
Software-Architekt

Analyse und Weiterentwicklung des Bestandssystems einer Überfall- und Alarmmeldeanlage
Planung und Realisierung des Nachfolgesystems
Etablierung eines Software-Entwicklungsteams


Eingesetzte Qualifikationen

Software Architektur / Modellierung, UML

C++ Software Architektur Tech Lead Linux MS Azure DevOps Git Confluence Atlassian JIRA
Robert Bosch GmbH
Aachen
1 Jahr 4 Monate
2019-09 - 2020-12

Neuentwicklung Kontrollwaage für Minebea Intec

Software Architect & Senior Software Engineer (Festanstellung) C++ Embedded Linux JavaScript Object Notation (JSON) ...
Software Architect & Senior Software Engineer (Festanstellung)
Softwareearchitektur und -entwicklung
- Konzeption und Implementierung einer komponentenbasierten, multithreadingfähigen Softwarearchitektur, die die parallele Verarbeitung von Request/Responses und interner Tasks ermöglicht
- Definition der States und Life-Cycles des Gesamtsystems sowie der bereitgestellten allgemeinen Services und spezifischen Komponenten
- Konzeption und Implementierung einer automatisierten JSON/C++ und vice versa Konvertierung von komplexen Datentypen zur Compile-Zeit, basierend auf Boost Hana
- Konzeption und Implementierung eines Request/Response-Verfahrens auf Basis des MQTT-Protokolls zur Kommunikation mit dem UI und der automatisierten Umwandlung zwischen JSON und C++-Objekten (s.o.)
- Erstellung von Debian-Paketen zum Deployment der aktuellen Software und Bereitstellung eines ? auf diesen basierenden ? Live-Systems, um die Integration des UIs durch das HMI-Team zu ermöglichen
- Evaluation einer ORM-Bibliothek und Integration in das Gesamtprojekt
- Schulung des Teams zu allen obigen Themen

Tätigkeiten in einem internationalen IIOT-Projekt
- Analyse der cloudbasierten System-Architektur
- Erstellung von Anforderungen für die Web-Applikation
- Prüfen und Implementieren von Anforderungen innerhalb der verantworteten Neuentwicklung und im Bestandscode
- Weiterbildung im Bereich OPC-UA

Verbesserungen des Prozesses der Softwareentwicklung
- Schulung der gesamten Abteilung zu den Themen Unit Testing (Boost), Versionskontrolle (svn), OOP (Schwerpunkt C++)
C++ Embedded Linux JavaScript Object Notation (JSON) Software Architektur / Modellierung Testing (IT) UML
Minebea Intec GmbH
Aachen
1 Jahr 1 Monat
2018-09 - 2019-09

Neuentwicklung eines Kontrollwaagensystems

SOFTWARE ARCHITECT / SENIOR SOFTWARE ENGINEER
SOFTWARE ARCHITECT / SENIOR SOFTWARE ENGINEER
Für Minebea Intec, global führender Hersteller für Industrielösungen, u.a. Kontrollwaagen: Neuentwicklung eines Kontrollwaagensystems zur Anwendung in der Lebensmittelindustrie und weiteren Branchen mit hohen Anforderungen an Genauigkeit, Durchsatz, gesetzlichen Vorschriften, wie z.B. Eichfähigkeit, und Industriestandards. Zuständig für die Architektur und Realisierung des gesamten Backends inklusive der Anbindung des UIs per MQTT. 

Softwareearchitektur und -entwicklung 
  • Konzeption und Implementierung einer komponentenbasierten, multithreadingfähigen Softwarearchitektur, die die parallele Verarbeitung von Request/Responses und interner Tasks ermöglicht 
  • Definition der States und Life-Cycles des Gesamtsystems sowie der bereitgestellten allgemeinen Services und spezifischen Komponenten 
  • Konzeption und Implementierung einer automatisierten JSON/C++ und vice versa Konvertierung von komplexen Datentypen zur Compile-Zeit, basierend auf Boost Hana 
  • Konzeption und Implementierung eines Request/Response-Verfahrens auf Basis des MQTT-Protokolls zur Kommunikation mit dem UI und der automatisierten Umwandlung zwischen JSON und C++-Objekten (s.o.) 
  • Erstellung von Debian-Paketen zum Deployment der aktuellen Software und Bereitstellung eines ? auf diesen basierenden ? Live-Systems, um die Integration des UIs durch das HMI-Team zu ermöglichen 
  • Evaluation einer ORM-Bibliothek und Integration in das Gesamtprojekt 
  • Schulung des Teams zu allen obigen Themen

Tätigkeiten in einem internationalen IIOT-Projekt
  • Analyse der cloudbasierten System-Architektur 
  • Erstellung von Anforderungen für die Web-Applikation 
  • Prüfen und Implementieren von Anforderungen innerhalb der verantworteten Neuentwicklung und im Bestandscode 
  • Weiterbildung im Bereich OPC-UA
 
Verbesserungen des Prozesses der Softwareentwicklung
  • Schulung der gesamten Abteilung zu den Themen Unit Testing (Boost), Versionskontrolle (svn), OOP (Schwerpunkt C++) 
Minebea Intec | Aachen
3 Monate
2018-07 - 2018-09

Umsetzung eines C++-Projekts

SENIOR SOFTWARE ENGINEER
SENIOR SOFTWARE ENGINEER
Für ModuleWorks, weltmarktführender Entwickler für Softwarekomponenten im Bereich CAD/CAM: Umsetzung eines C++-Projekts zur realistischen Visualisierung von CNC-Fräßvorgängen sowie einer Alexa-Anbindung. 
Module Works | Aachen
4 Jahre 4 Monate
2014-03 - 2018-06

Entwicklung des Xparc Produkts

SENIOR SOFTWARE ENGINEER C++ Embedded Linux Testing (IT) ...
SENIOR SOFTWARE ENGINEER
Amano Parking Europe N.V., ist innerhalb der Amano Corporation Japan für die Entwicklung des Xparc Produkts verantwortlich, das barcodegestützte Parkraumbewirtschaftung in mehr als 45 Ländern auf allen Kontinenten ermöglicht. Planung, Konzeption und Implementierung folgender Komponenten des Xparc-Gesamtsystems (soweit nicht anders angegeben implementiert in C++ unter Linux).

Softwareentwicklung und -architektur
  • Bluetooth Reader zur Identifikation durch Smartphone-Apps an Ein- und Ausfahrten als papierloser Ersatz der herkömmlichen Ticketidentifikation; Implementierung basierend auf Bluetooth Low Energy und D-Bus sowie zusätzlich einer Prototyp-App in React Native 
  • VoIP-Client, der Nutzern basierend auf SIP/RTP bei Bedarf audiovisuelle Kommunikation mit lokal oder remote verfügbaren Operatoren ermöglicht 
  • Systemkomponente, die verschiedene hard- und softwarebasierte Kennzeichenerkennungstechnologien verwaltet, um nummernschildbasierte Fahrzeugidentifikation uniform im Gesamtsystem anzubieten 
  • Realisierung eines Fiskalspeichers zur Einnahmenverfolgung entsprechend lettischer Gesetzgebung in XML-Dateien und binärem WORM-Speicher 
  • Javabasierter Service um interne Meldungen in binärem, proprietärem Format aufzunehmen und als JSON-Objekte über WebSockets zu dispatchen 
  • Konzeption einer hierarchischen Public/Private-Key Infrastruktur zum sicheren Zugriff auf Elemente (ggf. entfernter) Systeme 
  • Konzeption und Implementierung einer Reporting-Datenbank basierend auf Datenbank-Triggern und Web Services und entsprechenden Clients

Verbesserungen des Prozesses der Softwareentwicklung 
  • Konzeption und Implementierung einer Continuous-Integration-Lösung basierend auf standardisierten Softwarebuilds (make, Jenkins, dpkg) 
  • Automatisiert: saubere Buildumgebung, automatische Abhängigkeitsauflösung, Testausführung, Reporting 
  • On-demand: lokal, wahlweise nur Programm oder vollst. Debianpaket 
  • Konzeption und Implementierung einer Release-Methodik (inklusive Installations- und Upgrade-Mechanismus basierend auf Debianpaketen) 
  • Schulungen zu obigen Prozessverbesserrungen
C++ Embedded Linux Testing (IT) UML
Amano Parking Europe N.V. | Aachen
9 Jahre 5 Monate
2004-10 - 2014-02

Web Service ? implementiert

SOFTWARE ENGINEER (studiumsbedingt Teilzeit) C++ HTML JavaScript ...
SOFTWARE ENGINEER (studiumsbedingt Teilzeit)

Softwareentwicklung und -architektur 

  • Web Service ? implementiert in Java und basierend auf Apache CXF ? der die zentrale, externe Schnittstelle zum Hauptprodukt Xparc anbietet 
  • Zentrale Applikation zur Konfiguration, zum (Live-)Monitoring und Reporting des Xparc Gesamtsystems implementiert in den Webtechnologien PHP, JavaScript und HTML (später erweitert um WebSockets) 
  • Virtualisierung einer Handkasse mithilfe des MVC-Web Frameworks yii 

Verbesserungen des Prozesses der Softwareentwicklung 
  • Etablierung des Debian-Paket-Mechanismus als Standard zur Installation und Aktualisierung aller Komponenten des Xparc-Systems 
  • Einführung der Versionskontrolle mit Subversion 
  • Einführung eines Bugtrackingsystems (Bugzilla) 
  • Einführung eines Wikis zur internen Dokumentation 
  • Schulungen zu obigen Prozessverbesserrungen

C++ HTML JavaScript PHP
Amano Parking Europe N.V. (bis 2010 Axxteq GmbH)
Aachen
7 Monate
2004-03 - 2004-09

Web Service ? implementiert

SOFTWARE ENGINEER (Vollzeit)
SOFTWARE ENGINEER (Vollzeit)
Softwareentwicklung und -architektur 
  • Web Service ? implementiert in Java und basierend auf Apache CXF ? der die zentrale, externe Schnittstelle zum Hauptprodukt Xparc anbietet 
  • Zentrale Applikation zur Konfiguration, zum (Live-)Monitoring und Reporting des Xparc Gesamtsystems implementiert in den Webtechnologien PHP, JavaScript und HTML (später erweitert um WebSockets) 
  • Virtualisierung einer Handkasse mithilfe des MVC-Web Frameworks yii 

Verbesserungen des Prozesses der Softwareentwicklung 
  • Etablierung des Debian-Paket-Mechanismus als Standard zur Installation und Aktualisierung aller Komponenten des Xparc-Systems 
  • Einführung der Versionskontrolle mit Subversion 
  • Einführung eines Bugtrackingsystems (Bugzilla) 
  • Einführung eines Wikis zur internen Dokumentation 
  • Schulungen zu obigen Prozessverbesserrungen
Amano Parking Europe N.V. (bis 2010 Axxteq GmbH)
Aachen

Aus- und Weiterbildung

Aus- und Weiterbildung

2 Jahre 7 Monate
2011-10 - 2014-04

Master-Studium Informatik

Master of Science (Computer Science), RWTH Aachen
Master of Science (Computer Science)
RWTH Aachen

Master Thesis: Validation of Architectural Communication Integrity Based on Run-Time Monitoring of Software Systems


6 Jahre 8 Monate
2004-09 - 2011-04

Informatik-Studium

Bachelor of Science (Computer Science), RWTH Aachen
Bachelor of Science (Computer Science)
RWTH Aachen

Bachelor Thesis: Development of an Integrated Design and Administration Environment for Technical Workflows



2 Jahre 5 Monate
2001-09 - 2004-01

Ausbildung Fachinformatiker

Fachinformatiker Anwendungsentwickler, AixTeMa GmbH
Fachinformatiker Anwendungsentwickler
AixTeMa GmbH
Softwareentwicklung, Webtechnologien

Position

Position

Senior Software Engineer

Meine Kenntnisse und Erfahrungen als Software-Entwickler setze ich zielgerichtet ein, um professionelle und hochwertige Software zu realisieren. Als C++ Experte entwickle ich eigenverantwortlich passende Software-Komponenten.

Als Linux-Enthusiast steht mir während der Entwicklung das gesamte Linux Ökosystem zu Verfügung, welches ich in verschiedenen Bereichen (z.B. Qualitätssicherung, Code/Daten Generierung, Debugging, ...) gewinnbringend einzusetzen weiß.

Jenseits von C++ und Linux, kenne ich unterschiedliche Programmiersprachen, Betriebssystem und Konzepte, so dass ich mit erweitertem Horizont Entscheidungen treffen und mich in Diskussionen einbringen kann.

Zusätzlich habe ich bereits selbstständig Continous Integration eines komplexen verteilten Systems per Jenkins implementiert und auch CI per MS DevOps administriert.



Software-Architect

Zusätzlich zu meinen Kenntnissen als Software Engineer verfüge ich auch über Expertise in der Software-Architektur. Eine gute Architektur ist das tragende Gerüst der Software, sie erlaubt es Teile des Systems zu entkoppeln und senkt so die Komplexität für die Entwickler. Als Architect stehen für mich Qualität und Agilität der Software-Architektur an erster Stelle.

Qualität erlaubt robuste, deterministische Systeme zu bauen.

Agilität erlaubt die Architektur so inkrementell wie den Source Code zu entwickeln und sie während der Entwicklung zu ändern.



Gerne verknüpfe ich beide Bereiche als programmierender Architekt oder als modellierender Software Engineer. Um professionell Software entwickeln zu können, müssen in natürlicher Weise Designentscheidungen getroffen, Daten modelliert und Lösungsansätze dokumentiert werden, so dass ich auch bei reinen Programmieraufgaben, meine konzeptionellen Fähigkeiten einsetzen kann.


Kompetenzen

Kompetenzen

Top-Skills

C++ Software Architect Java PHP Bash Shell JavaScript Web Protokolle: IP, TCP, UDP, HTPP IoT Protokolle: MQTT, OPC UA Daten Formate: XML(XSD, XPATH), JSON Web Services: SOAP, RESTful Entwicklungswerkzeuge: Eclipse, make, gdb, tcpdump/wireshark, netcat nmap, valgrind, Unix-Werkzeuge: sed, awk, vi, etc.

Produkte / Standards / Erfahrungen / Methoden

SKILLS
  • Teamplayer 
  • eigeninitiativ 
  • impulsgebend 
  • analytisch 
  • lösungsorientiert 
  • sozial kompetent 
  • wissbegierig 
  • selbstkritisch

Profil
Softwarearchitekt und Entwickler mit fast 20 Jahre Berufserfahrung und tiefem Wissen der Softwareentwicklung, insbesondere in C++ und Linux, sowie breit gestreutem Wissen durch Kenntnisse der Arbeitsweisen von Programmiersprachen, Betriebssystemen, Netzwerken, UIs, sowie Konzepten hinter Design Patterns und Software Architekturen. Meine Expertise setze ich gewinnbringend in Projekte und Prozesse ein um qualitativ hochwertige Software zu entwickeln.

WEBTECHNOLOGIEN
  • HTML
  • CSS

PROTOKOLLE
  • Web: TCP, UDP, HTTP, MQTT
  • IOT: OPC UA

FORMATE
  • XML (XSD, XPATH)
  • JSON

ENTWICKLUNGS - WERKZEUGE
  • Eclipse
  • make
  • gdb
  • tcpdump/wireshark 
  • netcat
  • nmap
  • valgrind
  • Unix-Werkzeuge: sed, awk, vi, etc.

Programmiersprachen

C++
03 | 11 | 14 | 17
Java
Shell/Bash
PHP
JavaScript
Prolog

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

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

Das Freelancer-Portal

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