Why? Because they would prefer to keep running on the neverending promotion treadmill? I think a LOT of engineers would rather stay engineers if they could keep getting reasonable raises. The problem is that almost all companies make it impossible to keep getting raises past a certain point _without_ getting promoted.