I was in IAMAW on a government contract for about 6 years, and how good the union was depended on who we elected to leadership. We didn't have any initiations or harrasment. We had a local president who was awesome, and the company grudgingly liked him. We had a coworker who wasn't performing and was being a pain in the butt to us and management. He took her aside and told her to shape up or the union couldn't defend her. She didn't shape up, and the company did the paperwork correctly and fired her. None of us shed a tear.
Then he retired from the presidency because it was a lot of work. Soon after the company lost the contract to another company that bid it at a loss to get their foot in the door. The new company laid off half the shop and the new president was too stupid to do anything other than concede. I lost my job.
I'd worked nights my entire time at the company, and the union meetings were always held during my shift, so I didn't participate much. As much as I blame the idiot we had as president, what did I do to make the union better? Nothing. Fortunately I landed on my feet and went into civil service.