As an industry we need to stop perpetuating this idea that everyone is fully mobile and software engineers are some mythical creature that isn't also shackled to the same constraints the rest of the labor force is. It's a job and a lot of people are dependent on a steady income stream. Part of that is putting up with the least worst of the options they have reasonably available to them, or sometimes taking up worse options just because it balances other aspects out. Ultimately during certain times you may have more or less leverage to put up with or reject crap practices. SWEs tend to have a lot more leeway than say a retail worker of course so we can be a bit more demanding but we can't just say crud off, I don't deal with any BS, even in the best of times. Higher salaries give you some negotiation room as well as you can lower your TC expectations in terms of negotiating better working environments (i.e. taking lower rates but demanding things like less pressured schedules, make autonomy, etc.) and as the extreme sof the markets are high enough, even taking TC hits can still let you live comfortably (this is to contrast many other professions who don't have this flexibility).
Unless you've lived modestly and invested significantly or started some side venture to become financially independent of labor based income, you're ultimately giving up some degree of agency to employers. We like to pretend this isn't the case but it is the case for most people, even highly paid labor.