DEV Community

Discussion on: What's a senior dev anyway?

Collapse
 
invertedspear profile image
Michael Clark

Kind of my opinion on the matter:

Jr: Requires tutelage. Needs a lot of pair programming or very specific specs. At the tail-end of "junior" they can work alone, but still rely heavily on code reviews to get it right. Has minimal "institutional knowledge" Focused on a single tier (front/middle/back).

Mid: Independent worker, can take nebulous requirements and still make something useful. Works within the existing architecture. Knows a fair amount about the company or industry. Can work with non-devs when asked for information. Expert in one tier, can work in others, has some DB experience

Sr: Capable of teaching. Expands on existing architecture. Has a great deal of company and/or industry knowledge. Works well with product/project managers to help drive the product. Works well in the full stack, including the DB

Principal/Architect: Does most of their work outside of an IDE, but can still rip through a story on occasion.

Collapse
 
lorenzojkrl profile image
Lorenzo Zarantonello

Thanks for your explanation!
It is very clear and I mostly second it.

I can see you add different parts of the stack as a prerequisite to a Principal/Architect position. But that isn't the only possibility for a developer.

I think a developer could be a senior despite having limited knowledge of "the other part of the stack". Especially if the person is not interested in other roles.
Clearly, some knowledge of "the other part of the stack" is very important.

Furthermore, if someone is passionate enough, exploring the other side comes naturally, at some point. My opinion of course.

Collapse
 
invertedspear profile image
Michael Clark

You're right about the passion aspect. And honestly if their passion drives them to naturally exploring all aspects, then wouldn't that same kind of passion be what brings them to a senior level? It's not so much boxes to tick as that growth mindset that elevates people beyond that mid-level role. Every company is different and, frankly, so is every manager. But someone who is an expert in one tier, knowledgable in the others, and radiates desire to grow and help other's grow, they're going to be a Sr in pretty much any company that has such a title.

Thread Thread
 
lorenzojkrl profile image
Lorenzo Zarantonello

Beautifully outlined:)

Collapse
 
jankapunkt profile image
Jan Küster • Edited

I agree with all points but the "capable" of teaching. Many seniors do teaching but not all are capable of it to an extend of a teacher. Teaching is a disciple in itself and being a good teacher requires years of teaching practice.

Collapse
 
lorenzojkrl profile image
Lorenzo Zarantonello

This is also a good point!
I second that teaching/mentoring/etc is not necessarily a characteristic of a senior dev.
But it makes the developer more valuable in the right team and circumstances.