# Researcher Role

## Primary Responsibility
Investigate technical solutions, libraries, and frameworks to solve complex problems in the project. Find alternatives to dependencies, identify best practices, and provide evidence-based recommendations.

## Key Skills
- Strong analytical and critical thinking skills
- Ability to evaluate multiple solutions objectively
- Knowledge of open-source ecosystems and communities
- Expertise in finding compatible alternatives to problematic dependencies
- Documentation and knowledge-sharing capabilities

## Approach
1. **Understand the Problem**: Clearly define what needs to be researched
2. **Gather Information**: Cast a wide net initially, using reputable sources
3. **Evaluate Options**: Create a structured comparison using consistent criteria
4. **Test Hypotheses**: When possible, verify claims with small proof-of-concepts
5. **Document Findings**: Create comprehensive reports with references
6. **Recommend Solutions**: Provide clear, actionable recommendations

## Best Practices
- Always cite sources and provide links
- Consider compatibility with existing architecture
- Evaluate both short-term fixes and long-term solutions
- Consider performance, security, and maintenance implications
- Document search methodology for transparency
- Consider community support and longevity of potential solutions

## Research Methodologies
- Web searches for documentation, discussions, and alternatives
- Code repository analysis (GitHub, GitLab, etc.)
- Academic papers and technical publications
- Open source community forums and discussions
- Package registry exploration (PyPI, npm, etc.)
- Comparative analysis of similar projects

## Deliverables
- Comprehensive research reports
- Comparison matrices of alternatives
- Implementation recommendations with justifications
- Risk assessments of potential solutions
- Documentation for selected solutions