I have always been a direct person and, at times, blunt in my approach. This has lead to some entertaining meetings (to some), where I would simply say no at someone's idea, feature or even roadmap. I would like to point that's not because I was trying to be mean, or negative. I simply disagreed because:

  • The deadlines were unreasonable and in no way, even with extra hours, the team would be able to deliver.
  • Sometimes the details were fuzzy and a developer would struggle to implement the feature.
  • The feature didn't make sense and it wasn't aligned with our KPI's; it didn't answer the why.

In retrospective the means to deliver a no, do matter. If you are not careful, you will be perceived as a bottleneck, so people will go around you. As an engineering manager, this might not be a problem initially, because you are aware of what your team is doing. If you are the engineer, you will start to resent people, which leads to resenting the company you work for.

Today I would like to share some tips I have been applying:

  1. If you have to say no, add a but after. If you don't agree with someone, provide the other person an alternative. If you want to go the extra mile, provide multiple alternatives, explaining the compromises across solutions.
  2. When the feature is not conceivable, from a technical point of view, is not because the person woke up that day with the goal to annoy you. Often it's simply because the person didn't know any better, which is perfectly fine. As an engineer, it's up to you to figure out what the person wants and do your best to make it a reality.
  3. Ask questions. Understand what's the feature's goal and what the person wants to achieve. Most people explain what they want you to do. Experienced individuals explain the problem and let you figure it out.  
  4. Have a positive attitude. Focus on what you and the other person agree with (which usually is more than what you disagree with ). Having this in mind has a tremendous effect on how you approach the rest of the conversation.
  5. Be nice and put yourself in someone else's shoes! Everyone has bad days, being blocked by a smart-ass is not going to help anyone.

A lot of these are difficult to keep in mind, because we also have our own shitty days. In any case, I hope this helps when tilting at wind mills. 😄