Straffico
Straffico
Project and cost control for construction companies
Backend Engineer · Freelance · Java 21
The problem
Construction companies needed sites, warehouses, accounting, and management working from the same numbers.
Architecture
Simplified view, no client internals.
What I delivered
- Built the GitHub Actions deployment for dev and prod: the JAR is built on the runner, then a blue-green switch releases it with zero downtime.
- Added a deploy lock so two repositories never release to the same server at once.
- Reconciled actual and system fund balances, and built analytics, report builder, and resource schedule APIs.
- Added Web Push notifications, user activity audit, and support request IDs correlated across responses and logs.
Key decisions
Release with a blue-green switch
The new version starts beside the live one, and traffic switches only then, so production releases need no downtime window.
Keep actual and system balances separate
Actual and system fund balances are tracked as two values and reconciled, so a difference stays visible instead of being overwritten.
Stack
Java 21 · MyBatis · Redis · GitHub Actions