Skip to content

Project teams

Ian Hickson edited this page Nov 28, 2022 · 7 revisions

The Flutter project has many teams, including, but not limited to:

There are also specific cross-cutting areas of work that may have their own subteam and that affect multiple subteams (e.g. accessibility, performance, etc).

We also work closely with other projects, such as Dart and Skia, and with many customers.

Responsibilities

Subteams are responsible for reviewing PRs in their area, triaging issues, and scheduling work. How subteams organize themselves is not defined by this document. This document does not attempt to impose a process, merely a set of responsibilities.

See the Roadmap and What should I work on? pages for details on how to prioritize work.

Reviewing PRs

Please review PRs in your area (based on label and/or repositories). The goal is to have a prompt (less than one week) turnaround for all PRs. Please have goals around handling of PRs with the relevant label and/or in the relevant repository. Please don't leave lingering stale PRs open. All PRs should be actively being worked on. If nobody has the time to work on a PR, it should be closed; the relevant issue can have the "has partial patch" label applied.

Triage

Please triage issues with your label on a regular basis. You may do this in whatever manner you prefer (on your phone while in line for lunch, as a team exercise in a dedicated meeting room, by having some sort of team rotation, whatever).

You must cover these bug lists in particular: https://github.com/flutter/flutter/wiki/Triage#area-focused-triage

  • Assign bugs that you are working on or that you have committed to work on.

  • Unassign bugs you are not working on and have no specific scheduled plans to work on.

  • Make sure that assigned bugs have a month-based milestone (see section below).

See our page on managing issues: https://github.com/flutter/flutter/wiki/Issue-hygiene

Keep an eye out for bugs that should block releases, update the bad builds page accordingly: https://github.com/flutter/flutter/wiki/Bad-Builds

Be conservative when scheduling

Customers always assume things will be done sooner than you promise, and there are always going to be emergencies, so you need slack in your schedule.

You will be more effective, more popular, and your morale will be higher, if you focus on a small set of things and really knock those out of the park, than if you try to do a large number of things and only do a little bit for each, so aim to underpromise and overdeliver.

This may mean your OKRs are more optimistic than what you report as your scheduled timeline. With OKRs we generally try to hit 67% of the plan. With the roadmap we want to hit 150%.

(OKRs are how some team members plan their work, notably it is used by Google engineers.)

Flutter Wiki

Process

Framework repo

The Flutter CLI Tool

Engine repo

Packages repo

Engineering Productivity

User documentation

Clone this wiki locally