There are lots of design decisions made by Apple in OS X (now macOS) one can appreciate. I like the universal menu bar at the top of the screen. Overall it saves on space (assuming you need a menu bar).
One I do not like is the Dock. By default it takes up a lot of space, windows cannot cover it, and it wants your attention often. Application windows behave oddly compared with other Desktop Environments using a similar metaphor.
Shrink the Dock with zoom
In the Dock settings, move the Size slider all the way to Small. Select Magnification and set the slider to Max.
Hide the Dock
Select “Automatically hide and show the Dock”.
Increase Hover Time
In the terminal set the delay for the Dock to 5 seconds. Set the number higher if you want.
defaults write com.apple.Dock autohide-delay -float 5 && killall Dock
Kill the Bouncing Icons
Someday someone will tell me why Apple decided a bouncing icon in the Dock demanding the user’s focus and attention for even the most mundane information is a good idea. I cannot even imagine.
defaults write com.apple.dock no-bouncing -bool TRUE && killall Dock
Use Witch, Alfred, & Keyboard Maestro to Improve Things
I use Alfred similar to Michael’s approach. I also use Keyboard Maestro for launching shortcuts to either launch or raise specific apps – for example, Control-Command-S for Slack. Alfred – Productivity App for Mac OS X & https://www.keyboardmaestro.com/main/
Most important, I use witch to provide Windows-like task switching via Command-tab. Witch · Many Tricks