I think that a semi-successful union would hamper the success of smaller companies by demanding that they hire only certified, highly-paid engineers. These engineers can only work a certain number of hours, use certain languages, etc. (Assuming such conditions can be enforced in the first place, with so many available employers in the market).
These conditions seem to me difficult for many organizations to accommodate. Thus, my thinking is that a semi-successful union would trigger software boot camps like App Academy to attempt to "break" the union by increasing available supply. The union would then fail. Collusion between Apple, Google, and other companies to hold down salaries only succeeds if there is no "spoiler". Facebook turned out to be a spoiler, and they benefitted greatly from it.