Thanks for the nice article. I agree in parts. Most self-taught software developers I know, know all of these things.
A lot of self-taught "software developers" are just not trying to be software developers. They are domain experts who learned to code. They likely know version control, most likely linux as well.
What they often don't have the time to work on is the whole deployment part, because that's just not what they are paid to do. Setting up proper CI/CD pipeline and kubernetes-based application deployments is way too complex to justify. They also often don't have the need to do so, because they don't need to scale their apps.
Cloud services are also just too complex and confusing if it's just one of the many aspects you have to worry about. Getting started with AWS means that you actually have to first figure out which of their services you actually need.