Most teams treat OpenAPI as documentation. This experiment treats it as an executable contract. Every endpoint, every response, every error is validated against the spec automatically. This post explains the testing concept, the metadata system, and the CI pipeline behind it.
The lie is acting like go-live is the full price. After launch: sprawl, upgrades, toy SaaS math vs margin, an eight-point kit, AI speed vs liability, and why skipping tests is luck not engineering.
Running multiple Shopware message workers during indexing causes deadlocks on the product table. This guide explains why, walks through the pitfalls of Symfony Messenger routing, and shows how to configure a dedicated indexer transport consumed by a single worker.
Shopware 6.7 moved caching from the Store-API route layer to the HTTP layer. The old CacheTagsEvent events are deprecated. This guide covers what changed, how to add and invalidate cache tags the new way, how to handle dynamic content via AJAX, and what pitfalls to avoid.
A year of challenges, mistakes, and growth. From leading a new framework team formed from four different teams, to people leaving, to finding our identity through an on-site workshop. This is my story of 2025 as an engineering lead at shopware AG, including the hard-learned lessons about team building, roadmap ownership, and what really matters in engineering leadership.
A practical, code-referenced and slightly opinionated guide to Shopware’s SEO URL system. We walk through Admin configuration, the internals (Twig placeholders, generation, persistence), and common pitfalls at scale — with pragmatic fixes.
This article covers more than just common performance issues you might encounter during a project’s lifecycle. It also describes a workflow that can make your life easier for future projects by building performance optimization into your development process from day one.