Introduction

I recently had to do a transfer of ownership of a product from myself to another team member. When I was designing the knowledge transfer document, I was surprised by all the points I had to discuss. I had 5 years worth of product ownership experience to talk from and provide with many tips and tricks on product ownership.

This experience led to me deciding to create a write-up of the discussion. This write-up will be for my future self and for others who are interested to learn some practical knowledge on Product Management. These are some of my observations, tips, tricks, and leanings in my product ownership journey over the past 5 years.

Broadly I can categorize my overall experience into 6 buckets

1.  Ideation of features

2.  Prioritization of Work

3.  Product backlog creation and maintenance

4.  Stakeholder Management

5.  Team Management

6.  Product Metrics Design and Management

For this blog post, I will be concentrating on Ideation of Features. I will try to cover up the other topics in a different post

Ideation of Features

During most of my time as a Product Owner (PO), I was responsible for implementation of an existing product roadmap. And this is expected as many companies have a fixed predefined long term strategy for their product. Or they are in between implementations of some or the other transformation projects.

In my case, the product I was responsible for was going through a huge transformation - migration of the platform from an on-premise to cloud. Now if you have been part of such a transformation project, you would know that this is usually a multi-year undertaking. It takes months and months of effort to move all of your resources from on-premise to cloud infrastructure. Add to that various modernization tasks like adoption of new frameworks for your back-end and UI layer, monolithic to microservice oriented architecture change, decommissioning of legacy resources, you have had your hands full for a couple of years.

Having said this, there were still opportunities to add new features and enhancements for the product. The team was able to introduce as many as 20 medium to small enhancements during the three years of our transformation project. This included enhancement aimed for improving end users experience, new features required for smooth transitioning from on-premise to cloud version of the product, working on long-time pending features requested by users to finally adding new features to expand the product.

Below is the summary of some of the methods used to ideate and prioritize the feature enhancements. I must add a disclaimer that these methods worked for me in my own product. These are my own methodologies that I have developed over the past 5 years and have worked for me.

Listen to end users of your product

Past

End user interaction is one of the best ways to germinate ideas for feature enhancements for your product. If you are new to the product, it can be difficult for you to think about new features. Also, relying too much on gut feeling for  enhancements is almost always a bad idea. I have gone with my gut more times than I would like to admit and have regretted the time and energy spent creating features that end users do not use.

In my experience, end users who use your products on a daily basis generally have the best ideas about new improvements. They can be critical in their feedback but it is important to take them positively. There have been multiple instances where critical feedback from the user has led to the team working on it and eventually improving the product’s user experience multi-fold.

Take Feedback

It is critical for you as a PO to be able to communicate with end users of their product. Be it direct meeting or a mass survey email, it’s important to have a way in which the end users will be able to let you know their grievances. And from these grievances, you can find many potential improvements for your product. I used to maintain a list of user grievances and refer it when I was ideating and prioritizing features.

In the product I managed (an internal product used within the company), we used to have direct calls with end users who reported problems or issues with the platform. Having direct interactions with end users helped us to understand how end users were using our product and features. We had multiple feature requests that came out of such discussions. We also came to know about issues like how end users are not able to understand a feature or not much help documentation is provided for them. These interactions also made the development team to be more empathetic towards our end user problems like making sure when the team worked on new features, they developed proper help documents for end users to use.

Though direct end user interactions may note be feasible if a product has thousands or millions of users, it’s always a good idea to have some way to have the product team interact with the users of the product they are working on.

Some Key Takeaways

  1. Provide a way within your product so that end users can give feedback about your product

  2. Be prompt to reply to any feedback you receive. It may be tedious, but it’s essential to have a mechanism (maybe a dedicated team) for this. End users are generally more responsive with ideas or suggestions when they see their feedback is taken seriously

  3. Have a follow up with the user if you took their suggestions into account and made changes in your product. You will have one very happy promoter who will swear by your product

  4. Consider having an Enhancement portal or community page where the end user will be able to raise enhancement requests. Some of the best ideas comes from such forums

  5. Consider having meetings with the power users of your product at regular intervals

Competitor Evaluation

Fire...

Though I was not doing this during the initial days, I now find competitor evaluation a key part in ideating new ideas for my  product. I check out competing products and check what new features they have added and how they have implemented them. A competitor product is a treasure trove of ideas for your own platform. It’s also a good way to stay updated about how your competitor is performing in comparison to your product. It also keeps you updated how the domain your product belongs to is evolving with time.

A word of caution here. One should not blindly follow or copy what the competition is doing. There have been instances where I have seen bad implementation of good ideas by a competitor. Even though the feature was good, I would not use it. 

One must also be cautious that some features of a competitor, which may look good, would only work for them. A cool looking feature in your competitor platform may not align with your product’s long term vision or roadmap. Also, your competitor could  very well be a big company with hundreds of members in their team. They will be able to create/maintain complex features and enhancements that may not be practical for you if you do not have as many members in your team.

Remember that every feature developed has a cost associated with it. This is something that I learned as I progressed in my career. Consider dong a cost benefit analysis before starting on a feature

To Summarize

  1. Keep up to date with what is happening in your domain

  2. Check how your competitors are doing, any new features they have released

  3. Do not copy features blindly. Ask yourself the below questions

    1. Does this feature make sense for your product?

    2. Does the feature align with the overall vision of your product?

    3. Is there an immediate need for it?

    4. Have any of your users asked for such a feature? If yes, then how many?

    5. Does your team have the manpower to build this feature

  4. Evaluate your assumptions about the feature with other trusted members of your team. Take their opinion and feedback

  5. Play the devil’s advocate - Why will a competitor feature not work for your product

For new Product Owners

In my case, only after being a PO for some time did I realize how important it is to interact with the end users . You can develop a fantastic looking feature which you think will add great value for the product but you may find that no one is using this because this may not be what they are looking for.

  1. If you are new at owning a product, focus more on improving existing features and functionalities than adding new features. Also focus more interacting with end user

  2. Focus on delivering low-hanging features and small wins for the team. This will build your team and your confidence

  3. Remember, it may be an small enhancement suggested by end users that may increase the user experience of your product by leaps and bounds

  4. There is a good chance you may have spent a lot of time building unnecessary and complex features. Its okay and it happens to many.

  5. If ever in doubt about a feature, validate the feature with other more experienced POs in your team

Please let me know your thoughts on these tips and techniques. I know that they may not be perfect and would like to improve. Please feel free to drop me a mail at gouravmoy.mohanty91@gmail.com

Thanks for reading. I will be writing a follow up blog post for the other points. Stay tuned!