All work
Columbia Sportswear · Digital Commerce · 2025 — Present
Real-time Personalisation for Digital Commerce
Spring Boot microservices and Kafka streams that bring ML-driven recommendations into the shopping experience — from catalog to checkout.
Client code · private under NDA
Architecture at a glance
01
React storefront
Product discovery UI
02
API Gateway
OAuth 2.0 / JWT
03
Commerce services
Catalog · Cart · Orders
04
Kafka
order.* · customer.*
05
Recommendation API
ML model outputs
The challenge
Shoppers needed relevant products in the moment, while catalog, inventory, pricing and order services had to stay fast, consistent and independently deployable.
Tech stack
Java 21
Spring Boot
Apache Kafka
React
TypeScript
AWS EKS
PostgreSQL
Docker
Kubernetes
CloudWatch
What I did
- 01Split commerce workflows — catalog, inventory, pricing, cart, checkout, orders — into Java 17/21 Spring Boot microservices.
- 02Published customer and order events to Kafka so downstream services and analytics react in real time.
- 03Prepared behavioural and transaction data for ML, then exposed model outputs as REST APIs consumed by React storefront components.
- 04Ran on AWS EKS with Docker, Jenkins CI/CD, CloudWatch, Splunk and distributed tracing for reliability.