I've worked at 20k+ employee companies where these are split into entire separate decision-making structures. Salaries are set by HR and approved far up the chain, and hiring decisions are made by people who do not share supervisors until you're a level below the CEO.
When you're hiring a "Programmer II" in a company like that, the salary is not going to change. You might be able to negotiate work-from-home a day or two a week, or an extra week of vacation or something, but you're simply not going to make more than the upper bound of that schedule, and being at the upper bound of that schedule will negatively impact raises until you get promoted.
The CEO or COO or CIO is not going to approve a $100k salary for a Programmer II when the band is $60-75k. It just won't happen.
On an extremely related note, there is zero ambition and very little technical skill at that company. The vast majority of folks with skill and ambition leave after 2-3 years.
It means exactly that it is so for almost all cases. There are always going to be exceptions, but those are just that: exceptions. There's a reason they're called "exceptions." Edit: the people who set compensation are very rarely the people that decide whether to hire you. The latter may communicate the salary HR dictates to them, but they almost never have negotiation power within their own employers' structure.
Most employers will happily tell you that this is the case. That does not mean that it is so. If you rate it, those doors will, at many companies, open. But you have to rate doing something that is Not Normal, and you have to be able to communicate why you rate having the people dealing with your hiring stick their neck out and do something that is Not Normal. This is hard. Few people (not just engineers) can do that. But it can be done.