Earlier quoted context omitted.
Non-metropolitan areas can be nice. I suppose bit twiddling is specialized. There are fewer jobs, but also fewer people seeking those jobs. That relative lack of competition goes in your favor. High-level developers (Java, JavaScript, Go, Python...) are being pumped out at a frantic pace.
Say I were a web developer looking to transfer into a lower level developer role. How easy would it be for me to get and pass an interview? I'm guessing it's going to be extremely difficult to prove I have the skills you're looking for.
I usually groan at the leetcode style interviewing questions because as an “enterprise developer”, you’re mostly going to be working with prebuilt libraries. In my last ten years worth of interviewing, I’ve only once been asked an algorithm question - and that was to write a merge sort. I got the job offer but didn’t accept it. I figured that any company who has interviews for senior developer/Architects where they care more about low level algorithms than high level architecture is not a company I want to work for. If the interviewing and filtering process for a company is broken, that tells you s lot about the company culture.
That being said, when I was a bit twiddler working with a cross platform (x86 and mainframe) C code base, we did have to write all of the low level algorithms ourselves and had to know how to write highly optimized code and analyze the compiler output.
In that case, knowing how to program algorithms and understanding the “how” was very important. I probably would try the leetcode and other interviewing suggestions for working for a FAANG.