I am a software engineer by passion and conviction. For over 12 years, I have been operating at the dynamic intersection of complex backend architecture and human team dynamics. My approach is holistic: A successful software project requires not only excellent code but also reliable processes and a healthy team culture.
The Software Craftsman
As a web developer focusing on PHP and Symfony, I view coding as a craft. My standard is not just that an application works, but that it remains maintainable, testable, and clean. While concepts like TDD, DDD, and SOLID are essential, my highest priority — especially for long-running projects — is that the code follows a “Don’t make me think” approach.
By this, I mean that code must be written in a way that allows developers to quickly scan through it and immediately grasp what is happening. While specific parts of a codebase may inherently be complex, the overall picture should be as readable as a good book. In my experience, if readability is prioritized, other key properties like maintainability and testability follow almost naturally.
My expertise is not limited to theory and internal projects. I actively contribute to the open-source ecosystem, primarily through our own tools to ensure maintainability and code quality across multiple projects. Some of my contributions can be seen in the Fusonic PHP Extensions, which I co-authored. Most of them are available as individual packages:
The Team Coach
Technical mentoring is vital, but my role as a Team Coach focuses on the non-technical aspects of leadership. Our goal is to keep teams as self-organized as possible. When needed, I step in to remove obstacles, answer critical questions, and resolve conflicts. Creating a psychologically safe environment is the foundation for all of this. I advocate for my team, ensure their concerns are heard, and protect them from destructive influences.
The Technical Project Manager
There is often a gap between business requirements, technical implementation, and the resulting technical implications. I bridge this gap by combining my strong technical background with project management and requirements engineering. My goal is to ask the critical questions as early as possible in the project lifecycle to minimize costs and risk.
A key principle of mine is “process first, software second”. Customers often think they know what they need, but frequently the underlying problem isn’t solvable by software alone, but requires a change in process first.
To facilitate this, I like to utilize the Best Knowledge Method (BKM) for large-scale projects. Using this participatory approach, I visualize complex business processes together with all stakeholders. This ensures that all parties support the existing or new process and the software we build to enable it.
Selected Projects & Contributions
Rather than a simple list of clients, I offer examples here of how I put my roles as Software Engineer, Coach, and Project Manager into practice.
1. Offline-First B2B Sales Platform
Role: Technical Lead & Product Owner Goal: Development of a business-critical sales tool enabling sales consultations without an internet connection.
This is a signature project where I evolved from Backend Developer to Technical Project Lead. I am responsible for the entire lifecycle: from requirements gathering with the client and architectural design with the team, to development, DevOps, and release management.
The Challenge: The “Offline-First” architecture required complex solutions for data synchronization and conflict resolution when multiple sales representatives edit the same offers simultaneously. Additionally, strict requirements for backward compatibility and fallbacks for older client versions make every new feature a challenge that requires rigorous detailed planning.
2. Enterprise E-Commerce Ecosystem
Role: Senior Backend Engineer & Internal Consultant Goal: Development of a distributed web shop consisting of an SSR SPA, CMS, shop system, and ERP integration.
Here, my focus is on the architecture of highly scalable, distributed systems. This project presented multiple challenges:
- Distributed Complexity: Synchronizing data between ERP, CMS, and Shop asynchronously while ensuring near real-time updates and high performance.
- Caching Strategy: A web shop needs to be fast. Implementing proper caching — and more importantly, cache invalidation — across a distributed system where a change in one system affects others, was a highly complex task.
- Collaboration: Coordination with multiple external partners involving different work cultures and languages.
3. Leadership Highlight: Organizational Development
Role: Team Coach Goal: Strategic structural optimization for team health and efficiency.
As a Coach, I often act behind the scenes (conflict resolution, 1-on-1s), but sometimes the role requires tough structural interventions.
A key success was the strategic splitting of a team that had grown too large. Despite initial skepticism, I was able to convince management and HR through persistent argumentation and a clear vision. I successfully formalized what had been informally evident for months: the team boundaries were too blurred. The Result: Two focused and effective teams with clear responsibilities. This noticeably simplified resource planning and reduced recurring internal friction regarding shared resources. It also improved the quality of coaching, as the new coach now works closely with her specific team members in their day-to-day jobs.
Vita & Education
Since 2015 | Fusonic
- Web Developer
- Technical Project Manager (since 2019)
- Team Coach (since 2020)
2021 - 2023 | University of Applied Sciences Vorarlberg
- Coach supporting students with web related project
2013 - 2015 | Massive Art
- Web Developer
2013 – 2015 | University of Applied Sciences Vorarlberg
- Master of Science (M.Sc.), Software Engineering
2010 – 2013 | University of Applied Sciences Vorarlberg
- Bachelor of Science (B.Sc.), Software Engineering