Meanwhile this criticism is inversely correlated with the utility of a union. If you're in a market where the company is hiring unskilled fungible peons, and you try to unionize, they can just let the union walk out and hire a bunch of different unskilled fungible peons. So it doesn't work for e.g. Amazon warehouse workers.
For a strike to mean anything, the company has to have high turnover costs in replacing employees or a scarcity of skilled labor. But then that's true of the individual employees as well. So then it isn't needed for e.g. programmers to be able to negotiate beneficial working conditions, and you're paying the overhead for what you could get without it.
What does that leave for where the union is doing something good?
there's no way Amazon could come close to functioning if their warehouse workers unionized and walked out. it would take them years to find enough people to fully staff their warehouses again and it'd cost them billions of dollars
Why would it take years to find more unskilled labor? They could literally park a bus in front of the unemployment office in the morning, load people onto it and be running again by the end of the day.
If a company of 100 people fires a worker, they lose 1% of productivity. If a worker loses their job, they lose 100% of income. This fundamental asymmetry makes me support unions.
On top of that, the corporation can afford paying to shift people's opinions.