That's nonsense. What the union negotiates for depends on what the union members vote for, so you don't have to put things like "can't promote people to management" into the contract if you don't want it.
A example of the kinds of things a union could organize for programmers if one existed:
- Limits on and payment for overtime, after-hours and weekend work.
- Office conditions. Usually that isn't an issue, but if it is and your choices are "deal with it" or "quit", you may want a third option.
- Hiring standards that prevent a true idiot from ever working at the company.
- And yes, minimum pay agreements.