jan/docs/docs/how-we-work/project-management/project-management.md
2024-03-19 10:57:12 +07:00

3.6 KiB

title
Project Management
<head> </head>

We use the Jan Monorepo Project in Github to manage our roadmap and sprint Kanbans.

As much as possible, everyone owns their respective epics and tasks.

:::tip We aim for a loosely coupled, but tightly aligned autonomous culture. :::

  • High-level roadmap: view used at at strategic level, for team wide alignment. Start & end dates reflect engineering implementation cycles. Typically product & design work preceeds these timelines.
  • Standup Kanban: view used during daily standup. Sprints should be up to date.

Organization

Roadmap Labels

  • Roadmap Labels tag large, long-term, & strategic projects that can span multiple teams and multiple sprints
  • Example label: roadmap: Jan has Mobile
  • Roadmaps contain epics

Epics

  • Epics track large stories that span 1-2 weeks, and it outlines specs, architecture decisions, designs
  • Epics contain tasks
  • Epics should always have 1 owner

Milestones

  • Milestones track release versions. We use semantic versioning
  • Milestones span ~2 weeks and have deadlines
  • Milestones usually fit within 2-week sprint cycles

Tasks

  • Tasks are individual issues (feats, bugs, chores) that can be completed within a few days
  • Tasks, except for critical bugs, should always belong to an epic (and thus fit into our roadmap)
  • Tasks are usually named per Conventional Commits
  • Tasks should always have 1 owner

We aim to always sprint on tasks that are a part of the current roadmap.

Kanban

  • no status: issues that need to be triaged (needs an owner, ETA)
  • icebox: issues you don't plan to tackle yet
  • planned: issues you plan to tackle this week
  • in-progress: in progress
  • in-review: pending PR or blocked by something
  • done: done

Triage SOP

  • Urgent bugs: assign to an owner (or @engineers if you are not sure) && tag the current sprint & milestone
  • All else: assign the correct roadmap label(s) and owner (if any)

Request for help

As a result, our feature prioritization can feel a bit black box at times.

We'd appreciate high quality insights and volunteers for user interviews through Discord and Github.