Feature requests

How feature requests are tracked, prioritized, and escalated.

Where are feature requests tracked?

At Mattermost, we track paid customer feature requests in Productboard. Productboard is an internal tool used for tracking and organizing customer intelligence, feedback, and requests. Customer-facing teams can add notes to Productboard based on this process.

Uservoice is used for our community to submit a request or upvote existing requests.

The Product Management team uses the information from both our customers and community to help prioritize features for the roadmap.

Where to share feedback?

The Mattermost Product team uses information from our customers and the open-source community to guide feature roadmap.

We use two forums to connect with the user community - Customer ProductBoard and Community Feature Proposal Forum.

Customer ProductBoard

Customer ProductBoard is a place for paying customers to connect directly with the product team on improvements most important to our ideal customer profile (ICP): https://portal.productboard.com/mattermost/33-what-matters-to-you/tabs/120-community-requested-features

In this portal, customers can share how important an improvement is, share their use cases relevant to those improvements, and submit new ideas directly to the product team.

Product Managers review the feedback weekly to guide product direction and feature roadmap development.

Community Feature Proposal Forum

Community Feature Proposal Forum is a place for users in our free deployments to propose new feature ideas: https://mattermost.uservoice.com/forums/306457-general

In this forum, community members can propose new features, share ideas for new improvements, and connect with other members in refining their proposed features.

Community Manager reviews the feedback weekly to hear what matters to the most engaged users in free deployments. Key trends are also shared with the Product team.

Filing great feature requests

When filing a feature request, the most important thing to do is capture the "why" behind it. A great way to do this is by writing requests in the form of an "Experience Report". As described in the golang wiki:

"The best experience reports tell: (1) what you wanted to do, (2) what you actually did, and (3) why that wasn’t great, illustrating those by real concrete examples."

Writing in this format ensures the focus is on pain points, rather than solutions. This allows us to better define the root of the problem, which in turn makes it easier to come up with creative solutions to fix it.

If you're filing a feature request on behalf of a customer, make sure to also include:

  • Who requested the feature.

  • How important it is to them (ideally, based on stack rank against their other requests).

  • Links to any relevant conversations, Zendesk tickets, etc.

Escalating a feature request

Generally speaking, feature requests are prioritized through our normal roadmap process. The roadmap provides an idea of where the feature falls on our prioritization list, but is not a committed release date.

If a deal is dependent on committing to a concrete timeline for a feature, the Sales team can escalate the request by sharing:

  • What is the request?

  • What is the timeline ask from the customer?

  • Are there other “must have” features blocking the deal? If so, please provide a full list.

  • If we build this feature, is the customer committed to closing the deal? If so, how big is the deal?

  • Did the customer offer NRE dollars to accelerate the feature?

The Product Management team will then evaluate the ask, and determine if we can commit to a timeline or if the feature does not fit on our roadmap.

Please be aware that committing to a concrete timeline for a deal is the exception not the norm, as it can have a negative impact on delivering other features that the rest of our user base is expecting.

Last updated