Earlier quoted context omitted.
Many people think that most developers don't actually need CS (and much less math) fundamentals in their every-day work life. That's why coding interviews like big tech companies tend to do are controversial ("Why would an iOS developer need to able to balance a binary tree?"). Can you give some examples where you hid road blocks because of your lack of education?
Balancing a binary tree is just an algorithm, like there are so many. As a programmer, you have to design algorithms on the fly, quite a few of which may actually be harder than just balancing a binary tree. Algorithms emerge automatically from designing data structures; when you end up manipulating these data structures. In turn, data structures emerge naturally from trying to model particular problems. There are to…
The dirty secret is 90% of what happens in the real world (and on HN) is a solved problem that needs to be applied or re-applied. Someone has done it before and they've done it better than you will.