On Seniority [WIP]

Thoughts on the challenge of defining seniority in engineering (and elsewhere), the incompleteness of proxies like years of experience and similar to gauge seniority. Seniority is ultimately about impact through technical knowledge, decision-making skills, and the ability to multiply impact.

Post main image

I've been confronted with having to come up with criteria as to what makes an engineer senior.

More often than not, this need arises from discussions on career goals and follows the path of simplifying a concept that is fluid and understood differently among people depending on their experience, type of company they work at and other factors.

This attempt at simplifying is understandable: we need some way of comparing, of benchmarking individual, to then level them into some hierarchy of responsibilities and, ideally, related compensation.

To some extent this hopeless attempt at objectivity is useful, perhaps mostly upon a recruiting or negotiation stage but might be too black and white for those looking to thoroughly advance in their seniority over their career.

This "objective" definition, many Times, is reflected as some arbitrary period of time, resource or metric, like the following (constraining the examples to software engineering though, the same can apply to countless professions).

Years of experience-or other of such metrics- are used as a proxy, with the expectation that one has gone through enough practical experience, has failed enough and learned from ones mistakes. More importantly, that one is able to recognize patterns and act upon those, faster and smarter than someone that hasn't build that capacity.

In reality, I've seen many engineers with several years of practical experience without the traits or behaviors expected from a senior


The expectation from a senior is impact.

Technical knowledge, decision and planning skills and multiplying impact behavior.