Personally, I found the following to be extremely easy and powerful. A no-brainer that should be a bash default really.

  if [ -t 1 ]
  then
    #   search for commands that start off with the same characters already typed
    bind '"\e[A":history-search-backward'
    bind '"\e[B":history-search-forward'
  fi
One of my friends also recommended version-controlling your config files and storing them on gitlab, which I'm only sad I didn't do sooner. It's been such a help in keeping my aliases and configs in sync, as I make changes across numerous different machines.
A good starting point for versioning dotfiles is https://dotfiles.github.io/. I like to use Dotbot [1] for managing and installing my dotfiles, but there are plenty of other options listed.

[1] https://github.com/anishathalye/dotbot/