https://www.yieldcode.blog/post/the-curse-of-the-senior-engineer/?utm_source=tldrnewsletter

Second reason companies have titles is to allow for progression and evaluation.

becoming senior requires that you mentor someone less experienced than you.

Senior engineer, on the other hand, might improve something in system as he/she works on the assigned task. A staff engineer is someone who improves something that affects not only his team, but other teams as well. Examples could be things like introducing a new monitoring tool that is adopted by multiple teams; improving some workflow; etc.

ICs are people who are doing their own work. They close tasks, fix bugs, carry team duties like on-call schedules. They might improve the product or the code base, bring their ideas, mentor less experienced engineers, voice concerns and propose resolutions. But their scope is, mainly, limited to the individual/team level. They do not have any cross team or organization level impact.

some told me that I’m overqualified for Senior roles, but under qualified for Leadership positions.

Remember, FAANG or MANGA, whatever the acronym right now is—dictate the way the industry operates. If they have titles and career ladder, other hype driven, VC funded startups will follow. The only way to exit the game, is to find a company that is not like them. A company that does not care about titles or have performance review rituals. It’s harder, but companies like this do exist. This is what I did.