Product Manager Toolkit
Essential tools and frameworks for modern product management, from discovery to delivery.
Table of Contents
-
Quick Start
-
Core Workflows
-
Feature Prioritization
-
Customer Discovery
-
PRD Development
-
Tools Reference
-
RICE Prioritizer
-
Customer Interview Analyzer
-
Input/Output Examples
-
Integration Points
-
Common Pitfalls
Quick Start
For Feature Prioritization
Create sample data file
python scripts/rice_prioritizer.py sample
Run prioritization with team capacity
python scripts/rice_prioritizer.py sample_features.csv --capacity 15
For Interview Analysis
python scripts/customer_interview_analyzer.py interview_transcript.txt
For PRD Creation
-
Choose template from references/prd_templates.md
-
Fill sections based on discovery work
-
Review with engineering for feasibility
-
Version control in project management tool
Core Workflows
Feature Prioritization Process
Gather → Score → Analyze → Plan → Validate → Execute
Step 1: Gather Feature Requests
-
Customer feedback (support tickets, interviews)
-
Sales requests (CRM pipeline blockers)
-
Technical debt (engineering input)
-
Strategic initiatives (leadership goals)
Step 2: Score with RICE
Input: CSV with features
python scripts/rice_prioritizer.py features.csv --capacity 20
See references/frameworks.md for RICE formula and scoring guidelines.
Step 3: Analyze Portfolio
Review the tool output for:
-
Quick wins vs big bets distribution
-
Effort concentration (avoid all XL projects)
-
Strategic alignment gaps
Step 4: Generate Roadmap
-
Quarterly capacity allocation
-
Dependency identification
-
Stakeholder communication plan
Step 5: Validate Results
Before finalizing the roadmap:
-
Compare top priorities against strategic goals
-
Run sensitivity analysis (what if estimates are wrong by 2x?)
-
Review with key stakeholders for blind spots
-
Check for missing dependencies between features
-
Validate effort estimates with engineering
Step 6: Execute and Iterate
-
Share roadmap with team
-
Track actual vs estimated effort
-
Revisit priorities quarterly
-
Update RICE inputs based on learnings
Customer Discovery Process
Plan → Recruit → Interview → Analyze → Synthesize → Validate
Step 1: Plan Research
-
Define research questions
-
Identify target segments
-
Create interview script (see references/frameworks.md )
Step 2: Recruit Participants
-
5-8 interviews per segment
-
Mix of power users and churned users
-
Incentivize appropriately
Step 3: Conduct Interviews
-
Use semi-structured format
-
Focus on problems, not solutions
-
Record with permission
-
Take minimal notes during interview
Step 4: Analyze Insights
python scripts/customer_interview_analyzer.py transcript.txt
Extracts:
-
Pain points with severity
-
Feature requests with priority
-
Jobs to be done patterns
-
Sentiment and key themes
-
Notable quotes
Step 5: Synthesize Findings
-
Group similar pain points across interviews
-
Identify patterns (3+ mentions = pattern)
-
Map to opportunity areas using Opportunity Solution Tree
-
Prioritize opportunities by frequency and severity
Step 6: Validate Solutions
Before building:
-
Create solution hypotheses (see references/frameworks.md )
-
Test with low-fidelity prototypes
-
Measure actual behavior vs stated preference
-
Iterate based on feedback
-
Document learnings for future research
PRD Development Process
Scope → Draft → Review → Refine → Approve → Track
Step 1: Choose Template
Select from references/prd_templates.md :
Template Use Case Timeline
Standard PRD Complex features, cross-team 6-8 weeks
One-Page PRD Simple features, single team 2-4 weeks
Feature Brief Exploration phase 1 week
Agile Epic Sprint-based delivery Ongoing
Step 2: Draft Content
-
Lead with problem statement
-
Define success metrics upfront
-
Explicitly state out-of-scope items
-
Include wireframes or mockups
Step 3: Review Cycle
-
Engineering: feasibility and effort
-
Design: user experience gaps
-
Sales: market validation
-
Support: operational impact
Step 4: Refine Based on Feedback
-
Address technical constraints
-
Adjust scope to fit timeline
-
Document trade-off decisions
Step 5: Approval and Kickoff
-
Stakeholder sign-off
-
Sprint planning integration
-
Communication to broader team
Step 6: Track Execution
After launch:
-
Compare actual metrics vs targets
-
Conduct user feedback sessions
-
Document what worked and what didn't
-
Update estimation accuracy data
-
Share learnings with team
Positioning Statement Framework
Create a Geoffrey Moore-style positioning statement to clarify product differentiation and value. Use this before writing PRDs, go-to-market plans, or pitch decks.
Core Positioning Template
For [target user/persona] who [underserved need or painful moment], [product name] is a [product category] that [primary outcome delivered]. Unlike [main alternative: competitor, workaround, or status quo], [product name] [unique differentiation in outcome terms].
One-Sentence Value Proposition
Write a single sentence a PM can reuse in docs and slides.
Differentiation Proof Points
List 3 concrete proof points that support the "unlike" claim. Focus on outcomes and evidence, not adjectives.
Writing Rules
-
Use persona-first language.
-
Focus on outcomes, not feature lists.
-
Keep wording specific and testable.
-
"Unlike X" should name the real alternative, including status quo.
-
Strong differentiation is about outcomes and evidence, not adjectives.
Optional Variants
-
Executive variant: Shorter strategic wording for board decks.
-
Customer-facing variant: Clear plain-language wording for marketing.
Next Steps
-
Generate 3 alternate positioning directions (Recommended)
-
Create a competitor comparison message matrix
-
Convert into homepage headline + subheadline options
Recommendation Canvas
Evaluate product opportunities holistically using a structured canvas that connects problem framing to solution evidence. Useful for investment decisions, portfolio reviews, and stakeholder alignment.
Canvas Sections
Product Name
[Name of the product or service]
Business Outcome
[Direction] [Metric] [Outcome] [Context] [Acceptance criteria]
Product Outcome
[Direction] [Metric] [Outcome] [Context] [Acceptance criteria]
Problem Statement Narrative
[2-3 sentences telling the persona's story from their point-of-view]
Solution Hypothesis
If we [action/solution] for [target persona], then we will [desirable outcome].
Tiny Acts of Discovery
- [Small experiment focused on viability]
- [Small experiment focused on customer value]
Proof-of-Life
Within [timeframe], we observe:
- [Quantitative measurable outcome]
- [Qualitative measurable outcome]
Positioning Statement
For [target persona] that need [underserved need], [product] is a [category] that [benefit]. Unlike [competitor], [product] provides [differentiation].
Assumptions & Unknowns
- [Assumption 1]
- [Assumption 2]
Issues/Risks (PESTEL lens)
- Political: [Risk]
- Economic: [Risk]
- Social: [Risk]
- Technological: [Risk]
- Environmental: [Risk]
- Legal: [Risk]
Value Justification
[Yes/Yes with caveats/No with alternatives/No] Justification: [Why this is or isn't valuable]
Success Metrics
- [SMART metric 1]
- [SMART metric 2]
- [SMART metric 3]
What's Next
- [Next step with owner]
- [Next step with owner]
When to Use
-
Evaluating whether to invest in a new product or feature.
-
Preparing for portfolio review or investment committee.
-
Aligning stakeholders on go/no-go decisions.
Tools Reference
RICE Prioritizer
Advanced RICE framework implementation with portfolio analysis.
Features:
-
RICE score calculation with configurable weights
-
Portfolio balance analysis (quick wins vs big bets)
-
Quarterly roadmap generation based on capacity
-
Multiple output formats (text, JSON, CSV)
CSV Input Format:
name,reach,impact,confidence,effort,description User Dashboard Redesign,5000,high,high,l,Complete redesign Mobile Push Notifications,10000,massive,medium,m,Add push support Dark Mode,8000,medium,high,s,Dark theme option
Commands:
Create sample data
python scripts/rice_prioritizer.py sample
Run with default capacity (10 person-months)
python scripts/rice_prioritizer.py features.csv
Custom capacity
python scripts/rice_prioritizer.py features.csv --capacity 20
JSON output for integration
python scripts/rice_prioritizer.py features.csv --output json
CSV output for spreadsheets
python scripts/rice_prioritizer.py features.csv --output csv
Customer Interview Analyzer
NLP-based interview analysis for extracting actionable insights.
Capabilities:
-
Pain point extraction with severity assessment
-
Feature request identification and classification
-
Jobs-to-be-done pattern recognition
-
Sentiment analysis per section
-
Theme and quote extraction
-
Competitor mention detection
Commands:
Analyze interview transcript
python scripts/customer_interview_analyzer.py interview.txt
JSON output for aggregation
python scripts/customer_interview_analyzer.py interview.txt json
Input/Output Examples
RICE Prioritizer Example
Input (features.csv):
name,reach,impact,confidence,effort Onboarding Flow,20000,massive,high,s Search Improvements,15000,high,high,m Social Login,12000,high,medium,m Push Notifications,10000,massive,medium,m Dark Mode,8000,medium,high,s
Command:
python scripts/rice_prioritizer.py features.csv --capacity 15
Output:
============================================================ RICE PRIORITIZATION RESULTS
📊 TOP PRIORITIZED FEATURES
-
Onboarding Flow RICE Score: 16000.0 Reach: 20000 | Impact: massive | Confidence: high | Effort: s
-
Search Improvements RICE Score: 4800.0 Reach: 15000 | Impact: high | Confidence: high | Effort: m
-
Social Login RICE Score: 3072.0 Reach: 12000 | Impact: high | Confidence: medium | Effort: m
-
Push Notifications RICE Score: 3840.0 Reach: 10000 | Impact: massive | Confidence: medium | Effort: m
-
Dark Mode RICE Score: 2133.33 Reach: 8000 | Impact: medium | Confidence: high | Effort: s
📈 PORTFOLIO ANALYSIS
Total Features: 5 Total Effort: 19 person-months Total Reach: 65,000 users Average RICE Score: 5969.07
🎯 Quick Wins: 2 features • Onboarding Flow (RICE: 16000.0) • Dark Mode (RICE: 2133.33)
🚀 Big Bets: 0 features
📅 SUGGESTED ROADMAP
Q1 - Capacity: 11/15 person-months • Onboarding Flow (RICE: 16000.0) • Search Improvements (RICE: 4800.0) • Dark Mode (RICE: 2133.33)
Q2 - Capacity: 10/15 person-months • Push Notifications (RICE: 3840.0) • Social Login (RICE: 3072.0)
Customer Interview Analyzer Example
Input (interview.txt):
Customer: Jane, Enterprise PM at TechCorp Date: 2024-01-15
Interviewer: What's the hardest part of your current workflow?
Jane: The biggest frustration is the lack of real-time collaboration. When I'm working on a PRD, I have to constantly ping my team on Slack to get updates. It's really frustrating to wait for responses, especially when we're on a tight deadline.
I've tried using Google Docs for collaboration, but it doesn't integrate with our roadmap tools. I'd pay extra for something that just worked seamlessly.
Interviewer: How often does this happen?
Jane: Literally every day. I probably waste 30 minutes just on back-and-forth messages. It's my biggest pain point right now.
Command:
python scripts/customer_interview_analyzer.py interview.txt
Output:
============================================================ CUSTOMER INTERVIEW ANALYSIS
📋 INTERVIEW METADATA Segments found: 1 Lines analyzed: 15
😟 PAIN POINTS (3 found)
-
[HIGH] Lack of real-time collaboration "I have to constantly ping my team on Slack to get updates"
-
[MEDIUM] Tool integration gaps "Google Docs...doesn't integrate with our roadmap tools"
-
[HIGH] Time wasted on communication "waste 30 minutes just on back-and-forth messages"
💡 FEATURE REQUESTS (2 found)
- Real-time collaboration - Priority: High
- Seamless tool integration - Priority: Medium
🎯 JOBS TO BE DONE
When working on PRDs with tight deadlines I want real-time visibility into team updates So I can avoid wasted time on status checks
📊 SENTIMENT ANALYSIS
Overall: Negative (pain-focused interview) Key emotions: Frustration, Time pressure
💬 KEY QUOTES
• "It's really frustrating to wait for responses" • "I'd pay extra for something that just worked seamlessly" • "It's my biggest pain point right now"
🏷️ THEMES
- Collaboration friction
- Tool fragmentation
- Time efficiency
Integration Points
Compatible tools and platforms:
Category Platforms
Analytics Amplitude, Mixpanel, Google Analytics
Roadmapping ProductBoard, Aha!, Roadmunk, Productplan
Design Figma, Sketch, Miro
Development Jira, Linear, GitHub, Asana
Research Dovetail, UserVoice, Pendo, Maze
Communication Slack, Notion, Confluence
JSON export enables integration with most tools:
Export for Jira import
python scripts/rice_prioritizer.py features.csv --output json > priorities.json
Export for dashboard
python scripts/customer_interview_analyzer.py interview.txt json > insights.json
Common Pitfalls to Avoid
Pitfall Description Prevention
Solution-First Jumping to features before understanding problems Start every PRD with problem statement
Analysis Paralysis Over-researching without shipping Set time-boxes for research phases
Feature Factory Shipping features without measuring impact Define success metrics before building
Ignoring Tech Debt Not allocating time for platform health Reserve 20% capacity for maintenance
Stakeholder Surprise Not communicating early and often Weekly async updates, monthly demos
Metric Theater Optimizing vanity metrics over real value Tie metrics to user value delivered
Best Practices
Writing Great PRDs:
-
Start with the problem, not the solution
-
Include clear success metrics upfront
-
Explicitly state what's out of scope
-
Use visuals (wireframes, flows, diagrams)
-
Keep technical details in appendix
-
Version control all changes
Effective Prioritization:
-
Mix quick wins with strategic bets
-
Consider opportunity cost of delays
-
Account for dependencies between features
-
Buffer 20% for unexpected work
-
Revisit priorities quarterly
-
Communicate decisions with context
Customer Discovery:
-
Ask "why" five times to find root cause
-
Focus on past behavior, not future intentions
-
Avoid leading questions ("Wouldn't you love...")
-
Interview in the user's natural environment
-
Watch for emotional reactions (pain = opportunity)
-
Validate qualitative with quantitative data
Quick Reference
Prioritization
python scripts/rice_prioritizer.py features.csv --capacity 15
Interview Analysis
python scripts/customer_interview_analyzer.py interview.txt
Generate sample data
python scripts/rice_prioritizer.py sample
JSON outputs
python scripts/rice_prioritizer.py features.csv --output json python scripts/customer_interview_analyzer.py interview.txt json
Reference Documents
-
references/prd_templates.md
-
PRD templates for different contexts
-
references/frameworks.md
-
Detailed framework documentation (RICE, MoSCoW, Kano, JTBD, etc.)
Tool Reference
rice_prioritizer.py
RICE framework implementation with portfolio analysis and quarterly roadmap generation.
Flag Type Default Description
input
positional (optional) CSV file with features or "sample" to create sample
--capacity
int 10 Team capacity per quarter in person-months
--output
choice text Output format: text , json , csv
CSV columns: name, reach, impact, confidence, effort, description
Impact values: massive, high, medium, low, minimal Confidence values: high (100%), medium (80%), low (50%) Effort values: xl (13mo), l (8mo), m (5mo), s (3mo), xs (1mo)
python scripts/rice_prioritizer.py sample # Create sample CSV python scripts/rice_prioritizer.py features.csv # Default capacity (10) python scripts/rice_prioritizer.py features.csv --capacity 20 # Custom capacity python scripts/rice_prioritizer.py features.csv --output json # JSON for integration python scripts/rice_prioritizer.py features.csv --output csv # CSV for spreadsheets
customer_interview_analyzer.py
Keyword-based interview transcript analysis for extracting actionable insights.
Argument Type Default Description
interview_file
positional (required) Path to interview transcript text file
json
positional (optional) Add "json" as second arg for JSON output
Extraction capabilities: pain points (with severity), feature requests (with type and priority), jobs-to-be-done patterns, sentiment analysis, key themes, notable quotes, metrics mentioned, competitor mentions.
python scripts/customer_interview_analyzer.py interview.txt # Human-readable python scripts/customer_interview_analyzer.py interview.txt json # JSON output
Troubleshooting
Problem Cause Solution
RICE scores cluster together Impact/confidence not differentiated enough Calibrate scoring rubric with team; use specific examples for each level
Roadmap overcommits capacity Effort estimates too optimistic Add 20% buffer; validate estimates with engineering before finalizing
Interview analysis misses key insights Transcript is too short or uses unexpected phrasing Supplement with manual review; ensure transcripts capture full context
Stakeholders disagree with priorities Different value perceptions Share raw RICE inputs transparently; allow stakeholders to adjust weights
Quick wins dominate roadmap Bias toward low-effort items Reserve 30-40% of capacity for strategic big bets
PRD scope creeps after approval Insufficient out-of-scope definition Explicitly list excluded items; require change request for additions
Feature factory behavior Shipping without measuring impact Define success metrics in PRD before development starts
Success Criteria
Criterion Target How to Measure
Prioritization velocity <2 hours from data to ranked backlog Time from CSV input to roadmap output
Interview analysis coverage
80% of pain points captured Compare tool output to manual expert review
Estimation accuracy Actual effort within 1.5x of RICE estimate Track actual vs estimated effort post-delivery
Roadmap confidence
70% of Q1 roadmap items shipped in quarter Shipped items / Planned items
Discovery cadence 5-8 interviews per segment per quarter Count completed interviews
PRD quality 0 scope change requests after approval Track change requests per PRD
Feature impact rate
60% of shipped features hit success metrics Post-launch metric comparison
Scope & Limitations
In scope:
-
RICE prioritization with portfolio analysis
-
Quarterly roadmap generation with capacity planning
-
Customer interview transcript analysis
-
Pain point, feature request, and JTBD extraction
-
Sentiment analysis using keyword heuristics
-
PRD development process and templates
-
CSV/JSON import and export
Out of scope:
-
Real-time analytics integration (use Amplitude/Mixpanel APIs)
-
NLP model-based analysis (tool uses keyword heuristics, not ML)
-
Multi-language transcript analysis (English only)
-
Visual wireframe or prototype generation
-
Competitive intelligence gathering (see business-growth skills)
-
Revenue impact modeling (see finance skills)
Integration Points
Tool / Platform Integration Method Use Case
Jira / Linear --output json from rice_prioritizer Import prioritized features as tickets
Google Sheets --output csv from rice_prioritizer Share roadmap with stakeholders
Dovetail / Notion JSON output from interview analyzer Aggregate interview insights in research repo
agile-product-owner RICE priorities feed sprint backlog Connect strategy to execution
product-strategist OKR cascade informs RICE reach/impact Align features with strategic objectives
Slack / Email Human-readable output from both tools Async stakeholder communication