The purpose of this handbook is to provide more details on the Product Manager role, processes, and relations to other functions within the organization to foster success for employees in this role. This handbook may be shared with other functional areas so other employees may gain a better understanding of the Product Manager role, thereby having a greater understanding for responsibilities and interaction areas.
Date | Edited By | Change Notes |
3/31/2020 | Lindsay Brock | Add level descriptions |
2/5/2020 | Adam Clarkson | Added notes on Customer Request Rotation |
2/2/2020 | Katie Wiersgalla | Updated Twitter, Customer Requests, PM meetings |
8/30/2019 | Katie Wiersgalla | Update sections with additional resources |
6/12/2019 | Lindsay Brock | Updated outdated sections |
6/25/2018 | Katie Wiersgalla | Initial Creation |
Product Managers are organized within the R&D area of Mattermost; however, they have interactions with all departments and areas to ensure success of the product.
Product Managers are responsible for carrying out the strategic priorities of the product. They are tasked with ensuring the product is profitable by meeting customers and users existing and future needs. Understanding that each client and user have their own set of specific requirements, use cases, and preferences; a Product Manager must understand the patterns across a broad range of input and focus on exploiting value in the areas that will provide the greatest return for the largest audience.
Mindsets
Recommended Reading
What fundamental philosophies are predominant?
Pragmatic Marketing: “Your opinion, although interesting, is irrelevant.”
It’s all about the customer/user/buyer’s opinion/want/need
How do we make packaging decisions?
Prioritization framework
Tips on working with customers
Tips on working with the contributor community
Experimental, Beta, and General Availability of Features
Skills
Experience
Mindset
Owns an area of the product end to end. Influences and executes defined projects across strategy, engineering and marketing functions.
Given product goals, recommends product suggestions and priorities. Shows good judgment when prioritizing work, and effectively articulates the rationale behind it. Works with design, developers, and testers (including both staff and contributors) to align on priorities and execute on roadmap plans. Adept at making suggestions to help their team work in a high impact way. Asks questions and provides feedback that helps raise the quality bar of the team’s work as a whole.
Effectively communicates with Sales, Marketing, and Support teams to ensure the successful launch of feature and projects with some guidance and support from more senior product managers. Highly responsive to questions about product and roadmap questions, they act as a liaison by representing their team to other departments. Works with support team to address issues and document solutions and best practices. Demos new product features effectively on customer calls. Can effectively articulate key product differentiators based on their knowledge of the market and competitors. Communicates with customers to validate designs and product ideas. When gathering feature suggestions and feedback, makes sure to identify the underlying need driving requests.
Learns new skills and establishes goals and context quickly by asking precise questions. Proactively provides project status updates. Gets things done, doesn’t drop the ball.
Owns a large area of the product end to end.
Participates in defining product goals, quantitative and qualitative, for area of ownership, and recommends product and roadmap plans to achieve that goal. Works with design, developers, and testers (including both staff and contributors) to align on priorities and execute on roadmap plans. Highly skilled at identifying potential blind spots, and taking action to mitigate risk.
Highly valued by the Sales, Marketing, and Support teams for their quality work and feedback. They ensure business value for product and roadmap are communicated effectively externally. Provides demos, demo training, and sales support working with field teams to win and expand customer accounts. Demonstrates strong insights about our customers, based on a deep knowledge acquired through strong customer research skills. Gathers data effectively from sales and support teams to make good decisions.
Drops fluidly into different projects, ramps quickly, and contributes to successful outcomes. Makes good teams great.
Uses deep knowledge of customer, product, competitors, and market to define, own and lead a product or significant product areas across strategy, engineering and marketing functions.
Recommends product goals for their area of ownership, and influences high level goals for the product in general. Develops, socializes, and articulates compelling product roadmap and aligns processes and people to deliver it at high quality. Beneficially influences pricing, packaging, positioning, and messaging decisions from the perspective of a product owner.
Sought after throughout the organization as a spokesperson for product value and roadmap.
A highly respected authority by colleagues across the company and the community, they are someone who others look to for advice and mentorship. Has the ability to train and significantly develop product management related skills in colleagues and new hires.
Manages other Product Managers. Accountable for leading teams and defining responsibilities and deliverables of individual contributors and ensuring their success. Given ambiguous or high level direction, lays out vision and plan to deliver successful outcomes.
Participates in team planning, recruiting, hiring, and onboarding processes and effectively influences candidates to join the company. Develops a pipeline of recruiting candidates by building relationships with the community.
Responsible for setting vision and direction for their area of ownership, and for acting as a spokesperson for product value and roadmap internally and externally.
Sought out as an authority in the industry, influencing industry direction and standards through the development and dissemination of thought leadership work, and through the building of world-class products. Sets and delivers long term vision for entire products and product lines. Works fluidly across departments to set organizational objectives and direction. Engages with peers in external organizations to shape joint plans for key initiatives. Rapidly understands disparate viewpoints across different functions and departments, and aligns thinking and efforts to influence the direction of large scale cross-departmental efforts.
Objective: Explore the Product with Fresh Eyes
Before diving too deeply into docs, processes, and everything else - take this chance to look at the product with fresh eyes! Keep a list of questions, observations, and points of confusion to help with your own learning and to provide feedback on your first impressions of Mattermost for the rest of the team.
A good place to start is exploring the websites, and then see if you can find a way to install a version of Mattermost to try it out.
Google Mattermost
https://docs.mattermost.com (User, Admin, Integrations guides)
Activities:
Meet with Manager
Add to meetings
Get accounts set up
First day projects
Set up 1-1 times and create 1-1 doc
Meet with “PM buddy”
Learn about team
Add to team meetings
Set up 1-1 times and create 1-1 doc
Look at the product with “fresh eyes”
Install Mattermost on your laptop, go through the motions of setting it up
Optionally also install the Mattermost App on your mobile device
As you read the documentation, look out for any improvements that can be made (outdated information, spelling/grammar, etc)
Objective: Introduction to customers team members, resources, and make first contribution
Training focus:
Introduction to our Customer Obsession Principle
Introductions to team members through 1-1s
Use introductions as learning opportunities to understand different parts of the company (ask questions!)
Introduction to product
Introduction to our “Fast, Obvious, Forgiving” design principles
Introduction to key resources
Make your first contribution on GitHub
Activities:
Customer Obsession:
Join and introduce yourself in these channels, ask to join any and all customer calls - see if you can get a couple scheduled this week:
CSM:PM Engagement (Stu, Emily, Jenn)
Join and review the topics and posts in these channels to get a better understanding of our customers
Begin watching training videos on academy.mattermost.com
Begin reading docs.mattermost.com
Team:
Meet the rest of team leads (Developers, Designer, QA) and join team meetings
Ask questions to understand development, design, QA processes
Meet with Amy (Release Manager) and read the release process doc
Meet with Ian (https://github.com/it33/readme/blob/master/README.md). This will be scheduled for you
Meet other Product Managers (Jason Blais, Eric Sethna, Katie Wiersgalla, Aaron Rothschild, Eric Sadur, Adam Clarkson, Ian Tao)
Learn about their areas of ownership
Participate in PM, R&D, and Customer Obsession Meetings
Jira
Sign up to Jira and post in the “Jira configuration” channel to be added to internal team
Get Jira training from PM buddy
Make your first edit and pull request on GitHub
Update documentation or product help text
Small contributions
File a bug in Jira
Test a new feature on a test server and suggest an improvement
Leave feedback on a design proposal
Readings:
The Five Dysfunctions of a Team: A Leadership Fable
Objective: Build foundational knowledge
Training focus:
Users and customers
Product
Features/Functions
Technical
Market and Competitive Landscape
Team
People and Processes
Activities:
Learn about our customers and users
Support
Customers: Zendesk (Sven)
Meet with Sven for Zendesk training and support overview
Join support standups for a week or two, and help out on support tickets
Community: GitHub, Forums (Amy)
Customer success (Meet with a CSM - Jennifer Lawler, Jeff Johnson, Sasa Cosic)
Overview of Customer Success team, who owns what
Current Customer Success processes
Typical challenges during customer onboarding
Join one CSM team meeting to meet the rest of the CS team
Customer calls
Join calls with CSMs
Join calls with Sales team
Feature requests
Learn about the market
Sales (Regional VPs and Customer Engineers)
Sales team overview
Sales team priorities
What competitors are we up against
How does Sales team position the product
What are typical challenges for the Sales team
Which sales do we win, which do we lose
What are the most common questions on configurations and trials
Marketing (Marketing team lead)
Marketing team overview
What are the Marketing team’s priorities
What is our current messaging and positioning around Mattermost
What is needed from Product Managers
Mini competitive research projects
Review of MS Teams, Slack, Discord, and other chat products
Spend a week doing customer support
Review documentation first and work with Support Lead or PM mentor to answer any questions documentation does not address
Update docs with answers as appropriate
Spend a couple weeks joining as many customer and prospect calls as possible
Take detailed notes and log in Salesforce
Learn about the product
Product Direction (Product Lead)
Public Roadmap (Staff Team > Roadmap channel)
Review videos on Mattermost Academy
Technical Architecture (Feature team dev lead)
Reference:
Typical customer deployment
Sizing recommendations
Product areas: Functional Overview and Roadmap
End user experience (Desktop, Web, and Mobile client applications) (Eric Sethna)
Cloud (Adam Clarkson)
App Marketplace and Developer Toolkit (Aaron Rothschild)
Enterprise (Platform, Admin Console) (Katie Wiersgalla)
Product-centric GTM (Customer Portal, Customer Journey) (Eric Sadur)
Workflows (Ian Tao)
Community (Jason Blais)
Reference:
Product Analytics (Chen, Consultant)
Tips on things to watch out for if running your own analytics
Dive into product analytics
Learn about the product development process
High level overview (PM buddy)
Team structure
Team-specific processes (PM buddy)
Team Triage
Sprint Planning
OKRs
Join general Triage meeting
Join all feature team meetings (Triage, Sprint Planning)
Design process (Feature team designer)
Competitor research
User research
Review process
Spec review channel
Working with contributor community (Jason)
Help wanted tickets
Community buddies
…?
Release process
QA process (QA team member)
General QA process
Sites for testing
Release testing process
Add to release testing
Release process (Amy, Release Manager)
Shadow feature team meetings and conversations
Contribute where possible (reviewing research and design specs, filing Jira ticket bugs)
Ramp up on a couple of ongoing projects or smaller projects
Shadow release process meetings and conversations
Ask Amy to add to release meetings for the upcoming release
Participate in Release Testing
Other projects identified by PM mentor to assist in learning about your area of responsibility
Update this onboarding document!
Helpful links, FAQs, and summaries of what you learned that would be useful for a new PM to know in the future
Example past project: Business Model Canvas
Objective: Build confidence through contribution
Training focus:
Participate in job duties and begin to acquire ownership of a project
Activities:
Run Triage meetings with other PMs present
Run Sprint Planning meetings
Initially with other PMs present with goal by end of 60 days to do on own
Interview clients for research for an upcoming project
Document research findings and requirements
Work with UX team on specs for your project and validation of designs with customers
Work with Development on specs and PR reviews for your project
Work with QA on test plans
Prepare customer facing documentation for your project
Allow PM mentor to shadow you and review your work, providing guidance and feedback
Other projects identified by PM mentor to assist in learning about your area of responsibility
Objective: Take ownership of responsibilities
Training focus:
Own all features within the release
Update and maintain roadmap
Work directly with developers, designers, and other stakeholders to progress projects
Activities:
Prepare research and queue next projects
Work independently with Feature team (Dev, UX, QA)
Answer questions related to the projects you have been involved in and areas of responsibility within the product (with support as needed from PM mentor).
Interview and ask questions to clients and prospects
Document findings and requirements
Share findings with designers and developers
Coordinate kick-off for planning activities of new features
Roadmap creation - what to add to roadmap and why
Socialize vision and roadmap internally and externally
Participate in Roadmap meetings
Capture SWAG estimates from design and developers to determine length project
Facilitate prioritization decisions in sprint and release planning meetings
Keep Release Plan up to date with features queued for the release
Define requirements and coordinate design resources for features
Prepare and manage spec documents to organize planning, design, and stakeholder input of features
Ensure cross-collaboration between designers, developers, and QA
Create Jira tickets for features and bugs
More complete information on the Design process can be found here
Ensure designs follow our UX guidelines
Fast, Obvious, Forgiving
Determine feature availability: Team Edition or Enterprise Edition
Stewardship principles that we use to guide whether a feature belongs in TE
Determine Packaging/SKU (E10 & E20)
In-Code: if (this.props.buildEnterpriseReady && this.props.isLicensed)
Review with PM team and get approval from other leads as required
Participate in daily Triage meetings (not mandatory to join every meeting)
Validate “Won’t fix”, “Won’t do” tickets. Provide a final comment of approval so ticket can be closed by QA
Ensure tickets are assigned to teams and assigned a fix version
Jira Fix Version = “unscheduled” means ticket has enough information to be developed, but is not assigned to a specific release version
Assist in identifying Help Wanted tickets
Update Fix Version to “help-wanted”, which will run an automation that will automatically create a corresponding issue in GitHub
Provide updates to current release roadmap in PM meetings
Review and provide input on release announcements
Provide updates to Release manager on deprecated features, features being promoted from experimental or beta, and any breaking changes within a release
Review Release PRs and Community PRs to ensure the feature meets requirements for design and functionality. Approve PRs once feedback (if any) is addressed by developers.
Label = PM Review
Test for user experience, use case, design, corner cases, and bugs
May need to create Spinwick server by adding label = “Set up cloud test server”. The server is created in a few minutes
Add QA and UX resources as required
If there are config setting changes you will need to ask Development to change the setting for you
If you need to test email notifications, you can set the email configuration based on on settings contained on GitHub Internal Information Repository Platform-Private
Work with developers to ensure the sprint work accomplishes highest priority bugs and projects on release plan/roadmap
Jira is the system used to manage work items to be completed by the development and QA team
More information on how Jira is used can be found here
Ensure tickets are available for features
Prioritize bugs
Answer questions posted by team members in planning or on tickets
Participate in Release testing per QA assignments
Test features and provide input on PRs from Developers and Community members
Inform Release Manager and QA team of any changes that need to be released as a dot release (security or critical bug fixes)
Participate in any testing or validation required to verify fixes
Ensure fixes are moving through development and review processes efficiently
Provide Release Manager with information for changelogs and release announcements
Participate in Release Retrospectives (see example Release Retrospective Doc)
Provide feedback from PM perspective and offer ideas for improving the release process
Provide feature demos on customer calls, for customer training initiatives and for Mattermost Academy
Participate in events and conferences
Update/create documentation for features/PRs
Maintain documentation on feature proposals (reference all design and development documentation)
Release notes should be written targeting an international IT Admin
Guidelines for documentation
Any in product instructions or documentation should never contain hard-coded links
A redirect page from about.mattermost.com should be used in product instructions. (See instructions here)
Maintain product accuracy on mattermost.com/product and roadmap
Author Forum, blog and release announcement posts
Example (link to Eric’s permissions post)
Other Marketing (eg; future webinars, event participation, etc)
Provide Roadmap status updates for Enterprise clients
Assist with Customer Support - Tier 2 on call weekly rotation
PMs should be on sales/customer calls often; if not on at least a couple per week then request to be added in the CSM:PM channel and Pre-sales channel
Document and post feedback in Salesforce
Add/update Jira tickets to capture feature requests
Participate in and contribute updates via the Customer Request Triage meeting
Verify bugs reported by customers
Answer customer questions in Premier Support (PS: Customer name) Channels and in internal channels by CSM and Sales
Feature and improvement requests from our Enterprise customers are logged by Customer Engineers, Customer Success, and Support in productboard.
Please encourage colleagues to file feedback in productboard when they are discussing requests in Mattermost channels, so that we have single source with all requests. PMs are responsible for reviewing the productboard feedback, and assigning it to relevant feature ideas. As they are reviewing the requests, PMs may also:
Work with Customer Success and Sales to clarify use cases, root issues, and pain points as well as the priority of the request to the customer
Propose alternate solutions and workarounds when they are available
Provide feedback on whether it's a "Won't Do" feature that we are unlikely to add to the product
Update the feature idea to link any implementation or design tickets
Update the Effort for the feature with a SWAG from the Engineering team
Update the feature idea to have a release timeframe (3 months, 6 months, future) or release version if the feature is planned
After adding the feedback to the relevant idea in productboard, the PM comments and mentions the reporter so they are aware the feedback has been processed, and then marks the item as Processed.
Ensure devs are aware and included on community contribution projects
Prep Help Wanted tickets with specifications on feature and designs as needed
Help teams come up with and prepare community contribution campaigns
Answer questions and coordinate resources to community contributors
Review community contributed PRs
Product Managers rotate responsibility weekly for answering product question escalations on Twitter. Twitter is monitored by the marketing team, and they will @mention the PM on rotation in the Twitter channel when they need to escalate a question.
The PM on rotation can be found in the header of the Mattermost Twitter channel. The rotation switches on Monday and is scheduled alphabetically by first name. The PM on rotation will be mentioned on the first day of their rotation.
Increase productivity of department
Make progress on quarterly goals and OKRs for department
Enable other departments
Training
Develop features for internal systems
Increase community awareness
Research and propose additional ways to engage with existing community and identify new opportunities for community engagement
Attendees: |
|
Objectives: |
|
Time: |
|
Meeting Preparation |
|
During Meeting |
|
Post Meeting |
|
Attendees: |
|
Format: |
|
Time: |
|
Meeting Preparation |
|
During Meeting |
|
Post Meeting |
|
To officially release a feature, it should meet the following criteria:
Scalable: Works for 60k concurrent connections, 60M rows in the database, and in High Availability
Cross Platform: Works on all web view sizes, mobile apps, desktop apps
Measurable: Telemetry added where appropriate
Documented: Complete documentation is available
Secure: Reviewed internally for security, and included in future security reviews
Accessible: Accessibility has been added for user interface components
Logged: Audit log entries have been added to allow System Admins to troubleshoot issues
Compliant: Anything needed for compliance is tracked in logs
Documentation that is linked in-product should always use a redirect from www.mattermost.com instead of the docs.mattermost.com site, to ensure links are not broken in the event that they are moved on the docs site.
To set up a redirect, you must have admin access to www.mattermost.com. Marketing can assist with this access or @jason.blais or @katie.wiersgalla can add a redirect for you.
If you have access, follow these steps:
Log in to the administration panel for www.mattermost.com
From the left-hand sidebar, go to SEO > Redirects
On the top of the screen, ensure you are on the Redirects - Yoast SEO page header on the Redirects tab
Under Type, choose 301 Moved Permanently
option (this is the default option)
In the Old url field, enter in the new direct you want to use in-product in the format of /pl/default-page-description
. Update the page description with your page information
In the Url field, enter in the full URL to the page on docs.mattermost.com
Click the Add Redirect botton and verify your entry is added to the list. You may need to page through to find your entry
Test your redirect URL. This will be the URL in the format of https://www.mattermost.com/pl/default-page-description