How To Professionally Deal With A Coworker Who Wants A Feature
You're the product owner of the Widget System at your company, and folks have opinions about Widget Systems. So sometimes people will come to your desk with opinions. They'll say something like, "I think Widgets should have a Doodads feature."
- Doodads are the next thing you're planning to work on. Great, no problem. Coworker happy.
- You agree you should do Doodads but have higher priority things to do first. Great, show them that Doodads are in your backlog. If Doodads is blocking them, raise its priority. Thank them for the feedback and tell them that it helps you prioritize and learn how people use Widgets. Coworker happy.
- You don't have an opinion about Doodads, or you're not sure about whether you should do Doodads.
This is the hard one. It's critically important that you do not argue with this person. In fact, don't say anything contrary to their opinions about Doodads. Rather, say this: "Doodads are an important consideration and I appreciate you bringing it to my attention. Let me see whether I understand your concern: [Repeat their request back to them.] That's a great point. Let me add Doodads to my backlog. I'm still focusing on some other higher priority features so I haven't yet made a decision about Doodads. When it comes time to decide about Doodads I'll look at the customer data and decide what the best route is." If you have a backlog, add Doodads to your backlog as they watch even if you are pretty sure you won't need it. Thank them again for the feedback and tell them it helps you prioritize and learn how people use Widgets. Extra points if you ask clarifying questions and make sure you understand their thoughts on Doodads fully.
It's more important for you coworker to be happy with the exchange than it is for you to decide which one of you is right about Doodads. Both of you agree that you won't have the resources to do Doodads for a few months anyway, so what's the point in arguing about it now? If you focus on building and maintaining a good relationship with that person then you build social capital that you can draw from when something actually needs discussing. Discussing it now expends social capital and risks an argument and resentment.
Your responsibility is to complete your next task, not to have a discussion about a task that won't be worked on for weeks or months. This person only wants to express their idea and to be heard and understood. If you give them that you win more than if you actually do Doodads in the future.
My father worked as an engineer for IBM for 35 years. When I shared my thoughts on this technique he shared his approval, and said that he even has a name for it. He calls this "Giving them a lollipop." Whenever someone comes to your desk and wants something, give them a lollipop. Not an actual physical lollipop, but a warm and fuzzy feeling because you gave them what they wanted: an opportunity to express their thoughts.
Concerns and Caveats
I shared this technique with a junior engineer on my team who objected, "But Jorge, I don't want to lie to anybody." I will never ask anyone to lie and I don't think anything said as part of the technique is a lie.
- "Doodads are an important consideration." Doodads are an important consideration to your coworker because your coworker took the time to come to your desk and ask for Doodads. Therefore they should be an important consideration to you.
- "I appreciate you bringing it to my attention." Most people don't bother to give me feedback about my work, so whenever someone does I appreciate it even if I disagree with their conclusions.
- "When it comes time to decide, we'll consider Doodads." When I say that I mean it, even if I disagree with Doodads. I'm aware that I may today be wrong about Doodads and Doodads will prove to be right tomorrow. So I keep an open mind about Doodads and when it comes time I think about it again, I will consider it earnestly.
If you're saying these things and you're not being genuine about them, you are a sociopath. Don't be a sociopath. Either believe it or don't say it.
Another common concern when applying this technique is, what if the person returns in the future asking whether Doodads have been done? When they come back you should be able to say, "I looked at customer data and it showed that my customer hasn't been asking for Doodads and doesn't seem to want it yet. That said I still think it's a good idea and we're keeping it in our backlog, but for now we're prioritizing other things that the customer is asking for."
If your coworker is similarly focused on the needs of the customer then they will understand and agree that your priorities are correct. You could have presented this argument when they first arrived at your desk, but by avoiding an argument at that time you built social capital with them. They trust your judgement a bit more. Now that some time has passed, they aren't as invested in their idea and it's safer to have a polite discussion about it.
You Don't Own Widgets (Or Doodads)
You can't take a strong stance on Widgets or Doodads, because even though you're responsible for delivering Widgets, you don't "own" them. The team does. The only thing that matters is the interest of the product, the team, and the customer. Ultimately, whether or not you think you should do Doodads doesn't matter.
Let's suppose that your team is not terribly focused on the customer, and that despite a wealth of data that your customer doesn't need Doodads, everyone else your team wants to do it anyway. (For the sake of argument, we'll assume that you don't immediately leave this team and find one that is focused on the customer.) If everyone on your team thinks you should do Doodads then it may not even matter how much customer data you have to the contrary. In this case, consider doing Doodads anyway. Most of the time the cost of building and reverting one feature is minimal, so why fight it? If Doodads turn out to be the right thing then you still gain social capital, because you respected the opinions of your teammates and delivered a feature everyone wanted. If Doodads turn out to be wrong you gain the trust and respect of your teammates by having disagreed respectfully and having been right in the end. You showed Respect for the Individual (an IBM management principle.) Next time they'll be more likely to consider your opinion.
Either way, the coworker who arrives at your desk and wants you to do Doodads is doing so because they partially own the Widgets System. Widgets is owned by the team, not by you, and its direction isn't entirely yours to give. You can't say definitively whether or not Doodads should be done, because you don't have perfect information. If you refuse, you're undermining the ownership of the team. You're obliged to agree that it's possible you'll need Doodads.
So give them a lollipop.