18

Background: Junior Software Developer working for 3 months at a new company, been paired up with a Senior Developer (4+ years) on an on going User Story for about 2 months now

Issue: Contrary to struggling, on this story, I feel like I am doing more work and the more complicated work than the senior developer has been doing, and am usually handed the more difficult tasks when we talk about the requirements. I don't feel like I am getting adequate support from this senior dev, but have been getting help from other developers so have made progress. I find this strange, as the senior developer is usually the one who leads the task - although we are both new to this framework I have never worked FE before, whereas this senior has. I am unsure whether this is a situation where I should just knuckle down and finish the work, and risk not getting the credit for the work I have put in, or whether this is something I should bring up with him or someone else?

If this sounds like more of a complaint, that's because it may well be. I am a little unhappy with the situation at the minute and an unsure what the solution is. Ideally, this task would be done tomorrow and I will be on the next sprint(s) with the team delivering where my contribution is obvious.

10
  • 2
    Is his/hers title "Senior" and is it a part of his/hers job to support you?
    – Jonast92
    Commented Jan 12, 2021 at 15:30
  • 4
    Sounds like you are well in your way to a promotion, either internally or externally.
    – angarg12
    Commented Jan 13, 2021 at 10:46
  • 7
    I feel like I am doing more work and the more complicated work than the senior developer has been doing As junior I tended to think I was doing the important work of development while the tech lead was off in meetings all of the time. Then as I grew older I realised those meetings were more important than I first thought. ;)
    – mjwills
    Commented Jan 13, 2021 at 23:36
  • 3
    and risk not getting the credit for the work I have put in If the two options are "word hard and maybe not get the credit" and "work less and maybe get caught out" then, as a general rule, the former is better.
    – mjwills
    Commented Jan 13, 2021 at 23:37
  • 3
    Is FE front end? Full employment?
    – ian
    Commented Jan 14, 2021 at 4:10

7 Answers 7

94

Let me restate things a little bit and provide some interpretations:

  • Difficult tasks are being assigned to you. That means people think you can do it.
  • As a junior developer, it seems like you make significant contributions to the project. You can be proud of that.
  • There is lack of support from your senior dev, but other team members fill in the gap. Maybe the senior is not that kind of person who likes to instruct others, but you are part of a well-working team with people who help each other.

I would say you are on the right track.

As to whether you will be adequately credited for your work, my advice is to invest now and do the best job you can. In a good work environment, people will notice and appreciate your effort. If they repeatedly do not, then come back and deal with that issue.

4
  • 27
    You even have a little advantage: In the end are you still a junior. If you mess up there will be a little "Yeah, but he's junior, what can you expect, why didnt we check his work properly?"
    – Martijn
    Commented Jan 13, 2021 at 8:32
  • 6
    And just to add to this, if you're having the more difficult task delegated to you and being expected to make it happen on your own, you're very likely being prepared for seniority. Seniority is usually defined by the level of technical oversight you need, and the only way to check whether you can handle it is to give you the opportunity.
    – Graham
    Commented Jan 13, 2021 at 12:24
  • 4
    It is worth adding that even if you do not get recognition from the people who are currently your senior, having recognition from people who are currently your peers is in some cases more valuable, since these people may be able to open doors for you in the future.
    – James_pic
    Commented Jan 13, 2021 at 13:01
  • 4
    Just a quick note: "Difficult tasks are being assigned to you. That means people think you can do it." That's not necesarilly true, at least not in all cases. Difficult tasks might just be asigned to OP simplye because no one else wants to do them, or the Senior knows he can't do them himself, and if it fails wants to delegate responsibility to/blame someone else. It might sound a bit harsh, but it's still a possibility
    – Josh Part
    Commented Jan 13, 2021 at 18:45
65

Senior engineers usually have a lot of "off book" work that isn't very visible, even less visible if you are working remotely and can't see the foot traffic to their desk. You see a tiny sliver of it when you get stuck and ask for help, but you don't see the half hour of research he does before getting back to you, or the three other people who required a similar level of help, or the reviews, or the design work, or getting the build green so everyone isn't blocked, and often a smattering of administrative work.

In other words, a senior engineer's productivity is frequently measured by keeping team members unstuck, more than his or her individual output. It's not uncommon to go an entire day without having any time at all for my "official" coding task.

I remember having similar feelings about credit, especially when the senior engineer is handling a lot of the communication. Credit doesn't work the same as in school. The credit often goes to the team in larger contexts, but trust me, people closer to you know what you are contributing.

As far as support, I also don't see it as that unusual that you are primarily getting it from other team members. What would be a problem is if you are asking your senior engineer for specific help and not getting it. If you feel there is a specific question or task that he should be handling, be proactive and ask. If you feel you are still not getting what you need, bring it up with your manager.

Or the guy could be a flake. That's certainly a possibility, but I think it's more likely there are things going on you don't have the perspective to see yet.

4
  • 2
    I've definitely filled this role. A senior engineer is often the pipeline for work between customers/sales/management/QA and the rest of the team. The rest of the team (mostly) shouldn't have to talk to all those people - they just get given (hopefully) well-defined and well-bounded changes, and they can get on with it. Your team don't have to deal with the knife-fight between four different customer reps over what the workflow should look like, or turn vague requests from sales into a well-defined change that can be implemented and tested.
    – Graham
    Commented Jan 13, 2021 at 12:30
  • 6
    This. Sooo much of my time is spent doing linux server administration, dev ops, planning meetings, design meetings, vendor meetings, documenting procedure, context switching when the emergency alarm goes off, etc. I'm sure experiences vary a great deal, but for me it is definitely true that every year of my career I spend less time coding than the year before. Commented Jan 13, 2021 at 12:30
  • 5
    It's not too far from the truth to say that the less your team can see what you're doing for them, the better you're doing your job to insulate them from all this. :)
    – Graham
    Commented Jan 13, 2021 at 12:34
  • 4
    This answer a million times. I'm in OP's senior's position. I am the last stop for really hard, almost intractable problems that take lots of complex troubleshooting and design wisdom. So my junior dev is getting the bulk of the quantitative workload while I am quietly, endlessly banging my head on harder problems that move slowly and are less visible, as well as spending considerable unrecognized time curating tasks for him (they don't grow on trees). Also putting out production fires, keeping our pipelines flowing and planning. Commented Jan 13, 2021 at 20:53
10

There are lots of things that could be happening. Here are some to consider:

  • Maybe your estimation of what is more difficult is just straight-up wrong

  • Maybe the task itself is 'simple' but you don't yet have the necessary business knowledge of all the other systems/processes it has to feed into

  • Maybe the Dev has lots of other important work that needs doing so they're doing less important work on your specific project but much more demanding work elsewhere

  • Maybe they are trying to actively develop you. Imagine they start you off with the easy stuff, and as long as you keep handling the work they gradually give you more and more complex/difficult tasks to develop your skills & experience. At a certain point, you'll have conquered all the easy tasks on any project so they'll have to give you the harder/hardest ones in order to keep you progressing, leaving them with just the simpler ones

I would check in with them on whether you're doing a good job, and as long as they say that you are then keep focusing on yourself, do your best work and welcome any opportunity to advance the level of what you do.

2
  • 5
    +1 esp for "what is more difficult" and "other work". Junior engineers are often bad at appreciating the value of clarifying requirements, communication with management, system configuration, etc. Maybe you're thinking you're writing more code - almost invariably, coding is the easier part of a project.
    – Sam
    Commented Jan 12, 2021 at 23:35
  • 4
    +1 for actively develop. I'm in a senior dev position and do exactly that, give some hard tasks to juniors. Reason is my manager is actively looking for evidence to promote the junior. There are a handful of other reasons I do it, including to give me research time on other tasks, to manage JIRA, roadmap, and because I've spent my years of youth hitting the hard coding tasks and instead sit now in a more architectural role to make sure it works
    – Chris
    Commented Jan 13, 2021 at 3:56
7

You may be looking at this the wrong way.

You are unlikely to become a better developer by staying within your comfort zone. You should, assuming you want to progress in your craft and your career, grab these opportunities with both hands and relish the chance to tackle bigger and more challenging problems. You will learn and grow much more quickly that way.

The fact you are getting through this work without extensive hand-holding is a testament to your work ethic and ability. You should be proud of that - and hopefully it gives you the confidence to continue in that manner. I wouldn't worry too much about getting credit for now - though don't hesitate to include your name in file header comments (though your check-in history will help here too) or keep track of how work was divided between you and the senior dev. (This will be helpful in annual reviews of if your workplace is one of those political, back-stabby ones)

It's possible the more senior dev is also from the same school of thought that believes you progress more from being thrown in at the deep end, has seen what you can do and is happy to nurture your talents by letting you work un-assisted.

It's also possible he/she is work-shy and/or not as talented as their title might suggest. I've come across more than a few of those in my time and I'd take a I-don't-know-the-first-thing-about-it-but-I'll-have-a-go junior ahead of them any day. Given time you can teach somebody how to write and design good code. You can't teach that fearless, willing to get stuck in attitude.

3

Do what you're asked to do, that's your job and that's what you're getting paid to do.

Regarding the credit, just be sure to talk about your contributions to the projects in your performance and salary reviews/interviews, and sure, feel free to talk about how much you've done in comparison to others, but make it about how well you find you've been doing and not about how poor you find your co-workers.

If you find you're not getting the actual support you need, from someone whose job it is to do so then you should talk about that with your manager but that should not be about how much you're doing in comparison to said individual. There can be a variety of reasons for their poor performance at the time and they don't really concern you unless they get in the way of you doing your job.

2
  • Thank you for your answer, I was looking for a sensible answer like this(+1'd). My issue stems from me not being too sure how to talk about my contributions positively (never having done it before) - so I will be following what you have written. Have you any more advice on this or is this something I should be asking Mr. Google?
    – dev_11ccon
    Commented Jan 12, 2021 at 15:41
  • Mr. or Mrs. Google should be able to help you, but your questions and concerns have definitely been answered on the workplace stack exchange before so if you'll search here you'll find some useful advice. What you're asking for is how to bring up your performance in performance reviews and salary interviews. A lot of content exists on both of these topis, both on the internet and here on this site :)
    – Jonast92
    Commented Jan 12, 2021 at 15:49
1

To start off with I would very rarely consider any dev with 4 years of experience a true senior. It could be that they have very recently been promoted into the position and have very little mentorship experience. They could even be as new in their role as you are in yours! I would cut him or her a little slack, and just enjoy the unique opportunity you've just had drop into your lap.

As a junior developer you can't really do much that's too wrong, aside from being completely unable or unwilling to write code. You may have felt that graduating from college would have you perfectly prepared to create the next Facebook. While that may be true your hiring manager, team lead, and senior team members will not share that expectation of you. If a deadline slips, it's because you were simply overburdened. If code is non-functional, it's because your code reviewers didn't catch it in time.

If I were you, I would use the opportunity to take on as much difficult work as I could get ahold of. It may pay off in the form of promotions and recognition at your current company, it might not. But it most CERTAINLY will pay off when your resume shows that you have professional architecture experience two years in to your career.

Best of luck!

1
  • Your job is to do your bosses job.
  • Their job is to their bosses job.
  • The boss's job is to do a job for the client.

If you are aware and critically asking these questions at this stage of your career, without coming to premature conclusions as to others motives, then you are on the right path.

You must log in to answer this question.

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