My company actually does try to train people. We hire people who come out of coding camps like General Assembly -- and we actually pay these camps when we hire them. Students attend these camps for free.
After that, we pair program with them, and painstakingly explain various concepts to them. We hold them by the hand, and literally teach them. I found it amazing that my company had to do this, and shocking that they literally could not find good developers. My company is just looking for developers that can get shit done. We are not looking for rock stars, or master algorithm puzzle solvers. Just people who can build decent, functioning non-broken software.
FYI, I graduated very recently with a B.S. in Computer Science, and my total comp (incl. bonuses) is slightly over $150,000. And, at my company, the typical workday is from 10 am to 6 pm. I am not over-worked, or under-paid.
It is clear that you've neither been in a position of hiring developers, nor have an idea of what good programming skill is.