Pretty much. We don't have codified up-or-out rules. I don't see many truly terminal Senior Devs, but have seen people "hang out" in that role for many years. Same thing for Lead Dev, which is one title more senior.
Assoc to Senior or Lead - being successful at normal tasks over time gets you there without much active career management.
Senior to Principal - you'll have to seek out interesting work, prove capable of working across product/business or technical boundaries, and start interacting with leaders outside you team.
Senior Principal - all of above, plus interacting regularly with VP, leaders in Product Management group, capable of high level design/analysis, trusted by peers and leaders across your organization. High level of ability mentoring and leading.
Cool, that lines up with my recent experience at a "mid tech", a Fintech that will IPO this year or next. I interviewed for Staff, they downleveled me to Lead, I quit in 6 months. There were people ahead of me with half my experience...but those folks had basically never worked anywhere else.
Funny to compare that with my previous experience at an IIOT startup, where I was employee ~#30 and the third or fourth engineer doing cloud stuff. Started at Staff, left at Senior Staff after two years but would have been Principal if I stayed another 2-3 months. The gap is big!
In such cases is it still considered the terminal title, the one you either earn or are pushed out for not earning, but are not required to go beyond?