Context
A B2B SaaS product had recurring incidents in billing workflows: duplicated invoices, failed retries, and unclear audit trails.
Challenges
- Legacy logic scattered across controllers
- No clear event model for billing state changes
- Poor retry behavior for payment failures
Solution
I redesigned the billing domain around explicit state transitions, queue-driven retries, and idempotent operations. We introduced clearer service boundaries and improved observability for finance-critical actions.
Outcomes
- 78% reduction in billing-related incidents
- Faster release cycles for pricing-related features
- Better confidence for finance and support teams