Live data from Hacker News

Ask HN: When are you considered a “senior” programmer?

news.ycombinator.com

31–40 of 162 posts

Re: Ask HN: When are you considered a “senior” programmer?

#32
I work at a major games company. For us, a "senior" is someone who can, on their own, design, implement, document and maintain a feature. An "intermediate" is someone who can do the above but with mentor help from a senior.

Above that, it depends what you want to do. If you fancy managing people, you can be a team/tech lead, or if you don't, then there is the title of "expert"(only a handful of programmers who worked here 10+ years have those).

Re: Ask HN: When are you considered a “senior” programmer?

#35
post #24
post #13

I'm also agreeing with leadership and mentoring. Be able to make unbiased technical decisions, troubleshoot systems / apps and get up to speed on new projets independently fairly fast. Have confidence in what you do and don't ask about everything. A solid general code understanding is also needed in my opinion. This includes things like using documentation over googling everything. If I pair with a senior and he type…

> Have confidence in what you do... Heed your own advice. You might not like the current system of hierarchy, that's fine. And change it when/if you get the chance. But in the meantime, don't abstain from senior positions (and salaries) that others get just because you don't like a concept. Play inside the system until you can change it.

> But in the meantime, don't abstain from senior positions (and salaries) that others get just because you don't like a concept. Play inside the system until you can change it.

Oh yeah, I don't. I am also applying on "senior" positions, but this is just my personal opinion on when I would consider someone / myself truly senior. Paycheck and job description aside.

Re: Ask HN: When are you considered a “senior” programmer?

#36
post #20

Earlier quoted context omitted.

I like your definition because it is timeless and rings true. The same definition will apply in 10 or 20 years time when there are new fads in development processes, programming languages etc. I would add that the senior engineer has a mature approach to selecting/recommending tools and frameworks, based on what is most valuable for the business and the team, rather than was is cool, good for their career or whatever…

"selecting/recommending tools and frameworks, based on what is most valuable for the business and the team" This is so true, I would say it extends to style amongst other things also. Having worked seniors on teams who had to seemingly make problems "worthy" of their skill and time served. For example working on a large OO Monoliths where a senior started to add lots of "clever" functional code. When I started the qu…

> For example working on a large OO Monoliths where a senior started to add lots of "clever" functional code.

Adding a simplier design with functional code is a good thing. If there is a mid level developer that can't follow the current state of the art, than he is not a good mid level developers. Also "good" junior developers have mostly zero problems in understanding more functional code. I mean you don't need to understand Applicative Functors to use map/flatMap.

I mean there is a line which you should not cross too fast when introducing functional stuff, however most people just don't even try to understand the simple stuff even that it is way more simple than most while/for loops.

Re: Ask HN: When are you considered a “senior” programmer?

#37
post #20

Earlier quoted context omitted.

I like your definition because it is timeless and rings true. The same definition will apply in 10 or 20 years time when there are new fads in development processes, programming languages etc. I would add that the senior engineer has a mature approach to selecting/recommending tools and frameworks, based on what is most valuable for the business and the team, rather than was is cool, good for their career or whatever…

"selecting/recommending tools and frameworks, based on what is most valuable for the business and the team" This is so true, I would say it extends to style amongst other things also. Having worked seniors on teams who had to seemingly make problems "worthy" of their skill and time served. For example working on a large OO Monoliths where a senior started to add lots of "clever" functional code. When I started the qu…

If you're working on code that is logically shaped like a transformation or a stream, functional is so far superior to an OO approach it's not even funny. One person can accomplish what 10 people would struggle in OO to do if the solution is structured properly, because of the composability and modular testability benefits.

Re: Ask HN: When are you considered a “senior” programmer?

#38
Well usually companies have their own view on seniority, and it could include how many years you have been there, but for what its worth for me a senior developer is a person who has experience with all stages of application development, which should imply that she/he can: - design and understand client/server architecture, - write code using best practices that is clean and maintainable, - knows database design and programming - understands design patterns and knows how to not abuse them, - knows how to deploy application and has experience with CI. - knows how to write proper unit test.

To sum it up I will use .NET as an example, in my eyes when someone says I am a senior .NET developer I assume that she/he has: - used UMLs, - knows how to write proper OOP and understands SOLID, - can use MS SQL and some kind of ORM, - uses some of the testing frameworks (e.g. NUnit), - knows how to deploy application whether on IIS, or install it with ClickOnce for example. - know how to handle source versioning (TFS or whatever is your poison)

I probably missed a few things, but that's about it for me. If a senor doesn't have these skills I assume first that she/he has great knowledge of company business which would make her/him a valuable asset, or that she/he got lucky, or it's a crappy company :)

Re: Ask HN: When are you considered a “senior” programmer?

#39

When you are valuable and ask for a raise but they cannot give the amount expected because it's already Q4 so they give you the senior title instead. It can happen even with two years of experience.

> When you are valuable and ask for a raise but they cannot give the amount expected because it's already Q4 so they give you the senior title instead.

A misapplied case of carrot and stick; using the carrot to beat you down is not how it works!

Re: Ask HN: When are you considered a “senior” programmer?

#40

Well usually companies have their own view on seniority, and it could include how many years you have been there, but for what its worth for me a senior developer is a person who has experience with all stages of application development, which should imply that she/he can: - design and understand client/server architecture, - write code using best practices that is clean and maintainable, - knows database design and…

>- used UMLs

Like unified modeling language?

Post reply on HN