On-shift & front-desk overlap board
I can see who is on the clock across every hotel right now, without calling a single front desk.
With no HR department, nobody owns the question of who is actually working right now across the portfolio. That gap costs money two ways. Forgotten clock-outs quietly inflate payroll, and two front-desk people scheduled onto the same slow shift is coverage I did not need. I wanted that answer at a glance, not a round of phone calls.
How it works
One unattended job does the whole thing. Every 30 minutes from 8am to 8pm, on the always-on Mac mini, it logs into the payroll admin account, replays a single GraphQL query to pull time punches for every hotel company at once, and rebuilds one live board.
- Who is clocked in now, grouped by department, with time on the clock so far
- Who already clocked out today
- Forgotten-punch flags for shifts open past roughly 10 hours or past midnight
- Front-desk double-coverage minutes, with the manager counted separately so their overlap does not muddy the staff signal
Stack: Python, Gusto time records over a company-scoped GraphQL replay, unattended login handled with 1Password plus a TOTP secret so it runs with no human in the loop, published to a Cloudflare-gated dashboard.
It is live across all ten hotels. The point is not to watch people. It is that the exceptions surface themselves. A forgotten punch shows up in minutes instead of at the end of the pay period, and the overlap number tells me where scheduling is loose. That is the HR seat doing its job without an HR seat.