Roles

Purpose: Define team roles and responsibilities for PermaplanT workflows.

Audience: All team members and contributors who need to understand organizational structure.

Role Assignment Guidelines

  • Each role must have a clearly identified primary assignee
  • Backup assignees should be listed when available
  • Role changes require approval from the Product Manager
  • Cross-training between primary and backup assignees is encouraged

Role Definitions

Product Manager

Responsibilities:

  • Set product priorities and roadmap direction
  • Make final decisions on feature requirements
  • Approve release labels
  • Coordinate with contributors

Current Assignment: Markus

Architect

Responsibilities:

  • Define technical architecture and design decisions
  • Review complex technical proposals
  • Ensure system coherence and scalability
  • Guide technology choices and patterns

Current Assignment: Markus

Project Manager

Responsibilities:

  • Coordinate development activities and timelines
  • Facilitate meetings and communication
  • Track project progress and milestones
  • Manage sprint planning and execution

Current Assignment: Liza Backup: Eszter

Triager

Responsibilities:

  • Perform initial triage on newly created issues
  • Evaluate issue quality and completeness
  • Decide if issue is ready for backlog or needs refinement
  • Route well-formulated issues directly to backlog
  • Assign issues requiring enhancement to Refiner

Current Assignment: Liza

Refiner

Responsibilities:

  • Enhance issues flagged by Triager as needing refinement
  • Add detailed descriptions and context to issues
  • Assign appropriate labels and priorities
  • Add estimates assessments
  • Ensure issues have sufficient information for development
  • Maintain issue queue quality
  • Coordinate refinement work distribution

Current Assignment: everyone, refinement is to be done during issue::issue-review

Review Manager

  • remind others to review and assign for review
  • look if there are gaps in review, e.g., MR not yet tested or not code-reviewed
  • put attention to issues that are important or urgent to be reviewed
  • check quality of reviews for "please merge" MRs and give okay
  • improve reviewer checklists, e.g. verify if e2e tests test what they should
  • (un)tick what was done in checklists

Current Assignment: Mo

Tour Owner

Responsibilities:

  • Reviewing MRs that affect the guided tour (i.e. tagged with affects_guided-tour label)
  • Updating and adapting the guided tour to align with the changes introduced by these MRs, or by any scraper data changes
  • Ensuring the MRs affecting the guided tour include sufficient information on how the guided tour is affected

Current Assignment: Vseslav

Performance Assurance

  • makes sure performance is according requirements (written in use cases)
  • finds gaps between user expectations and requirements (written in use cases)
  • responsible that OpenTelemetry setup works correctly and everyone can use it
  • checks for any regressions in frontend and backend performance
  • updates research document and creates issues for the most important performance topics to investigate
  • gives update of performance data before releases

Current Assignment: Lukas

Quality Assurance

Responsibilities:

  • Responsible that e2e tests work correctly
  • Ensure code quality standards
  • Verify functionality meets requirements
  • Manual tests, except of data related

Current Assignment: Chris

Tester

Responsibilities:

  • Execute manual test cases before releases
  • Generate and complete test reports
  • Document test results and link issues for failures
  • Identify and report bugs and regressions
  • Verify fixes and retest problematic areas
  • Maintain and improve test case documentation

Current Assignment: Cycled among team members Backup: Release Manager

Release Manager

Responsibilities:

  • Manage release cycles and deployments
  • Update affected issues/MRs after merges
  • Coordinate hotfixes and emergency releases
  • Maintain release documentation

Current Assignment: Lukas Backup: Hannes

Developer

Responsibilities:

  • Implement features and bug fixes according to issue specifications
  • Write tests for code changes to ensure quality
  • Follow coding guidelines and best practices
  • Update documentation for code changes
  • Communicate progress and blockers in assigned issues

Assignment: This role represents active code contributors. They are tagged with /Developer in Keycloak and listed in doc/authors.md in the top section.

Contributor

Responsibilities:

  • Contribute to the project in any capacity (code, documentation, testing, issue reporting)
  • Follow project guidelines and workflows
  • Be respectful to each other
  • Participate in reviews and provide constructive feedback
  • Help improve project quality and sustainability

Note: This is the most general role encompassing anyone who contributes to Perma. All other roles are specialized forms of contribution.