Software Architektur, Algorithmen, Performance Optimierung, mathematische Optimierung, Operations Research, Data Science, Programmierung
Aktualisiert am 13.12.2023
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.03.2024
Verfügbar zu: 100%
davon vor Ort: 35%
Software Architektur
Algorithmen
Analyse
Optimierung
Performance
Data Science
Laufzeit Optimierung
C++14
Boost
STL
Python
C++ Templates
Data Analysis
Performance analysis
lineare Optimierung
nichtlineare Optimierung
gurobi
Deutsch
C2 - Mother Tongue
Englisch
C1 - Effective Operational Proficiency
Französisch
B1 - Threshold
Italienisch
A1 - Breakthrough

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
möglich

Projekte

Projekte

2 Jahre
2020-11 - 2022-10

Lead Developer C++ für algorithmisches Trading

Mathematiker, Software Architekt, Software Developer C++ C++17 Algorithmen Algorithmenentwicklung ...
Mathematiker, Software Architekt, Software Developer C++
Mathematische Analysen, Software Architektur, Implementierungen in C++ und Python, Performance Analyse für Algorithmen basierten automatisierten Börsenhandel.


Git CMake Python C++17
C++17 Algorithmen Algorithmenentwicklung Mathematik Finanzmathematik Softwarearchitektur
EnBW
Karlsruhe (Baden)
3 Monate
2020-08 - 2020-10

Mathematische Optimierung im Smart-Meter Gateway Umfeld

Mathematische Leitung Optimierung Mathematische Optimierung c++ Python
Mathematische Leitung Optimierung

Entwicklung eines Optimierungsansatzes zur Optimierten der Einspeisung, Speicherung und Energieverbrauchs im Haushalt. Unter Berücksichtigung aller vorliegenden Bedingungen des zu optimierenden Haushalts wird eine individuelle auf diesen Haushalt zugeschnittene Optimierung durchgeführt. Dabei fließen in die Berechnung insbesondere folgende Variablen ein:

* tagesaktueller Strompreis und Einspeisevergütung

* vorhandene Speicherkapazitäten und Ladezustände der Batterien (Rückspeisung Elektroauto möglich)

* vorhandene Einrichtungen zur Stromeigen Erzeugung wie Solaranlagen und andere

* Steuerbare Verbraucher wie Elektroautos und anderer Elektrogeräte


Mathematische Optimierung c++ Python
Inno2grid
Berlin
7 Monate
2019-11 - 2020-05

ICAS1 Performance

Software Architekt Analyse C++14 C++ templates ...
Software Architekt

Startup performance optimization with systemd. Software architecture and software development for ICAS1 project.

Performance analysis and optimization in the context of Adaptive Autosar.

Enterprise Architect Perforce Corbos Studio Eclipse DLT-Viewer Packet Sender Wireshark systemd valgrind Atlassian JIRA
Analyse C++14 C++ templates DLT AUTOSAR Adaptive Autosar Flamegraph Flamegraph Performance Analyse perf linux profiler Performance Profiling Kanban OOA OOD
Continental Automotive
Wetzlar
9 Monate
2019-02 - 2019-10

Satelliten Daten Analyse

Consultant, Mathematiker, Software Architekt, Software Engineer C++ SVN Jenkins ...
Consultant, Mathematiker, Software Architekt, Software Engineer

Prüfung der Software Architektur, Design einer library für die spektroskopische Analyse von Copernicus Satelliten Daten, nichtlineare Optimierung, lineare Optimierung, Software Entwicklung in Python und C++, Concurrency, Bash und Cshell Skripting

Boost STL C++14 C++ Python Linux Numpy C++ Templates CMake NetCDF
C++ SVN Jenkins Template Boost STL Python Git Laufzeit-Optimierung nichtlineare Optimierung lineare Optimierung Optimierung Software Architektur Multithreading Concurrent Engineering Performance Analyse CShell Bash Shell
DLR
Oberpfaffenhofen, München, Germany
1 Jahr
2018-03 - 2019-02

Automated Trading Strategy

Finanzmathematiker Software Engineering Finanzmathematik Software Architektur ...
Finanzmathematiker
  • Building an automated, profit-oriented trading strategy for trading with cryptocurrencies and Implementation in Python.
Ubuntu SUSELinux Debian
Software Engineering Finanzmathematik Software Architektur Python
Nürnberg
5 Monate
2017-10 - 2018-02

Machine Learning

Software Architekt Machine Learning Reinforcement Learning Software Architecture ...
Software Architekt

Kapazitätsoptimierung von Produktionsanlagen durch Reinforcement Learning, Mathematische Modellierung von Produktionsanlagen, Software Architektur des Modells der Produktionsanlage,
Implementierung des Modells der Produktionsanlage in Python,

Git Keras TensorFlow Python C++14 C++
Machine Learning Reinforcement Learning Software Architecture Data Science Performance Optimierung evolutionäre Algorithmen Testabdeckung mathematische Modellierung
Siemens
Nürnberg
11 Monate
2016-11 - 2017-09

Calculating group intersections in mathematical group theory

Algorithm design, Software Architect Algorithm Design Software Architecture GAP programming language
Algorithm design, Software Architect
  • GAP is a system for calculations using groups and algorithms in discrete algebra.
  • In this project, an algorithm for the computation of the intersection between two subgroups will be added to the system.
  • This project is initiated by Prof. [name on request] from the Chair of Mathematics B at RWTH Aachen.
GAP
Algorithm Design Software Architecture GAP programming language
RWTH Aachen
Aachen / Bamberg
6 Jahre 5 Monate
2010-04 - 2016-08

Design and Implementation of Algorithms for the solution of Isomorphism Problems

Mathematician, Software Architect, Software Engineer Algebra Mathematik C++ ...
Mathematician, Software Architect, Software Engineer

Algorithms solving the isomorphism problem are in use in chemistry, pharmaceutical industry, mathematics and computer science. Many of those isomorphism problems are NP-complete and the only available algorithms solving those problems have an exponential calculating time. In my recently finished PhD thesis in mathematics and computer science, I have developed three different algorithms solving a vast set of isomorphism problems. These algorithms originate from the well-known "Snakes and Ladders" algorithm. I developed a new mathematical foundation which made it possible to drastically reduce the memory consumption, enable a branch and bound strategy and enable the execution on a distributed system. These algorithms have been described in my PhD thesis.

Boost C++ Librarys
Algebra Mathematik C++ C Template Programming Computer Science Combinatorics Distributed Computing Concurrent Computing Parallel Computing Group Theory Operations Research
Dissertation at Bayreuth University
Nürnberg, Bayreuth
7 Monate
2014-11 - 2015-05

Test Engineer for Vehicle Break Systems

Software Test Engineer, Software Engineer C Acceptance Test CANoe ...
Software Test Engineer, Software Engineer
  • At Mando Corporation I designed and implemented tests for the security critical processing of sensor data in vehicle break systems.
CANoe C# Python C++14 DOORS AUTOSAR
C Acceptance Test CANoe CAN-Bus FlexRay SPICE V-Modell C# SIL HIL ECU EPB ISO 26262 ASIL ASIL D MISRA C++
Mando Corporation Europe
Eschborn, Frankfurt
10 Monate
2011-04 - 2012-01

Sensor Data Fusion

Software Architect and Software Engineer C++ Cmake Enterprise Architect Visual Studio ...
Software Architect and Software Engineer C++
  • Design and implementation of an algorithm for the sensor data fusion of independent devices.
  • This algorithm has been used for high accuracy object tracking.
  • Evaluation of the accuracy of the algorithm's outcome.
  • Synchronization of sensor data sources such as high accuracy accelerometers, odometers, GPS correction data, GPS and high accuracy gyroscopes.
Cmake Enterprise Architect Visual Studio C++ Git SVN Scrum Agile Softwareentwicklung UML Enterprise Architect Data Science ECU Scrum
Elektrobit Group
Erlangen
2 Jahre 1 Monat
2009-03 - 2011-03

Berechnung von k-Arks   ( C++ )

Der Schwerpunkt dieses Projektes liegt in der Entwicklung eines Algorithmus zur Lösung der in diesem Zusammenhang auftretenden Isomorphieprobleme. Mit Hilfe dieses Algorithmus konnten bisher ungelöste mathematische Fragen aus dem Bereich der Kodierungstheorie beantwortet werden. Im Rahmen dieses Projektes entstanden auch mehrere wissenschaftliche Veröffentlichungen.

2 Jahre 11 Monate
2007-05 - 2010-03

Teaching and realisation of exams, organisation of lectures, system administration of the chair's Linux network

Assistant Lecturer Java C C++
Assistant Lecturer

Tasks:

Teaching and realisation of exams, organisation of lectures,

system administration of the chair's Linux network

 

Tutorials:

Algorithms in graph theory, Algorithms and data structures,

Artifficial intelligence, Theoretical computer science

 

Workshops:

Java, C, C++, Databases

Java C C++
University of Bayreuth, Chair of Discrete Algorithms
5 Monate
2008-10 - 2009-02

Maschinenlernen, Programmierung eines neuronalen Netzes  ( C++ )

Im Rahmen meiner Lehrtätigkeit als Übungsleiter zum Thema künstliche Intelligenz habe ich ein Neuronales Netz implementiert, das in der Lage ist, selbständig zu lernen. Um die Lernfähigkeit zu überprüfen habe ich ein Spiel implementiert, bei dem ein menschlicher Spieler gegen einen Computergegener spielt. Dieser Computergegner ist unter Verwendung des Neuronalen Netzes dazu in der Lage, aus Fehlschlägen zu lernen und seine Fähigkeiten zu verbessern.

1 Jahr 11 Monate
2004-08 - 2006-06

Berechnung von k-Polyominoes  ( C++ )

  • Konstruktion von interessanten geometrischen Objekten, sogenannten k-Polyominoes. Dieses Projekt ist aus verschiedenen Gründen sehr herausfordernd:
    • die geometrischen Objekte müssen überlappungsfrei sein. Um dies sicherzustellen müssen exakte Koordinaten (Polynomkoordinaten) verwendet werden, da kleinste numerische Ungenauigkeiten zu falschen Ergebnissen führen. Daher werden die Koordinaten mit Hilfe von Polynomen beschrieben.
    • die Anzahl der konstruierten Objekte ist sehr groß, daher muss sehr stark darauf geachtet werden, die Laufzeit gering zu halten. Zur Berechnung werden daher verschiedene Techniken eingesetzt, die die Laufzeit minimieren.
    • für jedes neu konstruierte Objekt muss festgestellt werden, ob dieses bereits erzeugt wurde. Daher benötigt jedes k-Polyomino eine eindeutige Darstellung. Zur Lösung dieses Isomorphieproblems werden daher fortschrittliche Methoden wie die iterierte Klassifizierung verwendet.
3 Monate
2006-02 - 2006-04

Library zum Zeichnen von Figuren  ( C++ )

Kleine Library, mit Hilfe derer geometrische Figuren und LaTex Formeln gezeichnet werden können. Die Ausgabe erfolgt in Form einer Vektorgraphik, die unkompliziert in alle gängigen Bildformate wie pdf, png, jpg usw umgewandelt werden kann.

2 Monate
2002-06 - 2002-07

Programm zur Lösung des Springerproblems  ( C++ )

Beim Springerproblem wird eine Zugfolge gesucht, in der ein Springer auf einem leeren Schachbrett bewegt werden kann, so dass jedes Feld genau einmal betreten wird. Dabei sind nur die Züge erlaubt, die den beim Schachspiel üblichen Regeln genügen. Dieses kombinatorische Problem ist sehr bekannt, da die Anzahl der möglichen Zugfolgen außerordentlich groß ist.

4 Monate
2002-02 - 2002-05

RSA-Verschlüsselungsalgorithmus  ( C++ )

Der bekannte RSA-Algorithmus wurde von mir in einem kleinen Programm nachempfunden. Die Implementierung genügt natürlich nicht den notwendigen sicherheitstechnischen Anforderungen, sondern diente nur Studienzwecken.

3 Monate
2001-09 - 2001-11

BBP-Algorithmus zur Berechnung von Pi   ( C )

Mit Hilfe des Algorithmus von Bailey, Borwein und Plouffe ist es möglich, die n-te hexadezimale Nachkommastelle von Pi zu berechnen, ohne dass dabei die vorangehenden Stellen berechnet werden müssen. Dieser Algorithmus ist sehr bemerkenswert und wurde von mir nachimplementiert.

Aus- und Weiterbildung

Aus- und Weiterbildung

3 Jahre 11 Monate
2016-08 - 2020-06

Software Architect - iSAQB Certified

Certified Professional for Software Architecture, Future Network Cert GmbH
Certified Professional for Software Architecture
Future Network Cert GmbH
6 Jahre 4 Monate
2010-04 - 2016-07

Promotion

Dr. rer. nat. (summa cum laude), University of Bayreuth
Dr. rer. nat. (summa cum laude)
University of Bayreuth

Dissertation at the University of Bayreuth

Title:

New Strategies Solving the Isomorphism Problem

Tasks:

  • Syntactic pattern recognition, memory and runtime optimisation, design and implementation of algorithms to solve NP-complete problems in graph and group theory

Scientific Topics:

  • Syntactic pattern recognition, group theory, graph theory, combinatorial optimization, NP-complete problem solving, isomorphism problem solving

Methods:

  • Branch and Bound, Orderly Generation, randomized algorithms

Most significant results obtained:

  • establishing a new mathematical foundation for construction algorithms in group theory
  • establishing the so-called strong ladders and formulating proof for each conclusion
  • developing three new algorithms solving the construction problem of double cosets
  • opening up the possibility to solve the subgraph isomorphism problem using each of these three algorithms
  • implementing those algorithms in C++
  • verifying the efficiency of those algorithms by means of a vast set of examples

Summary:

In my PhD thesis in mathematics, I developed three new algorithms providing an efficient strategy for the construction of double cosets, which is a very basic problem in mathematical group theory. These algorithms originate from the well-known „Snakes and Ladders“ algorithm. I developed a new mathematical foundation which made it possible to drastically reduce the memory consumption, enable a branch and bound strategy and enable the execution on a distributed system.

6 Jahre 6 Monate
2000-10 - 2007-03

Diplom ( equiv. to M. Sc. ) in Mathematics

Diplom ( equiv. to M. Sc. ) in Mathematics, Universität Bayreuth
Diplom ( equiv. to M. Sc. ) in Mathematics
Universität Bayreuth

Minor Subject:

  • Computer Science

Diploma Thesis:

  • Application of Construction-Algorithms in Discrete Geometry
1 Jahr 10 Monate
1998-09 - 2000-06

Abitur

Abitur, Gymnasium Fridericianum Erlangen
Abitur
Gymnasium Fridericianum Erlangen

Position

Position

Mathematiker:

  • Optimierung
  • Operations Research
  • Mathematische Modellierung
  • Entwurf und Implementierung effizienter Algorithmen
  • Algorithmenbasierter Handel

Data Science:

  • Daten Analyse
  • Fehlerkorrektur
  • Datenbereinigung
  • Datenfusion

Software Engineering:

  • Software Architektur
  • Anforderungsanalyse
  • Implementierung (Python, C++)

Kompetenzen

Kompetenzen

Top-Skills

Software Architektur Algorithmen Analyse Optimierung Performance Data Science Laufzeit Optimierung C++14 Boost STL Python C++ Templates Data Analysis Performance analysis lineare Optimierung nichtlineare Optimierung gurobi

Schwerpunkte

Algebra
Analyse
Combinatorics
Computer Science
Data Science
evolutionäre Algorithmen
Group Theory
Laufzeit-Optimierung
lineare Optimierung
Machine Learning
Mathematik
mathematische Modellierung
nichtlineare Optimierung
Operations Research
Optimierung
Optimierung der Laufzeit
Optimierung des Speicherbedarfs
Performance Analyse
Performance Optimierung
Reinforcement Learning
Research and development of algorithms
Software Architecture
Structure-based classification
Syntactic pattern recognition
Testabdeckung

Produkte / Standards / Erfahrungen / Methoden

Acceptance Test
CANoe
Agile Softwareentwicklung
ASIL
ASIL D
Atlassian JIRA
Automotive SPICE
AUTOSAR
Boost
Build
Make, BJam, CMake
CAN-Bus
CANoe
Compiler
MSVC (VC++), gcc
Data Plotting
gnuplot
DOORS
DOORS
Eclipse
Enterprise Architect
FlexRay
Git
IDE
Visual Studio
ISO 26262
Jenkins
Kanban
OOA
OOD
Operating Systems
Windows, Linux (Debian)
Perforce
STL
SVN
Template
UML2
Enterprise Architect
Unit Testing
Boost Test Library
V-Modell
Version Control
Git, Apache Subversion ( SVN )
Visual Studio
Wireshark

Betriebssysteme

Debian
Debian ( Linux )
more than 15 years of working experience
Linux
SUSELinux
Ubuntu
Windows
more than 15 years of working experience

Programmiersprachen

Bash Shell
Boost C++ Librarys
C
Expert
C#
Advanced
C++
Expert
C++ Templates
C++14
Cmake
CShell
GAP programming language
Java
Advanced
MISRA C++
Numpy
Python
Advanced
UML

C++, C:

Excellent skills with 20 years of programming experience and 10 years experience as a freelance software engineer. In 2000, during my studies in mathematics, I started to use Linux and implemented small programmes in my free time. I became captivated by the art of computer programming and continuously improved my abilities. For my PhD thesis I developed three different algorithms solving mathematical problems in the field of group theory. Implementing those algorithms led my focus on intense testing and a flexible design specifically tailored to the mathematics behind it. This is where I discovered the power of modern template-based architecture and the strong advantage of design patterns. I look up to the thoroughly designed C++ boost library and started to use more and more of its sublibraries.
In summary, I am familiar with design patterns, test-driven development, unit tests, the boost library and also with modern template-based design.

Datenbanken

JDBC
Java Database Connectivity
Oracle Database

Datenkommunikation

NetCDF

Hardware

ECU
EPB

Berechnung / Simulation / Versuch / Validierung

Finanzmathematik
GAP
HIL
Keras
SIL
SPICE
TensorFlow

Design / Entwicklung / Konstruktion

Agile Software Entwicklung
Algorithm Design
Algorithmenentwurf
Concurrent Computing
Concurrent Engineering
Design Patterns
Distributed Computing
Moderne Template Programmierung
Multithreading
Objektorientierte Programmierung
Parallel Computing
Scrum
Software Architektur
Software Engineering
Template Programming
Test Driven Development
Unit Test

Branchen

Branchen

  • automotive
  • medical technology
  • finance
  • logistics

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
möglich

Projekte

Projekte

2 Jahre
2020-11 - 2022-10

Lead Developer C++ für algorithmisches Trading

Mathematiker, Software Architekt, Software Developer C++ C++17 Algorithmen Algorithmenentwicklung ...
Mathematiker, Software Architekt, Software Developer C++
Mathematische Analysen, Software Architektur, Implementierungen in C++ und Python, Performance Analyse für Algorithmen basierten automatisierten Börsenhandel.


Git CMake Python C++17
C++17 Algorithmen Algorithmenentwicklung Mathematik Finanzmathematik Softwarearchitektur
EnBW
Karlsruhe (Baden)
3 Monate
2020-08 - 2020-10

Mathematische Optimierung im Smart-Meter Gateway Umfeld

Mathematische Leitung Optimierung Mathematische Optimierung c++ Python
Mathematische Leitung Optimierung

Entwicklung eines Optimierungsansatzes zur Optimierten der Einspeisung, Speicherung und Energieverbrauchs im Haushalt. Unter Berücksichtigung aller vorliegenden Bedingungen des zu optimierenden Haushalts wird eine individuelle auf diesen Haushalt zugeschnittene Optimierung durchgeführt. Dabei fließen in die Berechnung insbesondere folgende Variablen ein:

* tagesaktueller Strompreis und Einspeisevergütung

* vorhandene Speicherkapazitäten und Ladezustände der Batterien (Rückspeisung Elektroauto möglich)

* vorhandene Einrichtungen zur Stromeigen Erzeugung wie Solaranlagen und andere

* Steuerbare Verbraucher wie Elektroautos und anderer Elektrogeräte


Mathematische Optimierung c++ Python
Inno2grid
Berlin
7 Monate
2019-11 - 2020-05

ICAS1 Performance

Software Architekt Analyse C++14 C++ templates ...
Software Architekt

Startup performance optimization with systemd. Software architecture and software development for ICAS1 project.

Performance analysis and optimization in the context of Adaptive Autosar.

Enterprise Architect Perforce Corbos Studio Eclipse DLT-Viewer Packet Sender Wireshark systemd valgrind Atlassian JIRA
Analyse C++14 C++ templates DLT AUTOSAR Adaptive Autosar Flamegraph Flamegraph Performance Analyse perf linux profiler Performance Profiling Kanban OOA OOD
Continental Automotive
Wetzlar
9 Monate
2019-02 - 2019-10

Satelliten Daten Analyse

Consultant, Mathematiker, Software Architekt, Software Engineer C++ SVN Jenkins ...
Consultant, Mathematiker, Software Architekt, Software Engineer

Prüfung der Software Architektur, Design einer library für die spektroskopische Analyse von Copernicus Satelliten Daten, nichtlineare Optimierung, lineare Optimierung, Software Entwicklung in Python und C++, Concurrency, Bash und Cshell Skripting

Boost STL C++14 C++ Python Linux Numpy C++ Templates CMake NetCDF
C++ SVN Jenkins Template Boost STL Python Git Laufzeit-Optimierung nichtlineare Optimierung lineare Optimierung Optimierung Software Architektur Multithreading Concurrent Engineering Performance Analyse CShell Bash Shell
DLR
Oberpfaffenhofen, München, Germany
1 Jahr
2018-03 - 2019-02

Automated Trading Strategy

Finanzmathematiker Software Engineering Finanzmathematik Software Architektur ...
Finanzmathematiker
  • Building an automated, profit-oriented trading strategy for trading with cryptocurrencies and Implementation in Python.
Ubuntu SUSELinux Debian
Software Engineering Finanzmathematik Software Architektur Python
Nürnberg
5 Monate
2017-10 - 2018-02

Machine Learning

Software Architekt Machine Learning Reinforcement Learning Software Architecture ...
Software Architekt

Kapazitätsoptimierung von Produktionsanlagen durch Reinforcement Learning, Mathematische Modellierung von Produktionsanlagen, Software Architektur des Modells der Produktionsanlage,
Implementierung des Modells der Produktionsanlage in Python,

Git Keras TensorFlow Python C++14 C++
Machine Learning Reinforcement Learning Software Architecture Data Science Performance Optimierung evolutionäre Algorithmen Testabdeckung mathematische Modellierung
Siemens
Nürnberg
11 Monate
2016-11 - 2017-09

Calculating group intersections in mathematical group theory

Algorithm design, Software Architect Algorithm Design Software Architecture GAP programming language
Algorithm design, Software Architect
  • GAP is a system for calculations using groups and algorithms in discrete algebra.
  • In this project, an algorithm for the computation of the intersection between two subgroups will be added to the system.
  • This project is initiated by Prof. [name on request] from the Chair of Mathematics B at RWTH Aachen.
GAP
Algorithm Design Software Architecture GAP programming language
RWTH Aachen
Aachen / Bamberg
6 Jahre 5 Monate
2010-04 - 2016-08

Design and Implementation of Algorithms for the solution of Isomorphism Problems

Mathematician, Software Architect, Software Engineer Algebra Mathematik C++ ...
Mathematician, Software Architect, Software Engineer

Algorithms solving the isomorphism problem are in use in chemistry, pharmaceutical industry, mathematics and computer science. Many of those isomorphism problems are NP-complete and the only available algorithms solving those problems have an exponential calculating time. In my recently finished PhD thesis in mathematics and computer science, I have developed three different algorithms solving a vast set of isomorphism problems. These algorithms originate from the well-known "Snakes and Ladders" algorithm. I developed a new mathematical foundation which made it possible to drastically reduce the memory consumption, enable a branch and bound strategy and enable the execution on a distributed system. These algorithms have been described in my PhD thesis.

Boost C++ Librarys
Algebra Mathematik C++ C Template Programming Computer Science Combinatorics Distributed Computing Concurrent Computing Parallel Computing Group Theory Operations Research
Dissertation at Bayreuth University
Nürnberg, Bayreuth
7 Monate
2014-11 - 2015-05

Test Engineer for Vehicle Break Systems

Software Test Engineer, Software Engineer C Acceptance Test CANoe ...
Software Test Engineer, Software Engineer
  • At Mando Corporation I designed and implemented tests for the security critical processing of sensor data in vehicle break systems.
CANoe C# Python C++14 DOORS AUTOSAR
C Acceptance Test CANoe CAN-Bus FlexRay SPICE V-Modell C# SIL HIL ECU EPB ISO 26262 ASIL ASIL D MISRA C++
Mando Corporation Europe
Eschborn, Frankfurt
10 Monate
2011-04 - 2012-01

Sensor Data Fusion

Software Architect and Software Engineer C++ Cmake Enterprise Architect Visual Studio ...
Software Architect and Software Engineer C++
  • Design and implementation of an algorithm for the sensor data fusion of independent devices.
  • This algorithm has been used for high accuracy object tracking.
  • Evaluation of the accuracy of the algorithm's outcome.
  • Synchronization of sensor data sources such as high accuracy accelerometers, odometers, GPS correction data, GPS and high accuracy gyroscopes.
Cmake Enterprise Architect Visual Studio C++ Git SVN Scrum Agile Softwareentwicklung UML Enterprise Architect Data Science ECU Scrum
Elektrobit Group
Erlangen
2 Jahre 1 Monat
2009-03 - 2011-03

Berechnung von k-Arks   ( C++ )

Der Schwerpunkt dieses Projektes liegt in der Entwicklung eines Algorithmus zur Lösung der in diesem Zusammenhang auftretenden Isomorphieprobleme. Mit Hilfe dieses Algorithmus konnten bisher ungelöste mathematische Fragen aus dem Bereich der Kodierungstheorie beantwortet werden. Im Rahmen dieses Projektes entstanden auch mehrere wissenschaftliche Veröffentlichungen.

2 Jahre 11 Monate
2007-05 - 2010-03

Teaching and realisation of exams, organisation of lectures, system administration of the chair's Linux network

Assistant Lecturer Java C C++
Assistant Lecturer

Tasks:

Teaching and realisation of exams, organisation of lectures,

system administration of the chair's Linux network

 

Tutorials:

Algorithms in graph theory, Algorithms and data structures,

Artifficial intelligence, Theoretical computer science

 

Workshops:

Java, C, C++, Databases

Java C C++
University of Bayreuth, Chair of Discrete Algorithms
5 Monate
2008-10 - 2009-02

Maschinenlernen, Programmierung eines neuronalen Netzes  ( C++ )

Im Rahmen meiner Lehrtätigkeit als Übungsleiter zum Thema künstliche Intelligenz habe ich ein Neuronales Netz implementiert, das in der Lage ist, selbständig zu lernen. Um die Lernfähigkeit zu überprüfen habe ich ein Spiel implementiert, bei dem ein menschlicher Spieler gegen einen Computergegener spielt. Dieser Computergegner ist unter Verwendung des Neuronalen Netzes dazu in der Lage, aus Fehlschlägen zu lernen und seine Fähigkeiten zu verbessern.

1 Jahr 11 Monate
2004-08 - 2006-06

Berechnung von k-Polyominoes  ( C++ )

  • Konstruktion von interessanten geometrischen Objekten, sogenannten k-Polyominoes. Dieses Projekt ist aus verschiedenen Gründen sehr herausfordernd:
    • die geometrischen Objekte müssen überlappungsfrei sein. Um dies sicherzustellen müssen exakte Koordinaten (Polynomkoordinaten) verwendet werden, da kleinste numerische Ungenauigkeiten zu falschen Ergebnissen führen. Daher werden die Koordinaten mit Hilfe von Polynomen beschrieben.
    • die Anzahl der konstruierten Objekte ist sehr groß, daher muss sehr stark darauf geachtet werden, die Laufzeit gering zu halten. Zur Berechnung werden daher verschiedene Techniken eingesetzt, die die Laufzeit minimieren.
    • für jedes neu konstruierte Objekt muss festgestellt werden, ob dieses bereits erzeugt wurde. Daher benötigt jedes k-Polyomino eine eindeutige Darstellung. Zur Lösung dieses Isomorphieproblems werden daher fortschrittliche Methoden wie die iterierte Klassifizierung verwendet.
3 Monate
2006-02 - 2006-04

Library zum Zeichnen von Figuren  ( C++ )

Kleine Library, mit Hilfe derer geometrische Figuren und LaTex Formeln gezeichnet werden können. Die Ausgabe erfolgt in Form einer Vektorgraphik, die unkompliziert in alle gängigen Bildformate wie pdf, png, jpg usw umgewandelt werden kann.

2 Monate
2002-06 - 2002-07

Programm zur Lösung des Springerproblems  ( C++ )

Beim Springerproblem wird eine Zugfolge gesucht, in der ein Springer auf einem leeren Schachbrett bewegt werden kann, so dass jedes Feld genau einmal betreten wird. Dabei sind nur die Züge erlaubt, die den beim Schachspiel üblichen Regeln genügen. Dieses kombinatorische Problem ist sehr bekannt, da die Anzahl der möglichen Zugfolgen außerordentlich groß ist.

4 Monate
2002-02 - 2002-05

RSA-Verschlüsselungsalgorithmus  ( C++ )

Der bekannte RSA-Algorithmus wurde von mir in einem kleinen Programm nachempfunden. Die Implementierung genügt natürlich nicht den notwendigen sicherheitstechnischen Anforderungen, sondern diente nur Studienzwecken.

3 Monate
2001-09 - 2001-11

BBP-Algorithmus zur Berechnung von Pi   ( C )

Mit Hilfe des Algorithmus von Bailey, Borwein und Plouffe ist es möglich, die n-te hexadezimale Nachkommastelle von Pi zu berechnen, ohne dass dabei die vorangehenden Stellen berechnet werden müssen. Dieser Algorithmus ist sehr bemerkenswert und wurde von mir nachimplementiert.

Aus- und Weiterbildung

Aus- und Weiterbildung

3 Jahre 11 Monate
2016-08 - 2020-06

Software Architect - iSAQB Certified

Certified Professional for Software Architecture, Future Network Cert GmbH
Certified Professional for Software Architecture
Future Network Cert GmbH
6 Jahre 4 Monate
2010-04 - 2016-07

Promotion

Dr. rer. nat. (summa cum laude), University of Bayreuth
Dr. rer. nat. (summa cum laude)
University of Bayreuth

Dissertation at the University of Bayreuth

Title:

New Strategies Solving the Isomorphism Problem

Tasks:

  • Syntactic pattern recognition, memory and runtime optimisation, design and implementation of algorithms to solve NP-complete problems in graph and group theory

Scientific Topics:

  • Syntactic pattern recognition, group theory, graph theory, combinatorial optimization, NP-complete problem solving, isomorphism problem solving

Methods:

  • Branch and Bound, Orderly Generation, randomized algorithms

Most significant results obtained:

  • establishing a new mathematical foundation for construction algorithms in group theory
  • establishing the so-called strong ladders and formulating proof for each conclusion
  • developing three new algorithms solving the construction problem of double cosets
  • opening up the possibility to solve the subgraph isomorphism problem using each of these three algorithms
  • implementing those algorithms in C++
  • verifying the efficiency of those algorithms by means of a vast set of examples

Summary:

In my PhD thesis in mathematics, I developed three new algorithms providing an efficient strategy for the construction of double cosets, which is a very basic problem in mathematical group theory. These algorithms originate from the well-known „Snakes and Ladders“ algorithm. I developed a new mathematical foundation which made it possible to drastically reduce the memory consumption, enable a branch and bound strategy and enable the execution on a distributed system.

6 Jahre 6 Monate
2000-10 - 2007-03

Diplom ( equiv. to M. Sc. ) in Mathematics

Diplom ( equiv. to M. Sc. ) in Mathematics, Universität Bayreuth
Diplom ( equiv. to M. Sc. ) in Mathematics
Universität Bayreuth

Minor Subject:

  • Computer Science

Diploma Thesis:

  • Application of Construction-Algorithms in Discrete Geometry
1 Jahr 10 Monate
1998-09 - 2000-06

Abitur

Abitur, Gymnasium Fridericianum Erlangen
Abitur
Gymnasium Fridericianum Erlangen

Position

Position

Mathematiker:

  • Optimierung
  • Operations Research
  • Mathematische Modellierung
  • Entwurf und Implementierung effizienter Algorithmen
  • Algorithmenbasierter Handel

Data Science:

  • Daten Analyse
  • Fehlerkorrektur
  • Datenbereinigung
  • Datenfusion

Software Engineering:

  • Software Architektur
  • Anforderungsanalyse
  • Implementierung (Python, C++)

Kompetenzen

Kompetenzen

Top-Skills

Software Architektur Algorithmen Analyse Optimierung Performance Data Science Laufzeit Optimierung C++14 Boost STL Python C++ Templates Data Analysis Performance analysis lineare Optimierung nichtlineare Optimierung gurobi

Schwerpunkte

Algebra
Analyse
Combinatorics
Computer Science
Data Science
evolutionäre Algorithmen
Group Theory
Laufzeit-Optimierung
lineare Optimierung
Machine Learning
Mathematik
mathematische Modellierung
nichtlineare Optimierung
Operations Research
Optimierung
Optimierung der Laufzeit
Optimierung des Speicherbedarfs
Performance Analyse
Performance Optimierung
Reinforcement Learning
Research and development of algorithms
Software Architecture
Structure-based classification
Syntactic pattern recognition
Testabdeckung

Produkte / Standards / Erfahrungen / Methoden

Acceptance Test
CANoe
Agile Softwareentwicklung
ASIL
ASIL D
Atlassian JIRA
Automotive SPICE
AUTOSAR
Boost
Build
Make, BJam, CMake
CAN-Bus
CANoe
Compiler
MSVC (VC++), gcc
Data Plotting
gnuplot
DOORS
DOORS
Eclipse
Enterprise Architect
FlexRay
Git
IDE
Visual Studio
ISO 26262
Jenkins
Kanban
OOA
OOD
Operating Systems
Windows, Linux (Debian)
Perforce
STL
SVN
Template
UML2
Enterprise Architect
Unit Testing
Boost Test Library
V-Modell
Version Control
Git, Apache Subversion ( SVN )
Visual Studio
Wireshark

Betriebssysteme

Debian
Debian ( Linux )
more than 15 years of working experience
Linux
SUSELinux
Ubuntu
Windows
more than 15 years of working experience

Programmiersprachen

Bash Shell
Boost C++ Librarys
C
Expert
C#
Advanced
C++
Expert
C++ Templates
C++14
Cmake
CShell
GAP programming language
Java
Advanced
MISRA C++
Numpy
Python
Advanced
UML

C++, C:

Excellent skills with 20 years of programming experience and 10 years experience as a freelance software engineer. In 2000, during my studies in mathematics, I started to use Linux and implemented small programmes in my free time. I became captivated by the art of computer programming and continuously improved my abilities. For my PhD thesis I developed three different algorithms solving mathematical problems in the field of group theory. Implementing those algorithms led my focus on intense testing and a flexible design specifically tailored to the mathematics behind it. This is where I discovered the power of modern template-based architecture and the strong advantage of design patterns. I look up to the thoroughly designed C++ boost library and started to use more and more of its sublibraries.
In summary, I am familiar with design patterns, test-driven development, unit tests, the boost library and also with modern template-based design.

Datenbanken

JDBC
Java Database Connectivity
Oracle Database

Datenkommunikation

NetCDF

Hardware

ECU
EPB

Berechnung / Simulation / Versuch / Validierung

Finanzmathematik
GAP
HIL
Keras
SIL
SPICE
TensorFlow

Design / Entwicklung / Konstruktion

Agile Software Entwicklung
Algorithm Design
Algorithmenentwurf
Concurrent Computing
Concurrent Engineering
Design Patterns
Distributed Computing
Moderne Template Programmierung
Multithreading
Objektorientierte Programmierung
Parallel Computing
Scrum
Software Architektur
Software Engineering
Template Programming
Test Driven Development
Unit Test

Branchen

Branchen

  • automotive
  • medical technology
  • finance
  • logistics

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.