Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Number of years are not a good measure of experience. You can spend 10 years in a huge fortune 500 that isn't doing anything innovative or interesting, or even engineering right. There are people who have spent 5 years at companies with their heads in the sand.

Also, must we have a key requirement of being a senior software engineer being mentoring other engineers? Just because I enjoy building good/stable systems and have done it a lot doesn't mean I want to hand-hold more junior engineers or start taking up management tasks. I see this so much at companies and it just reeks of the company trying to get me to become a part-time teacher for their own benefit -- though it's of course arguably what they're paying me to do.



By working with others, you've obviously benefited from learning from others. And even if you have spent your career alone in a dark office, the company has spent time paying you to learn from your mistakes. Why it is strange for the company to expect you to pass along anything and everything you've learned to other developers, junior or otherwise?

The stranger part is that you can't recognize that teaching other people makes the whole team better. Time spent fixing a mistake that someone on the team knew how to prevent, but was too selfish to share, is time wasted. When it comes to education, the rising tide really does raise all ships.


I absolutely recognize the fact that everyone learns from others and having a space to do that and people who are willing to invest in others is great -- my problem is that it's a requirement and not a differentiator.

Not every good engineer is a good teacher and not every good teacher is a good engineer. The two things are almost orthogonal in my opinion.

The kind of teaching you mention in the second paragraph is second nature to any good engineer. That's a base level realization, possibly even just a component of maturely working in a team as a human being. It shouldnt even be a differentiator between a 'junior' and 'senior' person to begin with, that's just hiring people who work well in teams/understand team dynamics.

To expand more on why i I dislike this requirement, I have seen companies use it only as a barrier to being promoted. "Oh yeah you're up for a promotion but you haven't lead a class on X technology yet". Having a policy like this also lets companies ignore the real problem: inadequate new hire training.

To sum up, the kind of teamwork you're suggesting is vital/good for companies, i agree. I disagree that it's a differentiator between juniors and seniors though.

Another argument is that value (being good at teaching/mentoring other engineers) is VERY valuable to the company, and the pay increase they're trying to offer for people who can do it (well, I assume) is inadequate.


This might be a bit off-topic, but after gaining some experience, teaching something to others is one of the best ways to reflect on the things you learned and gain new insights. You have to do it first, but teaching stuff will probably provide you with some deeper insights.


This is the one thing that I've seen so far that makes sense to me, as a benefit to the person who is the senior engineer (and not the company or the other engineers on the team).

Teaching something is absolutely a great way to deepen, solidify and imporove your knowledge.


> I disagree that it's a differentiator between juniors and seniors though.

Whole heartedly disagree. For myself, whether it's in the context of software engineering, sales, management, graphic design, etc, _the_ key differentiator outside of skill in weighing a mid-level or senior candidate is their ability to share their knowledge and inspire other members of their team through mentorship and knowledge transfer.

I think you're looking at this from a more selfish angle, with thinking that hiring someone who's good at "teaching" is a benefit only to the company because they get a free trainer.

It should also be noted, there is a big difference in "teaching" and mentoring. And it's also the human element of giving back...i guarantee when you were starting your career there was a more senior person who trained and mentored you.


I think we actually agree -- I've stated that I think it should be a differentiator, not a requirement. As in, if you have people with two similar levels of skill, then yes, it should push one person over. If you have one person with less skill, but who mentors more, I don't think that person should leapfrog someone with more skill but who mentors less (relative to the first person).

Let me more succintly state some issues I have with this:

- Who benefits? You moralized this as being "selfish", but as an employee of a company, you are selling your labor (and more importantly your time) to a company for a wage. It is in your best interest to carefully examine EVERY bit of value you hand over for the wage you receive. No one else in the transaction is going to do that for you -- benefit to the company and benefit to coworkers is great, but you need to judge that against the wage you're receiving.

- Where is the pay commensurate to the increase in efficiency/intelligence in the company? I don't see it in the charts on the original link, the difference is too marginal, for the benfit you're providing the company. If that's the case, senior engineers are just being taken advantage of.

Again, I'm not denying that there are more senior people who trained and mentored me. There absolutely have been, I've had some of the best managers, mentors, and coworkers anyone could ask for. I don't think the fact that they mentored me should influence whether they get their next promotion -- sure it might be good color commentary, or a differentiator if there's a tie when the decision is being made, but it shouldn't be on the rubric. This is how average engineers get to be "senior" whatevers and "architects" -- by putting in time and playing the rubric instead of bettering their skills.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: