Where unions get it wrong is they protect bad workers and under their system the gap in pay between the most skilled workers and the least skilled workers is not wide enough. This encourages workers to do the easiest jobs because the pay is basically the same.
100% correct. Whats worse is that pay is based almost exclusively on seniority no matter how good or bad a given worker is. I've commented before that if the company had simply focused on eliminating the bad employees, the remaining workers are productive enough to do the job and get paid what they're really worth.
The union priority unfortunately is to maximize the number of workers, not to optimize pay. They get union dues based on how many people are working, so its in the unions interest to negotiate more workers at lower pay rates.
Management is SUPPOSED to focus on operating a profitable airline. Instead they focus on grabbing market share at almost any cost. This has been their failure for over 20 years, and it hasn't changed.