6

I'm currently working in a company as a frontend developer. I should also mention that I'm not a regular employee as I'm half of the time at school in a process called alternance (I do not know if that's something in other places than France). Basically I have everything in common with my peers but I will be at school half of the time.

We are currently working in a small team of three, the lead, another dev who just started coding after a reconversion and myself.

The problem that I'm encountering is that I actually carry a lot of responsibilities that my I don't think I'm supposed to.

  • I created our big project from scratch with my colleague without our lead intervening.
  • I'm teaching my colleague about VueJs and javascript in general while our lead doesn't.
  • I basically gather tasks from the Product Owner myself as our lead doesn't dispatch them to us otherwise.
  • I do most of the meetings instead of him as he doesn't know everything about our product and how its built.

Our lead was basically doing some stuff that wasn't requested at any point since he was hired a few months ago.

The problem is now that nearly everyone started to understand these facts, our director stopped giving him tasks to dispatch but instead comes to me to do so.

He also started working on the project but he doesn't know Vue and isn't using the latest version of JavaScript. Our linter should catch errors and style problems but he commits using the "no-verify" option. That's a major problem as me and my teammate won't be able to commit with these bad pieces of code.

I'm now starting to help him learning Vue but I'm a bit lost.

The company signed a paper saying that they wanted to offer me a contract at the end of this one but again it's offering a dev job not a lead one.

My goal is to either be a regular developer without the responsibilities of a lead or an actual lead developer. I would like to start gaining experience as a lead. However, I do not want to do so in an unclear situation like this.

I have no clues about how to deal with this and any help would be very much appreciated. Thanks for your reading and please excuse me for any errors in my writing.

  • 1
    Do you have a line manager separate from the lead developer, or are they the same person? – Philip Kendall Jul 1 at 17:28
  • 1
    What should I do in your opinion? What's your goal? Are you trying to figure out how to get an offer as a lead or are you trying to figure out how to stop doing tasks for a lead role? – BSMP Jul 1 at 17:31
  • 1
    This is a bit of a tanget but why is the team using Vue if no one other than you knows how to use it? – BSMP Jul 1 at 17:32
  • There is indeed a line manager but they didn't understood until recently that he wasn't doing anything – chickenfoot360 Jul 1 at 17:57
  • My goal is to be either. I would like to start gaining experience as a lead. However I do not want to do so in an unclear situation like this. – chickenfoot360 Jul 1 at 17:58
12

There seem to be two issues that cause you frustration, which I'd suggest are best separated:

  1. Give your lead feedback on how his broken commits are affecting the team and suggest an alternative.
  2. Don't compare yourself to the other lead, but ask your manager on what you need to progress in the company.

Give feedback You have a very clear cut case on how the lead's behaviour impacts your work. Give feedback to your lead and focus on his actions (he commits code violating the linting rules), how it impacts you (you cannot commit unless you fix his issues or disable checks yourself) and what he could do differently. If he agrees to change his behaviour hold him accountable, if not ask him why and try to find alternative solutions.

Keep in mind, that with most decisions in Tech there is no right and wrong. You can decide to have the curly braces in the same line, or in the next line, or randomly mix it together. And in the same way you can decide to be strict with warnings, ignore them altogether or have a middle way. There is no right and wrong, but it is important that you talk to each other and agree on something. You prefer being strict on lint-checks and you have a very good reason to do so. But when giving feedback, I wouldn't present it as the only way to go, just your (and your colleagues) preference you'd like your lead to agree to it, as you are a team. A good lead wouldn't willingly ignore established best practices in your team, without giving you a good reason.

Another thing that is important to stress, is that is very normal, that your lead does know every technology as well as you do. So be open to show him what he needs to know in VueJS, like you would be with any other developer joining your team.

Ask your manager on how to progress If you think you are doing really well in your current role, you should have a discussion with your manager on how you can succeed further in your company. Ask for opportunities and development goals to work towards that direction. You can use the discussion about extending the contract to emphasize, that you want to grow. "Hey this new contract looks good, but also want to think about my future career as well. I think I am doing really well in my current role, and I feel I am soon ready for new challenges. Is there any roles you think I can grow into within the next X months?"

In my experience it rarely helps to compare yourself to others, too much. It can be a source of frustration for yourself and usually isn't a good argument in front of your managers (the other person might have other qualifications you don't know about, or maybe your managers aren't happy with him either). Just let your own work speak for itself.

If after some time you still feel like your work isn't acknowledged and you cannot grow, start looking for another job.

  • 1
    Wonderful advices. Thanks you very much for your time I'll try to apply this and see what happens.However I have a following question. As I'll try to give him a feedback on how to apply the rules properly should I just state the rules and see what happens or rather teach him. Would that be part of my role as a regular dev to teach a lead dev about a technology or is it out of my "scope" ? – chickenfoot360 Jul 1 at 22:48
  • 1
    @chickenfoot360 You should teach him. Show him why his use of "no-verify" and an older version of JavaScript is slowing the team down. Assume he'll agree that consistency and standards are good and start from there. Try to understand where he's coming from and try to make concessions if necessary to get the team on the same page. This is how a great lead would act (a bad lead would just state rules, without discussion, without explaining the reasons for them.) If you want to become a great lead, start practicing now! – filbranden Jul 2 at 4:28
  • I elaborated more on the feedback section, trying to answer your questions. In short: Yes, it is in your scope to share your knowledge where it is useful, no matter whether to a Junior Dev, a Lead or a CTO. – Helena Jul 2 at 17:28
  • Where I work, committing code that doesn’t work for everyone would be an immediate task marked as “blocking development” which is higher priority than “showstopper” which is a bug that prevents the product from shipping / being deployed. Assigned to the person causing it. – gnasher729 Jul 3 at 14:40
  • To be fair, it isn't blocking development, if every developer can use --no-verify. It just might not be good for code quality. – Helena Jul 3 at 17:34
4

I had similar experience before. At the time, it was indeed frustrating.

But later in your career, you may find that this experience adds great value to your CV.

Take myself as an example. Because I had these "extra duties", I get to put "I lead the change of xxx in yyy company. This results in ....". And this not only differentiates you from the sea of candidates, it also prepare you for lead type of positions.

So to answer your question, how should you deal with your lead dev: nothing. Take it as a great (and rare) opportunity to fast forward your career, and actually gain better valued experience in the process.

1

Actually getting a Lead role while being effectively part time is going to be tricky as most companies will want you to be there full time.

That said the role you are doing (frustrations and all) is still good experience towards that goal - you won't be able to claim the title true but you will be able to talk in depth at future interviews about what you've done in this role and a good hiring manger is going to understand the benefits of that.

Rather than thinking about it in terms of doing the extra you "aren't supposed to be doing" think about it as a way to gain valuable experience, being able to answer the question "what makes you think you are ready to step into your first lead role" by saying you've trained other colleagues, liaised directly with product owners etc is golden - and precisely the sort of thing I'd have jumped at when promoting or hiring people into lead positions before.

0

Sounds like you need to decide which one you want more:

  1. Become lead dev
  2. Stop doing other people's work

Because to me they sound somewhat orthagonal. I think ask yourself if you ever see your lead dev stepping up and the likelihood of no. 2 happening.

In my experience once you set a precedent it's hard to break others expectations. At the end of the day I guess it boils down to how much you like working there. It sounds like you're picking up great experience so early in your career.

If you want no. 1 speak to your superiors...it sounds like they need someone to stick up their hand and step up.

0

Keep this in mind: it's very common for people to do jobs without corresponding titles. This is especially true in knowledge-based professions like programming.

So, good sir, you are leading a development team. You do the technical organization tasks typically done by a "lead." You are the lead. And you have some of the frustrations all leads have:

  1. Gulp. Am I ready for this? Can I get the team to do it well? (Yes, even leads with decades of experience wonder about this.)

  2. Hey! Somebody won't follow our coding standards, and is breaking our build! What do I do?

And, in addition, you have the worry that you'll return to university soon and somebody else will take up the lead, or not.

May I suggest you speak to your manager about these concerns and ask for advice? "It seems the job of lead has fallen on me, the one who is still in school. It's good to have the opportunity to do this work, but it's a big responsibility. Can you offer me any wisdom about doing it well?"

And, ask the manager for advice on how to deal with the person with the "lead" title who won't cooperate with your project's standards.

Note well: It may seem like managers don't do much. But their job is to give advice and support to people like you and your team, who actually do the work. Don't hesitate to ask for that kind of help..

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.