In an economy with a healthy labor system, someone skilled in a certain field (say, software engineering) can just get a new (sufficiently lucrative) job if they lose the one they have, so there's no _necessary_ tension between those two.
Most people don't find software development "interesting" at all. And let's face it, the kind that pays well is usually rather boring, while the kind that is interesting usually doesn't pay very well, or at all in the case of open source.
In an economy with a healthy labor system, someone skilled in a certain field (say, software engineering) can just get a new (sufficiently lucrative) job if they lose the one they have, so there's no _necessary_ tension between those two.