Good architecture is not an aesthetic decision - it is the prerequisite for operational stability and the foundation on which reliable content can be created. In this Executive Breakfast, together with a financial services provider, we shed light on how targeted investments in infrastructure directly influence the quality of the content delivered.
Why infrastructure is not an end in itself
Technical debt rarely arises consciously. It accumulates in small decisions: a direct database access instead of a clear API, a hard-coded configuration value instead of a central repository, a deploy process based on manual steps. Each of these decisions is acceptable on its own - together they result in a system that becomes slower with every sprint.
For the financial services provider in this project, this meant that releases took three days, rollbacks were risky and new features had to be planned for several weeks before a first test was possible. The architecture was not wrong - it had been built for a different world.
Containerization as the basis
The first step was to move to a containerized setup on Kubernetes. This sounds like a technical detail, but it has a fundamental impact on the way we work: Teams can deploy independently, services can be tested in isolation and the entire system becomes reproducible through versioning.
The decision to use MinIO as a central object store for all content assets was particularly important. This established a clean separation between code and content - a separation that is missing in many legacy systems and leads to the most common problems with content updates.
Authentication as a cross-cutting issue
Keycloak took over central authentication and authorization. Instead of specific authentication logic in each service, a standardized token model was introduced. This step not only significantly reduced the development effort, but also created the basis for future extensions such as multi-tenancy and delegated access.
Results and outlook
After 14 weeks, the results were measurable: the deployment time dropped from three days to less than 20 minutes. New features could be developed and tested in shorter iterations. The team reported a noticeable increase in development enthusiasm - a factor that is often underestimated in technical projects but has a direct impact on quality and speed.
The next phase will focus on the introduction of an edge caching strategy and the complete migration of the legacy content database to structured Markdown files in MinIO.