The randomisation features of systemd timers are pretty essential, to avoid lots of systems running the same thing at the same time. To do that in cron you have to do ugly things like use bash and then run sleep $RANDOM.
Several cron implementations (including the default in Red Hat-derived distributions) have a built-in RANDOM_DELAY variable you can set.
I prefer setting the random offset when writing/deploying the crontab (you probably have them committed somewhere so there's bound to be a deployment mechanism, such as ansible). This way the offset is kept constant, while still avoiding the "thundering" cron.