EDIT: info below is incorrect about UTC not being monotonic, as pointed out in thread but is useful for monotonic vs non-monotonic:
In UTC you can jump forward or back, so it's possible to do an operation after another operation but have a timestamp before it, which is bad for many reasons, top being auditing.
do operation one at T0 do operation two at T1 do operation three at T-1
in TAI it would always be do operation one at T0 do operation two at T1 do operation three at T2
Positive leap seconds are monotonically increasing in UTC, where you get 23:59:60 between 23:59:59 and 00:00:00, but not in typical implementations of unix time where 23:59:59 repeats, and with milliseconds you go (breifly) 58.999 -> 59.0 -> 59.999 -> 59.0 -> 59.999 -> 0.0
If you're only counting seconds, then both UTC and unixtime are always monotonically increasing.
(Negative leap seconds are similar, and do not affect the monotonic property.)
POSIX/Unix timestamps, however, are non-monotonic. But that's a different timescale.
I'm not sure how this differs much in practice from UNIX time