tarsnap and restic for offsite backups.
I push code to github; then capistrano (think bash script with some bells and whistles) deploys that code to the server and restarts systemd processes.
I've been running this saas business for 3+ years and wouldn't change a thing. I'm also working on a new business with the exact same stack.