real projects · Cohort weekends

Hexagonal Ports for Legacy Java Monoliths

Carve adapters around JDBC-heavy modules without pausing feature work.

Duration
6 weeks · 60 mentor hours
Schedule
Weekends
Level
Intermediate
Price
14,200 THB (informational)

Java 21 · JUnit · Gradle

Cover for Hexagonal Ports for Legacy Java Monoliths

Description

Using a fictional inventory monolith, you introduce ports, fake adapters for tests, and strangler patterns for JDBC repositories. Emphasis on incremental PR sizes your manager can approve.

What arrives in your repo

  • Port interface naming workshop
  • Fake adapters with Testcontainers
  • Strangler routing for reads vs writes
  • Transaction boundary journaling
  • Module Gradle boundaries enforcement
  • Risk register template for legacy cuts
  • Mentor pairing on PR sequencing

Outcomes we expect you to evidence

  1. Land three adapter PRs with rollback notes
  2. Maintain feature parity checklist
  3. Present risk register to leadership
Avatar for Tuan Anh

Responsible instructor

Tuan Anh

Consultant specializing in brownfield Java rewrites.

FAQ

Examples use Spring Data JDBC but concepts apply broadly.

Experience notes

“Hexagonal Ports for Legacy Java strangler routing lab mirrored our read replica cutover.”
— Helena · Manufacturing · 5/5
“Risk register template is blunt — appreciated the honesty about rollback pain.”
— Peer