They have a terrible attitude.
Your writing is full of this; multiple developers don’t share one career not one attitude. Their careers; their attitudes.
Companies don’t promote hard-working and dedicated developers because they would need to pay them more.
As for keeping up with technology, I don’t know anyone who doesn’t do that. But a lot of new frameworks fizzle and die. Ask anyone who learned Silverlight only to see Microsoft make a “business decision” and abandon it. Times and money wasted.
And there are new fads in the industry I want nothing to do with. The methodologies are freaking stupid, the new nomenclature (stories, technical debt, refactoring) is just jerking off. TDD is idiotic and the fanaticism around it is scary.
I became a developer because I like solving problems. I don’t want a promotion into management because it would feel like being buried alive. Does that mean I’m a failure? No. I’m doing what I like.