Core concepts
Minutes, money and rates
The three storage decisions that everything else is expressed in.
- Time is stored in minutes
- Leave, capacity, estimates and working patterns are all minutes. Days are a rendering, resolved against the legal entity's standard working day. Minutes are what let hourly sick-leave accrual in the United States and a half-day in the UAE share one unit.
- Money is stored in integer minor units
- Tetri, fils, cents. Never a floating-point number, and never converted between currencies — reporting sums per currency and leaves conversion to finance, who own the rate and the date it applies on.
- Rates and fractions are basis points
- An FTE of 0.6 is 6000 basis points; an overtime multiplier of 1.5× is 15000. Same reason as money: no rounding drift.
Days are entered, minutes are stored
Forms take days or hours and convert against the relevant entity's standard working day. Asking somebody to type 11520 for twenty-four days is how a policy gets entered wrong by a factor of sixty.
Dates are handled in UTC
Every date-only value — a hire date, a leave day, a holiday — is stored and compared in UTC. Mixing in a local-time reading is what makes somebody in UTC+4 book leave a day early.