I find somethings actually strange. Per se, checking my quality as a developer with job interview questions I will receive a not so high grade. I would say between 5 to 7 out of 10. Not brilliant. But as a developer I think I am actually really good.
I never "studied" computer science in a regular way, but I am in the industry more than 20 years. I started as a hacker, reverse engineering, assembly code, moved to C and C++ and now web development in Node.JS, Go (golang) and Rust and Vanilla JS. Touched of course Python and Arduino and Raspberry PI.
I find it that my code and overall look as much better (if I can be a bit non modest for a second) than other developers even seniors.
- My code is highly readable with good comments and other can take over my code responsibility quite easily
- My code runs (and also complies) faster than other - I understands the usage of Hash / Map instead of searching arrays and many other small things that actually enhance the code performance
- I know how to KISS (Keep it stupid and simple) and so I am able to write complicated software because the basic is simple and separated so my feasible to comprehend
- I understands Object Oriented correctly and knows where to use it and how and when to avoid it
- I know not to search always the latest new shiny thing (library or framework) and use legacy software that actually do the job when needed without complications
- I understand how the computer works, from BIOS, BUS to OS (Linux and Windows internals)
- I have (again if I may say) good product skills and some UX guts which helps me manage things on my own
All of this together allowed me to build and sell already two startups. Develop and maintain easily many web sites and SaaS which creates me nice passive income (such as https://gematrix.org).
So am I a good or bad programmer? - Still I will score quite low in job interview questions ...
The "job interview questions" are largely popularized by people who do not understand hiring, and probably don't understand much of anything else, with a cargo cult mindless copy/paste of practices that don't actually apply to them.
There is a niche of a niche of a niche of roles where deep specialized knowledge is actually a baseline requirement in order to be successful in the role. 99% of the other roles filled by human beings who write software don't require anything close to it, but the companies delight in wasting everyone's time anyway.
Most of the very best programmers I've ever known bomb these idiotic interviews and the companies (and their customers) lose because of it.
A fine place for me to stop babbling.