On the other hand, most tech companies aren't really that abusive, or they won't retain talent for super long (see the recent NYT hatchet job on Amazon as an example). Given that so many tech companies in the U.S. Are "at will" employment, there aren't many perceived benefits of a union that I can actually think of. The downside would obviously be that new employees would be forced to pay union dues whether or not they wanted to join. It seems to me that due to there being more employment opportunities for what I do than there are people, I've got the most power, not the employer. If that previous statement is true, I simply see no benefit of organizing into a union. Gone are the days (for the most part) where you slog it out for 30 years at the same employer and get a pension for life. On the flip side, the mean salary is MUCH higher, so if you're living below your means and save, you have the potential to end up better than your parent's generation with their pensions.
Just my opinion. I would never join a tech workers union unless I was at an abusive company. However, an abusive company isn't a place I'd stay at.
At-will employment allows the employer to terminate the employment relationship for any reason whatsoever (with a few exceptions which vary from state to state).
Unions and most other developed countries in the world use the doctrine of "Just-cause". Just cause limits termination of employment by the employer to non-nebulous things like non-performance, breaking the law, policy violations, and business conditions. The employee is still free to terminate the relationship at any time. This is a fair balance because the employer is in the position of strength and has the upper hand in most instances.
Unions do have issues. It would be better if the US harmonized its employment law with the rest of the developed world.
If some of the traditional uses for a union may not be needed in the software industry, it could still be very useful to charter a different type of union. Something like a very minimal union that simply had the goal of protecting against really big things like the recent scandal about cartel-style limiting of salaries. A union that - by it's own charter - only concerns itself with that kind of thing would be very low cost, and would serve to discourage that kind of abuse from happening in the first place.
Arguments for or against unions are useless without first defining what you mean by "union".
So maybe I'm saying that a union just for software engineers isn't enough. It is a half-measure that doesn't really address any of the real worker problems of our society.
On the other hand, isn't it the case that while trades have unions, professions have professional associations? Just as doctors, lawyers and accountants do, so do we: the IEEE and ACM come most readily to mind.
Professionals who are employees can also have unions in addition to the professional associations, though, in the US, this is rare in the private sector (common in the public sector, however.)