Order-fulfillment microservices for 4,700+ stores
Java, Spring Boot and Kafka multi-tenant microservices for North American stores plus UK and South Africa tenants, with event-driven flows across five picking services and event replay.
- Sector
- Retail and logistics
- Company size
- Enterprise (4,700+ stores)
- Timeframe
- 2022 to 2025
- Team
- Platform team; one engineer on these services
- Stack
- Java, Spring Boot, Apache Kafka, SQL Server, Splunk, Dynatrace, Jenkins, SonarQube
- Headline result
- 4,700+ stores
Problem
Fulfilment flows crossed five picking services and several tenants in three countries. Lost or duplicated events meant stuck orders, and every fix was a manual one.
Approach
- Event-driven flows with replay, so a stuck order could be recovered rather than fixed by hand.
- On-call with Splunk and Dynatrace, and the observability to find where a message was.
- A recurring deadlock traced from the on-call rotation to an index design problem (its own page: SQL Server redesign).
- Test-driven delivery with 80%+ integration coverage gated in Jenkins and SonarQube.
Result
Stuck orders became a replay procedure instead of a manual fix, and the services shipped behind CI gates that enforced 80%+ integration coverage.
Prior experience: work done in a previous role by the people behind Data Fact Tree, not a Data Fact Tree engagement.