Multi-Org CRM Platform
One API over six separate CRM organisations, built so writes stay correct even when the CRM gives no guarantees.
- Problem
- The business runs several brands, each in its own CRM organisation. Staff needed one system across all of them, but the CRM has no transactions, no idempotency keys and no conditional writes.
- What I built
- A Java and Spring Boot platform with a crash-safe receipt workflow for two-step writes across organisations, an optimistic-concurrency "write fence" in Postgres, a policy engine for record and field access, and an audit log that captures every write automatically.
- Outcome
- CRM calls per board interaction cut from about 25 to 1–2; a page across six organisations now waits only for the slowest one; more than 2,300 automated tests.
- Java 21
- Spring Boot
- Apache Camel
- PostgreSQL
- Firestore
- Cloud Run
- Cloud Tasks
- GitHub Actions
