7

I'm a software developer with about 10 years experience, working as a consultant since end of last year, through an agency that put me with my first client where I've now been for half a year.

The team consists of a senior developer (20 years experience), me as a medior, and a junior (2 years experience). We have a team lead and a manager.

My speciality is front-end development even though I am full stack. This means I used to do all front-end tasks, and now split them with our junior as I've been mentoring them. Senior has done no front-end work since I started there.

The problem in the team is that senior developer in the worst cases dictates how to solve a front-end problem, and is not stopped by team lead from doing this. Senior has only basic knowledge of the front-end framework used, and no knowledge of the component library we purchased. He is the type that will answer a question before thinking about it (or do the thinking process out loud on the fly), and because he is the oldest, most experienced and has developed some of the core solutions of the business his words carry a lot of weight. He will look through the component documentation for two minutes, pick the first thing he finds, and tell me to do this. This leads to situations where I'm told how to fix a problem, knowing already it won't work, but because I'm not good at explaining (and I also could be wrong) I investigate it and explain what I tried and why it won't work, and always try to come up with an alternative solution. This leads to the problem being solved, but he will keep finding ways to attack the solution, and if the solution comes up later, he will tell me that his way was better. I've started documenting furiously in the last few months, but for past things I lack this, which leads to being told I remember things wrong. I'm not sure if that is gaslighting, so I'm building a trail.

However working like this is not healthy and I notice it taking a toll on me. I want to solve software problems, not people problems, and I don't want to have to document my every move to be believed. I've run into a problem now I was asked to solve by the team lead, but the solution he proposed (which is actually what senior proposed, after which he told team lead to make a call) is very much how you'd solve this in a desktop application, and also not technically possible with the components we use, which I've investigated and documented. I've asked team lead for a meeting next week to discuss this, without senior present, and I'd actually like to bring up how I'm feeling in this team. But I'm not sure how to proceed, and quite sure team lead will ask why I didn't want senior present. I've made brief mention of how senior acts to my manager, and while he agreed it was not ok, we decided to see how things would further go. He was understanding but I'd rather not bother him unless team lead doesn't help improve the situation. I don't want to breed ill will by escalating things, but I also don't want to be pushed around because nobody wants to address an issue.

What I'd like to achieve is a healthy team balance, where everyone can have input, but you don't tell someone how to do their job unless you have real proof that you are right. I possibly take things too personally, at least that is feedback I have received from the team. They could be right, but at the same time, it feels the power dynamic is off. I don't yet want to resort to telling the agency it isn't working out with the client, even though they'd have a new one for me in no time, it's an otherwise great workplace and I think everyone would benefit from a solution.

So my question is, how to I proceed on getting to a solution for a situation where a senior with less experience in a speciality dictates a medior (and a junior) how to do their job if what we do isn't to his liking?

  • Can you give some examples - its possible for those only focused on front end to produce pretty looking solutions that totally fail for SEO for example. – Neuromancer Jun 16 at 21:53
7

The correct way is... pretty much the same that you already started; as in, talk to the team lead and to your manager, and have the issues documented.

If they really do their job, they'll do something about it. Having said that, it's also possible that they don't want to do their job, in which case there's little you can do, except find another job.

In other words, it's up to you to talk about it with them and explain the situation. If they don't do anything, and you have tried to talk to them 2-3 times, it means that they aren't going to do anything, so in that case don't even try to talk about it again, or to go above their heads to the next level up; it rarely ever works, and can backfire on you.

If they haven't solved the situation in a couple months, even after you asked them for help repeatedly, it will be the time to start sending your resume around...

1

A few observations:

  • Can you be more patient? This senior person needs to be right. Let them be right. In conversation. Let them send you on a few wild-goose chases.
  • Remember that people have time constants. It takes time for people -- including you -- to absorb new ideas. You need to challenge the senior person about a technical point, so do it. But DON'T expect them to facepalm and say "of course, you're right, I'm wrong, what was I thinking?" Give them time for your ideas to sink in.
  • You say you want to solve technical problems not people problems. Put that into action. Make sure the manager is aware of the people problems and let them do their job. "Achieve healthy team balance" is not, repeat not, your job. It's the manager's. And, it's harder than your job.

Ask the manager for advice about this. Say something specific like: "Mr. TwentyYear asked me to investigate using blahblah to do the zuminatron task. I explained that blahblah isn't part of the frobisher framework, but he still insisted, and so I took longer to do that job than I thought I should have. Can you suggest a way to deal with this situation?"

And, if you repeatedly find yourself wanting to write an article about all this for https://thedailywtf.com/ remember that life is short. Maybe it's time to try something new.

Hang in there! You'll do good work.

1

Other answers seem to be overlooking the part where you say you have trouble explaining yourself.

There’s a pattern in your story, and you can preempt it:

  1. You propose a solution to some problem in your domain
  2. Senior says something like “this StackOverflow question sounds similar, why not go the route in the answer?”
  3. You struggle to reply

If you come prepared with arguments supporting your proposal, you may be able to head off the senior:

For this problem we could foo, but I prefer to bar because ....

As the senior team member, they may consider it their responsibility or purview to challenge the other team members. And as the specialist, you should be comfortable explaining why the obvious suggestion is wrong.

As an aside, you also mention you’re building a documentation trail. This can very easily enhance the project — decision records will help your team in the future when you’re confused about why some choice was made.

0

If you are working as a contractor, you should be making significantly more money than an employee (if that isn't the case, then you're doing it wrong). In that situation, it is your responsibility to do your money's worth of work for them. Their responsibility is to use your talents in the most beneficial way for the company.

Find out who in the company can tell you how to do your job - if your job is to produce results, or if your job is to do as that senior developer tells you. That's something you should know anyway. In any case, if you feel that doing what the senior developer wants you to do is a waste of your effort, then tell the manager, and then handle the situation the way he tells you to.

If the manager tells you to do what in your opinion (with 10 years experience, and experience in the subject matter) is the best, then you do that; you are happy, make a lot of money, and everything is fine until they don't need you anymore. If the manager tells you to follow the senior developer's suggestions, then you follow the senior developer's suggestion, waste not your time but the company's time, are a little less happy, still make a lot of money, and everything is fine until they don't need you anymore. Which may be a bit earlier because they are not happy with your progress, or a bit later because wasting the company's time means they need to pay you for longer.

In that case, you've told them, the waste of time is their problem, not yours, and you have the money in the pocket.

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.