Refactor a Tangled Order Aggregate at a Logistics Platform
Overview
What this challenge is about.
Refactor a logistics platform's god object into Order, Shipment, and Invoice aggregates. Preserve 340 tests and earn a verifiable certificate.
The scenario
The platform (around EUR 11M ARR, integrating with 9 carrier APIs) is preparing to onboard a Tier-1 retail shipper and the new product manager wants the order domain hardened before adding new features.
The Brief
What you'll do, and what you'll demonstrate.
Refactor a 4,200-line god aggregate into properly-bounded DDD aggregates without breaking existing tests, surfacing the bugs hiding in the tangled code.
Earning criteria — what you'll demonstrate
- Apply tactical DDD patterns to a real legacy aggregate
- Identify aggregate boundaries from invariants, not from data relationships
- Refactor incrementally while preserving a behaviour-coverage test suite
- Surface and document bugs uncovered by clarifying domain language
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Aligned coursework coming soon.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
- Tactical Ddd
Apply tactical ddd to solve real industry problems and demonstrate production-level capability.
- Aggregate Design
Apply aggregate design to solve real industry problems and demonstrate production-level capability.
- Java Refactoring
Apply java refactoring to solve real industry problems and demonstrate production-level capability.
- Domain Events
Apply domain events to solve real industry problems and demonstrate production-level capability.
- Value Objects
Apply value objects to solve real industry problems and demonstrate production-level capability.
- Test Driven Development
Apply test driven development to solve real industry problems and demonstrate production-level capability.
Careers
Career paths this challenge builds toward
Completing this challenge demonstrates skills that transfer directly to these roles: