Skip to content
vinhnq.com
All projects

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

RequestReleaseAdmin webReactAPI · bluelive versionRedis and databaseGitHub Actionsbuilds the JARbg-switchone deploy at a timeAPI · greennew version
Straffico blue-green release

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

All projects