Hello! I'm Jürgen
Here, you can find details about my professional career as computer scientist and my personal interests.
Since 2002, I have served as a software engineer for enterprise companies, where I have been recognized
for developing innovative and robust products for globally deployed software and systems.
Over the years I have mainly worked on embedded systems, all from driver programming up to application layer systems.
I am also personally interested in all kinds of scientific, philosophical and technical innovations.
Following the scientific community in questions around AI/ML and their applications in cancer and longevity research is really exciting.
Sports is also on my agenda as compensation and I play Tennis, do weight training and endurance sports like jogging and rowing.
I am also a somewhat passionate chess player, so if you dare to challenge me for some blitz games -> lichess
Me and my family live in the beautiful south of Germany where we can see the Alps on sunshine days 🙂
Below is a brief overview of the topics for which I have professional experience,
as well as gained knowledge through personal interest and study.
Theory & Paradigms
- Algorithms & complexity, with special focus on sequences
- Functional paradigms: functors, applicatives, monads & transformers, reactive streams, tag-less final
- Usual OOP knowledge like the ‘Gang of Four’
- Personal interest: Category Theory(up to Yoneda Lemma so far), Differentiable programming
AI & ML
- Methods: Deep and Reinforcement Learning, random forests, data normalization, hyperparameter tuning
- Tools: R, Tensorflow, Weka
- Python: NumPy, Pandas, Scikit
- Personal interest: Open-endedness, Quantum machine learning
This is the language where I have the most professional experience.
- Standards: C++98, C++11, C++14, C++17
- OOP & functional design patterns
- Template metaprogramming in C++11 & C++14
- Reactive programming & streams
- Functors & monads
- STL study & usage
- Applications in embedded environments where time and space are constrained
- Toolchains: VS, gcc, clang
Since I know formal languages and parser theory, all languages are the ‘same’.
Below is just the list of languages which I worked with the most.
- C/C++, Asm
- JVM: Java, Kotlin(with special focus on Arrow), Scala
- Haskell, which is, amongst others, of huge help for C++ metatemplate programming
Tools & Environments
Below is a non-exhaustive list of tools and OS, which I have been working with in the past.
- OS: Linux, Windows, QNX
- Enterprise tools: DOORS, Jira/Confluence, Yammer, Windows Office Suite
- Dev tools: Git, Gerrit, SVN, Perforce, Eclipse, CLion, VSCode, IDEA, Vim, LaTex, LLVM tools, Make
Cmake, Ninja, Maven, Gradle, gcc, gdb, clang, Valgrind