But the poster's employer has probably applied for a green card. Since the poster is Indian, that is a 10+ years process (4 for China and 1 for everyone else). If the poster changes employer (or accepts a promotion), the 10 year clock is reset to 0.
So for all practical purposes, the poster is locked to the employer. He is also locked at the same level and pay. Employers love this since they get an experienced person locked in at the same pay for a decade or more. Obviously this reduces wages for everyone.
> If the poster changes employer (or accepts a promotion), the 10 year clock is reset to 0.
This couldn't be more wrong. there is this little thing known as AC21 clause where you can change employers after some part of your green card has been pending for more than 6 months. This doesn't reset the green card clock at all if you're waiting to be current, but you do have to do the first couple phases again with the new employer (which are really quick)
I have seen many people I know use this to change employer with no problem. If someone under green card is unable to change employer, chances are they just can't find a better job.
Also it is wrong that you can't accept a promotion. For example going from software engineer to senior software engineer is fine. As long as the new position is at least 51% similar to the previous one you are fine, and it is easy to prove on paper with a little bit of magic with your lawyers.
Also wrong that you are locked at the same pay... Seriously I have never heard this yet, where did you get that? I know plenty of people (and myself included) who while waiting for the green card got multiple raises with no problem.
Again you are technically right. But in practice this is of no help.
The AC21 allows you to change employer when you have filed the I-485. That is step 3 of the 4-step green card process. One can't file the I-485 until the "priority date" is current. That is not an issue if you are from any country other than India, China, or Philippines. Else you are looking at a delay of 4 to 11 years. So as I said, not practical for the poster who is from India.
Technically it is also possible to accept "normal career progression" changes in employment, i.e., promotions and raises, as you correctly pointed out. However in practice, what constitutes as "normal" is subjective, completely at the discretion of a visa officer. For a long time, this was very easy and a formality. In the last 1-2 years, the Visa Officers have become anal about this. Cases are being audited for something simple like Data Scientist using Python to Data Scientist using R (actual anecdote in my company).
Also visa officers are going back to approved cases from several years ago and retroactively denying them on some technicality like the above. So even if you know cases that were easily approved in the past, they can be suddenly denied and the employee can retroactively become "undocumented" for the past several years (again actual anecdote).
But the poster's employer has probably applied for a green card. Since the poster is Indian, that is a 10+ years process (4 for China and 1 for everyone else). If the poster changes employer (or accepts a promotion), the 10 year clock is reset to 0.
So for all practical purposes, the poster is locked to the employer. He is also locked at the same level and pay. Employers love this since they get an experienced person locked in at the same pay for a decade or more. Obviously this reduces wages for everyone.