TFLYXTFLYX®
← Back to the archive

ACT III · Build

Why I Built ShiftMate: A Roster Isn't Just a Spreadsheet

Behind every scheduling gap is a real person left to cover it alone. That's the part most scheduling software forgets.

ACT III · BUILD🎙️ Personal Take5 min read

When I put together the research page for ShiftMate, I didn't want the usual "scheduling is annoying" framing every SaaS landing page uses. I wanted to find out if the pain was actually real, or just a convenient pitch. So I went looking for evidence before I let myself build anything.

One account stuck with me more than any statistic did — a story from Malaysian retail and F&B workers describing what happens when a scheduling gap isn't just an inconvenience: being left to run an entire shift alone, a colleague shouted at while working the counter unsupported, someone in tears by the end of it. That's not a UX pain point. That's the actual, human cost of a roster nobody double-checked.

A spreadsheet doesn't know it's about people

Excel doesn't warn you when the same person is closing three nights in a row. WhatsApp doesn't flag when nobody's covering the Sunday morning shift until it's too late to fix. Those failures aren't dramatic on the business owner's end — a missed cell, a message that got buried. On the staff end, they're the difference between a manageable shift and a genuinely bad night at work.

This isn't a made-up pain point. We looked for real evidence before building anything.

That line is on ShiftMate's own site because I meant it as a promise to myself as much as to anyone evaluating the product: don't build a solution to a problem you invented. Build one for a problem you can actually document.

Why fairness became the core feature, not an afterthought

This is why ShiftMate's auto-schedule doesn't just fill a grid — it scores every generated roster for fairness from 0–100% before you're allowed to publish it. The Weighted Fair Rotation algorithm reads availability, leave, max shifts and rest days, and the fairness score exists so a business owner can see, at a glance, whether they're about to burn out the same two people again this week.

  • Leave and availability are tracked so someone never gets scheduled on a day they explicitly can't work
  • Fairness scoring makes an invisible pattern (the same person always covering weekends) visible before it becomes a resentment problem
  • One-click export means the schedule actually reaches every staff member the same way, not buried three days deep in a group chat

The business case and the human case aren't separate

A fair roster isn't just a nicer thing to do for your team. It's the roster that keeps good staff from quietly job-hunting because they're always the one covering the gap. The FMT/Kintone data on manual-work fatigue and the UTHM case study on real scheduling failures both point the same direction as the human accounts: the tools most Malaysian shift-based businesses are still using weren't built for this job, and the cost lands on the people working the floor, not just the spreadsheet.

Give your team a fair roster, not a guessing game

Fairness scoring, leave tracking, and one-click export — free for 14 days, no credit card.