That sounds like exactly the conditions that an industry-wide unionization would fix. But that would be hard, because its so easy for a software shop to up and move. Unlike heavy industry in the 'age of unions', which had large fixed plants with heavy capital investment. So unionizing geographically, one business or industry at a time, was workable.