0

During october/november, I developped for the team I was working with a tool to achieve functionality "X" in a specific language. As far as I know this tool is re-usable by other teams and feature-full (I designed it such that it covers lots of cases). The only downside is that it doesnt really integrate that well in our codebase because it's not coded in the most used language. I estimate the time to port it to a new language to 1 weeks max.

Now, at work there is also a team whose scope is among others to work on feature "X". During october/november when I was developping my tool they were supposed to gather requirements with me but never really did. Now since January they are "officially" tasked with providing the "official" library for feature X. I've had meetings where I demo'd my code, shared the source etc and made myself available if they needed my help to understand the code or integrate it somehow. Now that it is March they should have done significant progress on their project, which could have been as simple as "porting my code". However I checked today and I see that they basically did 0 progress, and that worse, the solution they plan to do will be extremely limited. In a nutshell, the code I've already written is much more powerful in terms of features/performances etc.

At this point I am pretty frustrated with the situation, especially given that we need feature "X" fairly soon and that other teams depend on this being shipped. If the other team deliver late a product that is less good than what I've done I'll be very demotivated

What should I do in this situation? My option are either:

  • not do anything and watch in 6 months a bad product being created
  • try to port my code in the other language and advertise that this exists
  • escalate this with the other team
  • escalate this with my manager/the manager of the other team
  • could you highlight that feature X is important for your project? is it true that the issue is that there is no official feature X code right now? – aaaaa says reinstate Monica Mar 4 at 19:21
  • "If the other team deliver late a product that is less good than what I've done I'll be very demotivated" - why are you allowing another team's progress against their deliverables to influence your level of motivation? – dwizum Mar 4 at 19:27
  • @aaaaaa : it is somewhat important for our project now, but mostly it is going to be critically needed by us and other teams in the next 2-3 months. and indeed no official way to be this now – throaway_acount900997 Mar 4 at 19:59
  • @dwizum : it's pretty demotivating to be working in an environment were other teams can't pull their weight. Also we are clients of what they produce, as well as several other teams – throaway_acount900997 Mar 4 at 20:01
  • A sign of maturity in a career professional is the ability to segregate your own results and success from those around you. Yes, we all need to work on teams and rely on others, but if you can only stay motivated when everyone else in the company is a top performer, you're going to find yourself constantly demotivated, because in the real world, that pretty much never happens. In other words, find your own happiness, even in an imperfect environment. – dwizum Mar 5 at 14:19
6

Talk to your manager.

This is echelons above you. You've tried to help the other team. They haven't taken advantage of the help. Your ability to do things via the other team is going to be limited, and trying to talk with their managers has a good chance of backfiring badly. You shouldn't just do nothing, because the company could benefit significantly from your code. At the same time, judging the productivity of the other team (however accurately) is not your job. This whole thing has raised to a level of office politics that is above you, and that means it's time to pass the buck to the political level above you in the office.

Sit down one-on-one with your manager, explain the situation as simply and straightforwardly as you can, and as much as you possibly can, leave out any judgments of the other team or their work that you can't back up with direct factual evidence. Then let him (or her) handle it (possibly by escalating to their boss).

This may well result in a one-week task to convert your code, and that's certainly something you can offer to do in your conversation with your manager, but it's not something you should do without getting the okay unless you're usually given an enormous amount of leeway on which tasks to take on.

0

I'm going to disagree with Bens answer here and say this is an issue that you should attempt to deal with by approaching the team in question before escalating any further.

As you are a key user of the code they are (meant to be) writing, you are in a position to describe the knock on impacts on your deliverables. You should make sure they are 100% aware of these impacts. In an ideal world they would agree to make the improvements you want so I would start by outlining the issues in writing and offering your help to implement these improvements. A simple email like the following should suffice.

Hi [MEMBER OF OTHER TEAM],

I've just found out about the latest plans to implement 'X' and I'm concerned about the knock on effects of missing functionality 'Y'. I planned to use 'Y' when it comes time for me to implement feature 'Z' my end. Missing this feature will cause delays to the final produce as I will need to produce a workaround.

I'm also concerned that if 'X' cant achieve a run time of under 'N' seconds. We will struggle to meet the performance target 'T'. The implementation in 'Original language' achieved performance of 'N-a' seconds is there any way of improving this performance? I'd be happy to talk you through some of the methods I used to achieve this level of performance in 'Original language'.

if it would be helpful we could meet to discuss further?

best wishes, throwaway

Once they have been made aware of the consequences for missing features / poor performance, they will hopefully be open to reviewing the plan, if they are not then you should raise these as project risks through the usual channels for the project. If you don't have the authority to do that yourself, then you should escalate to your manager to take action on your behalf.

Finally I will echo Bens advice not to judge the performance of the other team.

0

The other team has a responsibility to consider maintenance costs as well as initial implementation. They may have considered your full-feature solution more complicated than is really needed.

If their objective is to get to the simplest possible X in their preferred language they would have two routes: port and strip down your code, or build up from scratch. They picked the second approach. Whether they were right or wrong, it is their decision, not yours.

That said, you can ask your manager to track features and status to get assurance that they are going to deliver required functionality by the scheduled date.

  • As much as I'd like to be optimistic it's pretty clear that they are never to deliver on time – throaway_acount900997 Mar 4 at 22:19

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.