This morning, I just inverted a binary tree for the first time, and it took me about 10 seconds to recognize the algorithm and about 60 seconds to code. It's simpler than fibonacci, and I'd encourage anyone who isn't confident in their algorithm skills to learn how to do it.
To be fair, this is after about a month of studying 4-5 hours per week. So 20 hours of free time spent to gain a measure of confidence that I can switch jobs when I want to.
My problem with this is that my skills expire and I need to repeat the study and practice time with every interview cycle.
I believe it is important for engineers to know "one level down", and it is good to know what the various data structures are used for so I can use the correct one when needed, such as set vs list vs deque, etc