Embroidery and Sewing
3D Printing
Author: Books and Writing
Software Development

I build software that solves real problems

Started in eCommerce support, now I develop the tools I wish I had back then.

Software development was never the plan. But when you work in support for online shops for years and keep seeing the same problems, at some point you start solving them yourself. And for that, you need to be able to read the code. So I learned it – with lots of trial & error, learning by doing, and help from Stack Overflow. Today I develop plugins for OXID 7, Shopware 6 and osTicket, build websites and business tools with Symfony – open source and commercial. Here I'll tell you how I work and why I do this.


From Office Manager to eCommerce Support to Developer

I was always an office manager and then 'slipped into' technical support for OXID and Shopware shops. Later I also took on project management for shop projects and plugin development. I saw what shop owners really need and started coding myself. No computer science degree, no formal training. Just learning by doing, Stack Overflow, and lots of trial & error. Business is in my blood, the technical skills I taught myself.


What I Work With

My Tech Stack

PHP & Symfony

Modern PHP 8.2+ with Symfony is my main tool. I like the clear structure Symfony enforces. Services, dependency injection, events – that's code you can still understand two years later.

OXID 7 & Shopware 6

I know both systems inside out and develop modules for them – everything that makes shop owners' lives easier. Either on behalf of a customer or because I miss the functionality myself.

osTicket

osTicket plugins are my open source projects, whether Markdown support, subticket manager, API extensions – I build what's missing in the core. Signal-based event handling, clean architecture, and most importantly: solutions that work in everyday use.

TypeScript & MCP

MCP servers in TypeScript for integrating Claude Code with external systems. Wiki.js connection, osTicket API – so AI tools can access real data.

Bash & Shell

Automation is mandatory. Release scripts, deployment workflows, project setup – anything that repeats gets scripted. Less manual work, fewer mistakes.


How I Work

No cowboy coding. Structure and quality are non-negotiable.

Test-Driven Development

Tests first, then code. Sounds slow, but it's faster – because you're not hunting a bug three days later that you would have found in five minutes with a test.

Conventional Commits

Every commit tells what happened. feat:, fix:, chore: – so the release script generates the changelog automatically. No manual maintenance, no forgotten entries.

Claude Code as a Tool

I use Claude Code daily. For code reviews, refactoring ideas, documentation. I've built custom agents and skills that directly support my workflows – from ticket creation to wiki documentation. But: AI is a tool, not a replacement. It makes routine faster, it doesn't do the thinking for me. The code is mine, so is the responsibility.

Documentation

Every project is documented in code and also gets a README. There are also wiki pages for end users. Code without docs is only half done.



Why I Do This

  • First and foremost, because it's fun to solve problems and build things that help others.
  • A good plugin can help hundreds of shop owners – without me having to explain it to each one individually.
  • Code is honest. It works or it doesn't. No politics, no excuses.

What matters in the end: Does the software solve a real problem? Is the code clean enough that I'll still understand it in a year? Then it was a good day.


View Projects

See what I'm working on.