I've always thought that caring is the most precious resource in software development. You can pay people to show up to an office, you can pay people to write code, but you simply cannot pay people to care. It takes some special confluence of factors that money can't buy. And great software is only made by people that care. This is the real "10x" factor that most people and organizations don't have.
necessary but insufficient, I think. if your salary doubled tomorrow but without a change in responsibilities or agency at work, would that move the needle? I think you need other things in addition to the pay, like recognition for efforts and outcomes