It's not just engineers this applies to. Sure, if everyone makes $400k + benefits and profit share with good work-life balance and such, I guess that might fly. But most companies have customer support, IT, and other cost centers where you have entry-level employees who need to progress, and that necessarily means increasing wages over time to retain and advance good employees.
Besides, junior developers / interns are supposed to do what exactly if there is no increasing revenue at a company and no one leaves above them? Just hang out until someone quits even though they're not going to?
Retraining a junior developer is costly. Advancing them is as well, but less costly than constantly cycling in new junior developers and interns to do the HTML/CSS + ETL script jobs no one likes doing.
Growth is natural and important towards keeping your staff happy and moving up.
Both Basecamp and Valve were growing massively, so I don't think those are good examples.