Earlier quoted context omitted.
> sixteen year-old me spent quite a lot of time coding in it for a year or so I always assumed this was what I would be doing for a living when I grew up - I was honestly a little disappointed that high-level languages had progressed so far by the time I joined the workforce.
I think deep knowledge of any assembly helps with any type of programming. You'll have very good perspective of how the CPU and RAM really work, even if modern CPUs are more complex and you have caching and out-of-order in the mix.
I very much agree. I've never written any assembly-level code as part of my work, but having an appreciation of the concepts at that level helped me as newbie C/C++ developer in the mid nineties.
Nowadays I work slmost entirely in the .net stack, but even there having even a shallow knowledge of the "next level down" helps - the concept of a jitted language only really makes sense if you grok what the jitter is emitting. And the idea of compiler optimisations is easier to understand if you get that language constructs can be realised in different ways, with different costs, as machine code.
Abstraction layers are certainly easier to think about if you see them (even shallowly) from both sides.