I recently watched a video by John Lindquist, expressing the importance of typing skills to become a more efficient developer. In this video, he demonstrates the use of Karabiner-Elements to be able to remap keys on your keyboard.
This led me down the rabit hole of how I can start optimizing my keyboard to better suit my needs. The first thing I did was increase my Key Repeat setting and shorten the Deley Until Repeat as well. These can be found in your system preferences. I am not sure why I never did this before, but navigating via my arrow keys was terribly slow, so I tended to use my mouse quite often instead. With that update, I am able to navigate text much more efficiently via my keyboard.
Next thing I did was download Karabiner-Elements. With that installed, I installed a complex modification that allows me to navigate via the h j k l keys when pressed in combination with the caps lock key. This gives me Vim type navigation without having to toggle between modes. I also remapped my left and right shift keys to be delete_forward and delete_or_backspace when pressed alone.
These two modifications help keep my hands on the home row of my keyboard, which in theory, is more efficient. I feel like I am just scratching the surface of what is possible with Karabiner-Elements.