I'm about three weeks into a new job as a Senior Software Engineer.

I interviewed for the senior position and I got it; however, it doesn't feel right. I'm the only senior engineer on the team (other than the lead), but I have the least experience of everyone on the team. What's more, I can tell from pull requests and the overall codebase that my teammates are more knowledgeable and organized than I am. I'm not talking about just general unfamiliarity with the product that's normal when getting ramped up at a new job; they're significantly better programmers than I am.

The senior position comes with some additional responsibilities like leading coding standard/style guide discussions and the like, but my non-senior teammates have stronger and more well-reasoned opinions than I do on many of the topics of discussion. And I was hired because supposedly the team is new to this particular tech stack that I have more experience with, and I'm supposed to pair with them and help them, but it seems like they're better with the technology than I am.

I know it's not my fault, but I almost feel guilty for taking a senior role when I feel like one of my teammates should have been promoted instead. I think I'm a good fit at the company and on this team, but I feel like I should have the same title as my coworkers and not in a senior position.

Is this something I should discuss with my manager to ease my conscience? Or will it instead reflect poorly on my confidence or make me look like I bs'd my way through the interviews?

  • 10
    Titles are sometimes used to justify salary. Maybe you required more $$$ in your offer than a non-Senior position could handle. Oct 25 '16 at 17:08
  • That's a good point; however, I applied for the senior title before salary was discussed. I thought I was more ready as I was sort of in a senior role at my previous job, but the company was not a tech company, so their definition of Senior Software Engineer had much lower expectations than this job.
    – M Miller
    Oct 25 '16 at 17:13
  • 3
    Given the nature of your question, I do hope that this isn't your real name, lest coworkers look you up at some point.
    – Chris E
    Oct 25 '16 at 17:34
  • 1
    See Dunning-Kruger effect. Competent people underestimate their abilities and incompetent people overestimate their abilities. Chances are you are much sharper than you give yourself credit to be. Oct 25 '16 at 18:18
  • 3
    Maybe you should be taking to this guy: workplace.stackexchange.com/questions/78428/… Oct 25 '16 at 20:22

I have been in a situation similar to what you have described, and would like to offer some insights which would hopefully help.

  • Appearing to be "better" programmers, better organized naturally flows from familiarity with the project and the workplace.

    It is certainly possible your "juniors" are better than you. However, when you don't have to spend half a day figuring out the correct arguments to pass to an undocumented build script, you can do things which make you look cool. Give yourself enough time to get familiar with the project (and then some more) and then decide if you are "senior" enough or not.

I was once a "senior" colleague to someone 5 years my junior. In the first few months, I too would feel overwhelmed by all the cool stuff he used to do which would take me a whole day to figure out. As time passed and I got less uncertain about my understanding of the project, I see "cooler" way of doing things.

To ease your conscience:

Time heals everything, give time enough time.

You applied for a senior role and got it because deep down you know you are capable of it and plenty of people agreed to it. Even if you feel low on confidence (as is common at the start of a new job), things should begin to improve once you settle down, so hang in there for a while longer.

  • Talk to your manager about your career.

If your manager was one of the decision makers in hiring you (as is almost always the case), telling him you may not be good enough makes him feel like an idiot (besides having other problems mentioned in your question). Hence, rather than talking about how you feel "inferior" compared to your juniors, focus your discussion on what you can do to perform the senior role expected of you 1 .

This won't look bad on your confidence not would it make your manager question your interview performance. You would instead come across as a more positive person.

1 On a somewhat metaish note, this statement is quite similar to the explanation used with one of the close reasons on this site.

  • This kinda just seems like a long message that doesn't take a side
    – user49733
    Oct 25 '16 at 20:17

The Senior title and what it stands for varies from company to company.

It can mean one, some or all of the following:

  • Time in field
  • Mastery/experience of your position
  • Other, such as the ability to take initiative, be an example etc

I'm the lead sw developer at my company and I strive to push my senior developers to be well rounded. For example, being in the field a long time and good at programming, but terrible at troubleshooting may still warrant a Senior title, but they need to work on being a better troubleshooter. Not every person excels at the same things that others do.

You may feel that you have large shoes to fill, and that's fine. Your job as a Senior dev/engineer is to troubleshoot and solve the issue in a manner that would be a great example to others -- which seems what you're doing.


This is tough.

They hired you. Unless you lied you did nothing wrong.

If you bring it up with your boss now it could go poorly.

If your coworkers later complain it could go poorly.

I think don't go to you boss and just work hard.

When you pair just ask if they have any questions. If they (hopefully) say no then move on. Hopefully you also have programming tasks. If you have no programming tasks then you need to go to your boss now.


Do not bring this up with your boss or co-workers. There is nothing to be gained from doing so. If you fail to live up to their expectations they will let you know. To me, being a "senior" developer has less to do with specific technical knowledge than it does with being able to adapt to unfamiliar challenges. Three weeks isn't very long. Throw yourself into the job and be helpful to your co-workers, but personal issues such as self-worth should always be kept outside of the office.


I agree for the most part with Paparazzi. How is this an issue? You interviewed for the position, they hired you. Considering how in-depth the average software engineer interview is, they should be able to decide whether you're qualified or not. Sounds like they feel you're qualified.

On the other hand, playing it safe is safe.

On the other other hand, if you are working as a position that is not pushing slightly out of your comfort zone, you didn't reach high enough. A big part of any career is pushing yourself and learning.

In conclusion, sounds like you did everything right and this is fine.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .