so, what i do is use orchestration to establish installed applications on a system. then different states are used and attached to a highstate using a dynamic top.sls file.
this allows the highstate to be less cumbersome than the full orchestration. as well as lets the systems be more dynamic.
I also don't schedule highstates. instead using things like watchdog beacon and the other beacons to signal different things. and use reactors to trigger a maintenance highstate.
this tends to reduce the high cost of do nothing highstates.
for my home system i pretty much have salt and a docker host. the docker host hosts a bunch of different software. but i have 2 reactors setup. one to run on a webhook that is triggered by my home assistant when it has an update. and the other to run the other triggers a state to update my letsencrypt certs when the cers are close to expiring.