@megkh22 I used to configure this type of software. This is called “rounding rule” configuration. How that is configured in their system determines how employees are paid for time worked.
Many places had either “pay by the minute” where you would get paid EXACTLY for the time worked (1/60th of your pay rate for each minute). This was considered a common best practice.
The next most common was every 15 minutes, but if you punched at 12:07 it wouldn’t pay out for that quarter but if you punched at 12:08 it would give you the quarter hour payment. “You win some you lose some, but on the whole it evens out” was the logic here, particularly from a legal perspective.
Many companies have their own legal interpretations of state and local laws that may cause them to request a particular kind of configuration, but in this situation this sounds like bad config entirely that could lead to significant expense for the employer. I’ve never seen it before.
It sounds like the configuration here rounds out a whole hour if you work any portion of an hour. This is most certainly NOT best practice for their configuration as your son figured out they’re probably losing a lot here.
Idk if id call this illegal but it’s certainly gaming the system. If caught and found out he’s doing it intentionally they would likely be within their rights to to fire him for what is called “time theft” which is accepting pay from an employer for hours not actually worked. If he’s in an at-will state they wouldn’t even need a good reason to do this, they just could. Unsure if that’s overwritten by university policy.
If he wants to not appear as obvious he should try and vary times (+/- a few mins here and there) he punches in and out so it isn’t “he punches in at 59 every day and out at 01 every day” if they run an audit. He should also put together a decent excuse of “I was working with a student and trying to wrap up a question, accidentally worked slightly over” kind of thing.