About
Hey and welcome š Iām Ferdi, 31 years old, currently living in Karlsruhe, Germany and passionate about anything related to computers, software, technology and science. I love to write efficient and well-architectured code to automate task and solve real-world problems and Iām a big fan of open-source.
I got into tech back when starting my studies on āinformation engineering and managementā at KIT in 2012 and sought to improve my skills and knowledge ever since. After a couple of internships and student jobs (at Inovex, ArtiMinds and Volkswagen Group of America) and after my graduation as a M.Sc. in 2020, I worked as a professional software- / data engineer and project lead at Frachtwerk and climate-tech startup Orbio. In 2023 I went back to KIT to work as a researcher at the chair of Prof. Zƶllner on autonomous systems and deep learning before I recently joined Path to Zero GmbH as a software engineer on their mission to decarbonize the industry š±ā”š (check out my recent blog post about Picking a Job with a Purpose if you want to learn about my motivation behind this decision).
Besides, I founded server.camp with two friends and volunteer at leih.lokal Karlsruhe from time to time.
My expertise is primarily in full-stack web (Java / Spring, Go, TypeScript), geo-spatial (GIS) data engineering (mainly Python, PostGIS, etc.), and DevOps (using Docker, Terraform, Ansible & Co.). In addition, I got into deep learning and, specifically, graph neural networks (GNNs) as part of my research.
In my spare time, I enjoy running, biking and snowboarding (when there is snow aroundā¦) and I love to cook! But first and foremost, I continuously seek to improve, acquire new skills and get into new topics, because I think people should never stop learning! š¤
CV
[Aug ā25 - today] Software Engineer @ Path to Zero GmbH
Software engineering, data modeling and mathematical optimization for decarbonization of industrial processes.[Jun ā23 - today] Co-Founder & Software Engineer at server.camp GbR
Making open source software and digital sovereignity available for everyone.[Feb ā23 - Jul ā25] Researcher @ KIT
Deep Learning and Autonomous Driving at the chair of Prof. Zƶllner on Applied Technical-Cognitive Systems, Institute of Applied Informatics and Formal Description Methods. Research on geometric deep learning / graph neural networks (GNN) for clustering and synthetic generation of ālong-tailā traffic scenarios in the context of scenario-based testing. Teaching introductory courses to programming with Java and advanved methods on machine learning. Supervision of a Masterās thesis on generative graph neural networks. Software development and computer vision in context of TAF BW. System administration of Linux GPU workstations.[Sep ā21 - Jan ā23] Software- & Data Engineer @ Orbio Earth GmbH
Software architecture, design and implementation of a web platform and accompanying data processing pipeline for analytics and visualization of satellite imagery and related geospatial / GIS data. Data engineering, full-stack web development and ops. Technical project management and leadership of Orbioās dev team.[Apr ā20 - Aug ā21] Software Engineer @ Frachtwerk GmbH
Full-stack web development and operations of multiple B2B software projects in the field of transportation, logistics and smart city. Project management for the implementation of a machine control and -analytics application in the context of industrial manufacturing.[Oct ā12 - Mar ā20] M.Sc. Information Engineering and Management @ KIT
Focus on semantic web & linked data technologies as well as data science and machine learning.
Skills
In the following, I have put together a (non-comprehensive) list of technologies that I am experienced with (some more and some less), each with a rating between 1 and 5, defined as follows:
- 1 = Basic experience. Have worked with it less than 5 years ago for more than ~ 1 week. Remember fundamentals, but couldnāt start a project without substantial research for getting up to speed again.
- 2 = Substantiated experience. Have realized a (small) project with it less than 5 years ago. Can read and understand code and am confident to realize simple features using it.
- 3 = Profound experience. Work with it almost on a day to day basis. Could realize a project from scratch with confidence. Can well explain even non-trivial aspects.
- 4 = Expert-like experience. Have worked with it intesively for more than 5 years on a continuous basis. Know whatās āunder the hoodā for the most parts.
- 5 = Could have written a book on it (or did so).
Languages
Python (4), Go (4), Java (3), JavaScript (3), SQL (3), Bash (2), Scala (1)
Web- & Mobile Development
Spring Boot (3), Django (3), VueJS (3), FastAPI (2), Android (2), Flask (1), Svelte (1), Flutter (1)
Databases
RDBMS (MySQL, Postgres, SQLite, ā¦) (3), PostGIS (2), Hibernate (2), MongoDB (1), CouchDB (1), Redis (1)
DevOps, Sysadmin & Tooling
Docker (4), Caddy (4), Linux (3), Ansible (3), Prometheus (3), Grafana (3), ROS (2), Terraform (1)
Machine Learning
Graph Neural Networks (GNN) (3), PyTorch Geometric (3), Scikit-Learn (3), PyTorch (2), Convolutional Neural Networks (CNN) (1)
Project Wishlist
As someone who loves coding, I have an almost endless list of small and bigger projects that Iād like to work on some day. Of course, I will never get to actually finishing that list (especially as it grows faster than I can tick things off). But the following are some high level project ideas, problems or fields Iād love to be working on at some point.
- Large scale energy monitoring- / management: As mentioned before, Iām quite excited about energy informatics and had a lot of fun building my own electricity monitoring setup. Iād love to take this onto another level and work on a project in the context of industrial IoT, smart grids or the like - with thousands of metering devices connected, complex decision- and management logic involved, sophisticated data processing, etc.
- Application of GNNs to power grids: During my research, I got quite deeply involved with graph neural networks and realized that theyāre still a comparatively underexplored topic in ML, yet with very promising applications in any kind of system that can naturally be modeled as a network of nodes and edges. Primarily inspired by this paper, I learned about the potentials of GNNs for optimal power flow (OPF)- or cascading failure prediction in electrity grids and would love to take them for a spin for such!
- Real-world GIS use cases: Another field that got me hooked is geoinformatics. I got to dive into GIS topics during my time at Orbio and even though I quit my job with them in favor of my PhD, Iād love to get another chance to be working on geodata processing projects on a large scale some time. There is incredibly great software tooling out there and Iād love to take it for a spin.
- Game servers and low-latency networking: This is even a totally different topic, but nevertheless super appealing to me. Iād love to have a real-world use case to implement a game server / backend at some point. I love reading blog posts where engineers come up with very specific, low-level optimizations to compute- or networking code (e.g. here and here at Riot, here at Dropbox or here and here in the context of databases). Writing a game server, in my fantasy, requires a lot of such optimizations that squeeze out efficiency, so it seems very interesting to me.
- Lanelet to OpenDRIVE conversion: This is very specific and Iām not even sure if itās a problem possible to be solved. However, while working in autonomous driving, I realized the very specific, yet almost ubiquitous need for beeing able to convert HD maps from the simple Lanelet format to the much richer and more expressive OpenDRIVE standard. Vice-vesa is easy, but even though a lot of people have tried, to my knowledge, nobody yet managed to solve this āconversionā problem. There are good reasons for that. But still: if somebody paid me for it, Iād love to give it a try - or at least deep-dive into it to be sure that itās impossible (with reasonable effort).