Was customer support and pursuing degree, now senior engineer, span of 5 years. For any internal promotion we have a percentage cap on salary increase, TC was 45k as pleb, market rate for position offered was 90k at the time (4+ years ago)... Still not at original market rate for position and now moved from engineer lll to engineer lV (4 YOE as eng).
Do other companies do this? It seems like a horrible policy to keep internal talent.
Companies get away with this kind of bs because people are inertial and management is myopic.
Your best interest is to find someone who will pay you what you're worth, increase your worth while you're there, and then transfer again when they once again fail to keep up comp with your value.
It's dumb, but that's just how the game works.
Compounded over a career, transferring every 3-5 years makes massive gains in earnings over being loyal.