my work
this is a section about work and me. As you can see, i'm not a highly decorated software developer (yet). One could say i'm still fresh out of the oven. But wherever I go, I am determined to bring change and to contribute.
IAV GmbH
Bachelor Thesis, October 2023 — February 2024
Topic: Conception and Prototypical Implementation of the Migration of a Multi-Service Docker Application from AWS to Azure implementing the Cloud-Native Architecture
In my thesis, I tackled the migration of MobilityPlatform, a complex cloud application, from AWS to Azure. Driven by the goal of streamlined management and potential cost reduction, I sought to eliminate reliance on Kubernetes (in the architecture deployed to AWS). Beginning with limited cloud experience, I first needed to gain in-depth understanding of MobilityPlatform's architecture and its AWS and Kubernetes dependencies. Extensive research proved a necessity. From there, I explored Azure services – App Service, Container Apps, and Virtual Machines – as potential replacements. Hands-on configuration and rigorous testing against precise requirements defined the best-fit migration strategy.
These were the technologies I learned and used for my thesis:-
- Terraform: Infrastructure as Code (IAC) for provisioning and configuration consistency.
- Azure Services:
- Azure App Service: Hosting of web applications and APIs.
- Azure Container Apps (ACA): Deployment and scaling of containerized applications.
- Azure Container Instances (ACI): Easy, serverless deployment of containers
- Azure Virtual Machines (VM): Deployment of VMs with customizable operating systems.
- Azure Database for Postgres: Managed PostgreSQL database service.
- AWS: Existing deployment platform of MobilityPlatform.
- Kubernetes: Former container orchestration tool.
- Helm Charts: Configuration and templating for Kubernetes applications.
This thesis propelled my transformation from cloud novice to a more confident practitioner. Through analyzing complex architectures, exploring a suite of Azure solutions, and tackling practical migration challenges, I honed essential skills. This project demonstrated my adaptability and problem-solving capabilities, fueling my drive to take on larger-scale cloud architecture projects or just just about any new complex problems in a foreign domain.
Personally, the key takeaway here is the approach to solve basically any problem. This can be broken down into:-
- Understanding the Problem
- Defining the solution space
- Requirements-driven Refinement of solution space
- Testing and Evaluation
IAV GmbH
Intern, June 2023 — October 2023
During my internship at IAV GmbH, I joined the Connected Services and Platform Development team responsible for the innovative MobilityPlatform project. This on-demand electric minibus service revolutionizes transportation by dynamically adapting routes based on passenger bookings. My primary focus was analyzing the platform's TSP-Solver (Traveling Salesperson Problem) component. To enhance troubleshooting and understanding, I focused on creating a debugging interface to solve the lack of visual input on the solver's decisions.
Ultimately, the system consisted of 2 parts: The API-Backend of the MobiliyPlatform and the Debugging Interface as a WebApp. The two main challenges were learning how to use Next.js to build progressive WebApps as well as the Data Transformation. In this scenario, to effectively interpret MobilityPlatform's backend data, retrieved via HTTP requests, it was crucial to process the data to ensure compatibiliy with Leaflet's expected geo-data formats. The following technologies were used for the development of the WebApp:-
- Next.js: To the build the WebApp, providing robust routing and server-side rendering capabilities
- Leaflet & OpenStreetMap: seamless integration for interactive mapping for optimal route visualization
The debugging interface I developed was foundational for understanding the TSP-Solver. For developers, it proved to be useful in improving their ability to pinpoint routing issues and understand the rationale behind optimizations. Beyond the functional value, this project sharpened my full-stack web development skills in Next.js, bolstered my geospatial data handling with Leaflet, and highlighted my ability to integrate systems while tackling complexity within a team environment.