Jakob
Lingel

Fullstack Developer
Design enthusiast
Learner

Web development provides me with a creative outlet. I built my first website for my mom's bookstore around the time I turned 20. It was a one-pager using Bootstrap.

Ever since, I've dreamed of becoming a full-stack developer. I started working through The Odin Project to learn the basics.

Another chance for practice presented itself when my sister started a counseling business. I built her site using plain HTML and CSS, and used Tailwind CSS for the first time.

Over the course of my computer science studies, I worked on several projects. One was a tool to automatically grade handwritten exams; the backend was built in Python using OpenCV for image processing, and I used React for the frontend.

On the side, I worked at Carl Zeiss IQS as a working student. There, I contributed to a sensorics dashboard built in Angular. I also gained experience working with data transfer using MQTT, WebSockets, and BLE.

For my practical study semester, I worked at Bosch Manufacturing Solutions. There, I built my first full-stack application from scratch. The app allowed users to search for development projects and view status updates. Project data was retrieved from MongoDB and Postgres databases. The frontend used Angular, and the backend API was built in .NET with C#.

During my Bachelor's thesis, I created another full-stack application using the same stack, this time at Carl Zeiss SMT. It was a report automation tool that enabled easy visualization of measurement results fed in as CSV files.

To start my career, I joined Kärcher. I began as a developer in the B2B eCommerce team and soon took on responsibility as the technical lead for a distributed team.

I continued to program on the side. My first project after graduation was a full-stack application which I viewed as my personal capstone project: a platform for sharing, browsing, and selling teaching materials. I used NestJS for the backend, React for the frontend, and Keycloak as the identity provider, hosting the app on DigitalOcean.

During that time, I refined my deployment workflow. GitHub Actions was used to SSH code onto my VM and build Docker images there. All my apps ran on a single DigitalOcean VM, using Docker Compose to organize services and Nginx as a reverse proxy.

After that project was finished, I built a personal blog using 11ty.

My next project was a mortgage calculator where I explored Next.js for the first time.

When my DigitalOcean VM reached capacity, I moved my projects over to Hetzner. To do this efficiently, I defined all my infrastructure as code using Terraform.

To level up my deployment game, I created a three-node Kubernetes cluster using k3s. To keep everything as code, I used Ansible for the setup and ArgoCD as my GitOps tool.

Instead of SSH'ing code to my VMs, I started building images in the pipeline and storing them in GHCR. Secrets are now securely fetched from AWS Parameter Store.

In preparation for freelance website building, I experimented with Ghost CMS and built a PoC.

That tool didn't quite fit my use case, so I tried Strapi instead. I added Strapi as a backend to a previous project and built a site for a potential customer using Next.js. However, after a critical CVE affected Next.js, I reconsidered that choice.

This led me to the present, where I am using Astro to build this site.

Projects

Immoly.io desktop screenshot
Immoly.io mobile screenshot

Immoly.io

visual mortgage calculator with multiple color schemes
https://immoly.io
Next.js
Schluesselmomente desktop screenshot
Schluesselmomente mobile screenshot

Schluesselmomente

website for local coaching business
https://schluesselmomente-freiburg.de
HTML
Tailwindcss
php
Mimis-Kreativstudio desktop screenshot
Mimis-Kreativstudio mobile screenshot

Mimis-Kreativstudio

floral design studio website with elegant styling
https://mimis-kreativstudio.de
Astro
Tailwindcss
Resend
Business-Website desktop screenshot
Business-Website mobile screenshot

Business-Website

personal portfolio website with 3D elements
https://jakob-lingel.dev
Astro
React
Three.js
Tailwindcss
Alemazung-Site desktop screenshot
Alemazung-Site mobile screenshot

Alemazung-Site

multilingual website for a mayor's office
https://alemazung.de
Next.js
Strapi
Tailwindcss
Blog desktop screenshot
Blog mobile screenshot

Blog

personal blog built with 11ty
https://blog.jakob-lingel.dev
11ty
Tailwindcss
telemetry.jakob-lingel.dev desktop screenshot
telemetry.jakob-lingel.dev mobile screenshot

telemetry.jakob-lingel.dev

kubernetes monitoring tool written in rust
https://telemetry.jakob-lingel.dev
Rust
Kubernetes metrics monitor
React

Teachly.store

platform for browsing, sharing, buying and selling educational resources
https://app.teachly.store
React
Typescript
Nest.js
Keycloak