Actually, many of us are in 'right to work' states which strangely means that you can, in fact, be fired for "almost" any bullcrap reason. There are a few things that you can't be fired for, but many more which are acceptable reasons for termination.
The problem with having a large pilot group and doing away with seniority progression is the 'metric'.
How do you determine if someone's experience is worthy over anothers for upgrade?
Experience? Well, one FO might have 1500 hours in a Seneca and 1500 hours in a CRJ, but another FO might have 1500 hours in a KC-135 and 1500 hours in the CRJ.
Reliability? One person may have no sick calls (but then constantly fly sick in order to not wreck his sick leave metric), but another may have several but refuses to fly with dangerously blocked sinuses.
On-time statistics? The best on-time statistics are when you don't bother with non-rev's, jumpseaters and give unrealistic out/off times to operations. A pilot based in BOS during winter is going to have a different statistic than one based in PHX.
Completion rates? The pilot with the best completion rate may be flying broken aircraft whereas the pilot with the worst completion rate may be taking the broken aircraft and calling maintenance because the other pilot didn't write up an overtemping engine.
Merit? Do you really want to have to meet your chief pilot at his car in the employee parking lot and say, "Great day sir! Hey, I think your memo about OpSpecs was fantastic...lemme get the door... Coffee? You like Coffee? I'm buyin'!" on the walk to the pilot lounge?
How do we realistically determine who is qualified for upgrade to larger aircraft, better schedules and captain upgrade?