If anyone's reading over this and feels "Gosh, I'll never be an ML dev; this is way too much": I don't know most of that list, and still manage to be a productive researcher. I learn what I need as I go. That's probably the optimal strategy. I'm skeptical of first-principles learning. It's great to immerse yourself in theory, but when you've gone all the way to "topology" you've probably gone beyond the limit of what…
I feel like I know up to 75% of that stuff and can't get hired even for entry level data science.
And to get to this level of understanding takes around a decade. Feels like a huge waste of time. The things you could be in a decade of work...