About Me
Born on September 23, 1979, in Stolberg, near Aachen, Germany, I am a experienced Senior Full-Stack Software Developer with 20 years in the automotive, e-commerce, and donation/member management sectors.
Technical expertise in LAMP, Windows, (No-)SQL, .NET, and Node, as well as frontend and backend development.
Focused on delivering innovative and efficient solutions, continuous learning, and team-oriented project successes.
Experiences
Ensuring and conceptioning of backend services, apps, system architecture as well as development of software solutions, technology scouting and testing, enterprise-wide software engineering coaching.
- Cloud based software development
- Database development
- DevOps
- Frontend development (web & mobile)
- Open Source
- System administration
Full-Stack Software Development and Cloud Administration.
- Flutter
- Go
- Kubernetes
- Next.js
- Open AI
- PostgreSQL
Full-Stack Software Development and Cloud Administration.
- Docker
- Microsoft Azure
- NoSQL
- TypeScript
- Vue.js
Working student
- E-Commerce
- GitLab
- Linux
- PHP
- Shopware
- E-Commerce
- MySQL
- OXID
- PHP
- Visual Basic .NET (VB.NET)
- ASP.NET
- C#
- Cryptography
- Subversion
- Visual Basic .NET (VB.NET)
- Windows Presentation Foundation (WPF)
- .NET framework
- C#
- Entity Framework
- Microsoft SQL Server
- Windows Communication Foundation (WCF)
- Windows Presentation Foundation (WPF)
Projects
This internal web application combines the most important workflows in the after-sales segment:
- creation of warranty claims by service partners
- documentation of workshop orders
- communication with service partners
- provision of vehicle documentation, such as technical documentation and instructions
- announcements of service campaigns
- provision of digital vehicle files
- ordering of spare parts
Both the frontend and backend are proprietary developments, in which I am involved in both cases.
Nevertheless, the external backend, which is connected to the frontend, is also connected to numerous external systems: This includes in particular CRM, production, and cloud systems from various providers.
For a client, article data had to be entered into a merchandise management system.
Since they were not in an organized list, such as Excel/CSV files, they had to be entered manually.
For this purpose, I developed a Windows desktop application in C# that optimized the process as much as possible, so that as many articles as possible could be entered in the shortest possible time.
The application was also designed to allow multiple people to work on processing the list at the same time.
Under this website, potential customers can configure an e.wave X and then place an order.
In addition to setting up the backend and frontend projects in Azure DevOps, I actively supported and accompanied both frontend and backend development.
One challenge was to meet the high number of accesses after the launch in addition to the UX.
In addition to this configurator, a sales portal for e.GO sales partners was developed at the same time, which I implemented as a Next.js application with its own UI library.
Through this portal, sales partners are able to independently receive orders and send them to e.GO with all necessary documents.
This mobile app served in its first form to connect a customer with their vehicle based on TCU data.
The app is currently being developed platform-independently based on React Native.
My main task is to ensure the connection of the app to the backend, which is implemented as a collection of various microservices.
This includes not only the implementation itself, but also the smooth functioning of the build and release processes in Azure DevOps.
Note: Due to a change of TCU provider, the functionality is currently deactivated.
At e.GO Mobile we are developing an internal administration tool that is used by the following departments:
- After Sales
- Data Science
- Marketing
- Sales
This tool is used to manage projects such as the "e.GO Connect App", "e.GO Configurator", "e.GO Website", and "After Sales web app & backend for service partners and workshops".
In addition, e.GO-specific QR codes can be created and managed and a self-developed wiki is also part to share information between the departments.
The web app is protected by a rights/roles system, which is implemented by employees from different departments.
I initiated this web app as a Next.js/React application using our own e.GO specific UI framework, and I am now leading the refactoring to a microfrontend application with other e.GO developers.
In addition, I ensure the functionality of the build and release pipelines in our DevOps environment.
This is a web application that was developed simultaneously with the e.GO Configurator in the second half of 2022 and was released on time for the launch of the e.wave X model.
I worked on both the frontend and the underlying backend. While I gave support in the backend development, I personally focused on developing the frontend part, while the phase of implementation.
A potential customer can go to one of the e.GO sales partners with a code that belongs to a configuration created through the e.GO Configurator (but doesn't have to). The partner is then able to make final changes using a simplified editor, if needed. Finally, the partner can trigger an order with all documents in the e.GO system.
The URL shortener / QR code is a microservice, which is part of a large API cluster at e.GO.
In addition to redirecting to the actual address, it generates on-the-fly QR codes, for example as SVG files.
These are managed in the internal tool of e.GO, which I have already mentioned as "e.GO internal administration tool".
In addition, after creating a link, URL parameters can be added as needed and at any time, without the need to adjust the data record in the administration tool. Since these URL parameters are not part of the data record itself, the same data record can be used to distinguish between different partners and campaigns.
Examples:
- https://link.e-go-mobile.com/ego-connect-app-store?language=german
- https://link.e-go-mobile.com/ego-connect-app-store/qrcode?language=english
The website as the flagship of e.GO Mobile, I have particularly supervised in the sense that I, as one of 2 DevOps engineers, was responsible for the smooth functioning of the build and release processes.
In addition, I prepared the site in such a way that parts of it could be integrated as micro frontends.
Currently I am preparing the relaunch of the current website.
To make the approximately 400 projects more easily accessible in the Visual Studio Code editor, I have written an extension that every developer can install.
Some features of this extension:
- auto-setup of the project
- detection of the underlying Azure DevOps project, depending on the currently open git repository
- opening of a list of own work items like bugs, user stories, or tasks
- ChatGPT functions:
- creation and execution of shell commands from natural language for a file or directory
- creation of git branch from natural language
- explanation and documentation of code
- translation of text in editor or (i18n) JSON files.
- opening, browsing, and saving content of and from zipped files
- scriptable notebooks similar to https://github.com/egomobile/vscode-powertools/wiki/Notebooks
I had developed a Word add-in for a connection to the web-based membership management system developed by GRÜN, which was able to retrieve member data through a SOAP interface.
Through a field selection dialog, these could be integrated into the current Word documents and also stored as XML in the document itself.
Anyone who had the corresponding add-in could later access all the data again.
I implemented a multi-modular backend at EVOCURA.
This was not a traditional web application like ASP.NET, but rather a Windows Communication Foundation (WCF) server with various transport bindings.
The modules were distributed across separate projects as various DLLs and assemblies using MEF (Managed Extensibility Framework).
The database connection was established using the Entity Framework with the help of POCOs.
The system could be administrated via a web interface from a browser.
I have initiated the process of restructuring an existing and complex merchandise management system in such a way that it could be gradually converted to current PHP modules and techniques.
At the end it was not necessary to rewrite the entire system at once, but it could be done behind the scenes as needed.
I was responsible for the development of a ride pooling app, including a corresponding backend.
While the ride pooling algorithm and the customer app were developed by students, I developed a corresponding driver app.
This microservice is used to capture any application data for later evaluation during the testing and production phase, for example by the developers or the data science department.
The implementation of the underlying REST API was done in Golang, which speeds up access by the respective applications and leads to a low consumption of resources within a Kubernetes cluster.
The underlying applications can send data of any kind and are distinguishable from each other by IDs.