Marc Nützel
  • Home
  • About
  • Skills
  • Recent Posts
  • Projects
  • Experiences
  • Posts
  • Working With Me
  • Tags
  • Agents
  • Ai
  • Architecture
  • Argo-Rollouts
  • Aws
  • Careers
  • Ci-Cd
  • Code-Review
  • Cost-Optimization
  • Cqrs
  • Deployments
  • Devops
  • Docker
  • Domain-Driven-Design
  • Ecs
  • Eks
  • Event-Sourcing
  • Gitlab
  • Groovy
  • Java
  • Jira
  • Junit
  • Kotlin
  • Kubernetes
  • Lambda
  • Legacy-Modernization
  • Microservices
  • Postgresql
  • Production
  • Productivity
  • Software-Engineering
  • Spock
  • Spring-Boot
  • Strangler-Fig
  • Test-Data
  • Testing
  • Tooling
Event Sourcing on PostgreSQL: No Kafka Required
Event Sourcing on PostgreSQL: No Kafka Required

Every time I mention event sourcing, someone asks which message broker we run underneath it. The honest answer is none. The event store for the platform I work on, a system of record for property units and metering-device lifecycles, is a PostgreSQL table with a handful of indexes. No Kafka, no EventStoreDB, no exotic infrastructure. Just a relational database doing what it has always been good at: storing rows durably and letting you query them.

  • event-sourcing
  • postgresql
  • cqrs
  • java
  • kotlin
  • architecture
Monday, September 28, 2026 | 7 minutes Read
AWS Cost Optimization for Microservices: ECS vs EKS vs Lambda
AWS Cost Optimization for Microservices: ECS vs EKS vs Lambda

The runtime question usually arrives disguised as a cost question: “our AWS bill is too high, should we move to serverless?” Almost always the honest answer is that the runtime is not the biggest line on the invoice. But the runtime decision does determine which levers you get to pull later, so it is worth making deliberately. This is the decision framework I use for Java services, and the levers that have moved real bills.

  • aws
  • java
  • microservices
  • cost-optimization
  • ecs
  • eks
  • lambda
Monday, August 17, 2026 | 6 minutes Read
Kubernetes Deployments for Java Microservices: Rolling, Blue/Green, and Canary
Kubernetes Deployments for Java Microservices: Rolling, Blue/Green, and Canary

Not every change carries the same risk. A copy fix and a rewrite of the pricing logic do not need the same rollout mechanics, and treating them the same means you either move too slowly or find out about a regression from your users. This is how I pick between rolling updates, blue/green and canary for Java services, and the JVM-specific details that make all three behave differently than the tutorials suggest.

  • kubernetes
  • java
  • microservices
  • devops
  • argo-rollouts
  • deployments
Monday, August 17, 2026 | 6 minutes Read
Spring Boot Production-Ready Checklist (2026)
Spring Boot Production-Ready Checklist (2026)

Shipping a Spring Boot service is easy. Keeping it fast, secure and operable at three in the morning is the hard part. This is the checklist I walk through before a rollout, condensed from services I have taken to production on Kubernetes over the last few years, currently on Spring Boot 4 and Java 25. It is deliberately not a list of everything you could do. It is the set of things whose absence has cost me, or a team I worked with, an incident.

  • spring-boot
  • java
  • kotlin
  • microservices
  • kubernetes
  • production
Monday, August 17, 2026 | 7 minutes Read
Generating data with Mockneat
Generating data with Mockneat

At some point every developer reaches the point where they need larger amounts of data. One open-source library I like to use is Mockneat. The Mockneat library offers an easy-to-read API to generate JSON, XML, CSV, SQL and whole POJOs. The nice thing about it is that you can generate valid data with little effort. Just a foretaste of what Mockneat can generate without much effort: If something is still missing, I can fall back on a regular expression:

  • java
  • testing
  • test-data
Friday, January 3, 2020 | 1 minute Read
Spock Testing-Framework
Spock Testing-Framework

First of all, Spock and JUnit are both great test frameworks, and JUnit is usually one of the standard tools I reach for in a project. In my last project a colleague suggested Spock, and we decided to try it out in one of our microservices and roll it out everywhere if we liked it, which we finally did. You can find all examples here on GitHub, of course. We have looked at the following criteria:

  • java
  • testing
  • spock
  • junit
  • groovy
Sunday, October 20, 2019 | 3 minutes Read
Navigation
  • About
  • Skills
  • Recent Posts
  • Projects
  • Experiences
  • Working With Me
  • Leistungen (DE)
  • Impressum
  • Datenschutz
Contact me:
  • me@marc-nuetzel.de