• Small company = I have had to live with two different approaches.
    1. Doing everything myself.
    2. Learning to deal with a (mentally remote) "hosting" company's lack of knowledge and unprofessional attitude towards databases they are not using themselves.

    While living in scenario 1, I gradually became better at tuning. Of course, it was manual setup since it was "learning as you go along". Every change of a default setting was triggered by things happening or not happening, so: a very reactive process. After a while, I have collected a larger list of changes, and eventually I build a script to run after initial deployment, and a "how to" one-pager to remind myself of the necessary steps. I used it mainly for every so often as IT department decided to fry something - including changing my computer, because senior management wanted a different label to sit on the front...

    While living in scenario 2, I have to press hard just to be informed about the settings they have chosen. It is impossible to get told why they choose as they do! And it is equally impossible to change their minds. We are just too small to carry any weight in their decisions, but we surely didn't signed the contract based in their hosting capabilities. Other matters were far more important to senior management.