I avoided the manager route like the plague. I enjoy designing and implementing systems while never being particularly good at human relationships. Although I am retired, I continue to do a lot of contracted work. My domain is designing microprocessor based instrumentation and then writing the software that runs it. The instruments sense and control in both the analog and digital realms. That makes me a bit twiddler. It is obvious that I could have made a lot more money in management; however, money was never a big driving force for me.
I have also written numerous cute little operating systems, communications protocols, and even specialty compilers. This is all a source of enjoyment, much like being paid to entertain myself.
Computing is a broad and deep pool of things to do. I taught Embedded Computing in high school for a few years. The kids learned stuff right down to logic gates and Boolean Algebra. They programmed first in assembler and then C/C++ on Arduino devices or bare ICs if they so chose. About 50% loved it while the other 50% really struggled.
I used to do some of the stuff you talked about. I found assembly to be quite entertaining to write, I appreciated its efficiency, and also did a lot of C code. I would have loved your class, but I pretty much had to teach myself.
I was happiest as a programmer. I could program 24 hours and it would seem like 24 minutes. But I just could not abide with dumb managers or designers telling me what or how to do something. So I had to become management. Its all in your ability to handle fools. I couldn’t. At my core I am an inventor.