1. You're in the wrong location and not willing to move to a place where you would be making more money.

  2. You are in a dead-end job or a career with a middle class salary ceiling. In other words, you are in a career where the high end salaries are not negotiable.

  3. You are not willing to either start your own business or to develop the skills required to be hired by big corporations that pay above market average.

You can apply these three points to basically any profession and see that most people will fall under some of them. Let's say you are a developer:

  1. If you are not living in a major tech hub, you are out of the game. There are some exceptions, but remote work is overrated.

  2. Academia is a classic example of a career in IT where salaries are not negotiable. You can't job hop between universities every two years.

  3. Most developers don't want to take risks and start their own companies. They also don't want to develop the algorithm skills required in Big Tech interviews because these skills have a high maintance cost and they are completely useless for interviews with small startups or mid-sized companies.