Growth/Team Norms

From MediaWiki.org
Jump to navigation Jump to search

This page is intended to document the Growth Team's norms and ceremonies. Team ceremonies for Growth is defined as a series of acts and processes performed regularly with the intention of creating an environment that promotes iterative improvement, innovation and productivity.

On this team, process is not intended to become performative, rather it is intended to provide the needed structure to:

  • Improve Iteratively; Learn and Adjust  
    • Experiment
    • Fail Fast
    • Reflect
  • Collaborate
  • Share Knowledge, Wins & Lessons
    • With Each Other
    • Our Communities
    • The Foundation
  • Set and Meet Goals
    • Adding Value/Priorities > Scope  
    • Wikimedia Foundation Annual Plan
    • Short and Long Term

Team ceremonies can be altered if it is collectively determined after trial they are not effective as is. Plans and goals are set as a baseline and something to strive towards. Plans and goals if not met should not result in condemnation or negative tones. Not meeting plans and goals should be viewed as an opportunity to learn what needs to be adjusted, rather it is process, priorities, scope or expectations.

Standup & Team Discussions:[edit]

Standups occur every work day with the exception of Fridays and lasts fifteen minutes each. Standups are an opportunity to share progress on work, raise tasks that could potentially impact others, or to escalate blockers that impede team productivity. Topics that need to be explored in depth are held until discussion time which immediately precedes standup. Team discussion times are traditionally set for 15 minutes, but can be extended by sending a request for time extension to the team's Technical Program Manager (TPgM).

The first person to start standup is voluntary and will then choose who goes next. After each report, the team member will call on whoever hasn’t spoken until everyone has had an opportunity to speak or time has run out.

Board Triage Meetings[edit]

Official Board Triage Meetings are bi-weekly meetings where the team goes through the Needs Discussion/Analysis column of our Phabricator Board to determine:

  • If a task should be prioritized
  • The urgency in which a task should be prioritize
  • If the task is within scope for our team

Based on the team's decision of prioritization and scope, we will leave a comment with our decision and move it into the proper column.

Tickets arrive to the Needs Discussion/Analysis column from the Inbox. Anyone on the team can pull tickets into the Needs Discussion column or Triage but Future column on a rolling basis. The team's TPgM also schedules ad-hoc triage meetings with QA and at least one Engineer.

Sprints:[edit]

Our team sprints are two working weeks and begin with Planning Meetings and end with Retrospectives. Once a sprint starts it is not advised that a Product Manager requests changes to what is being produced. It is the job of the Technical Program Manager to work with the team to adjust and re-prioritize tasks as necessary within the sprint to meet the criteria set during planning. At the end of each sprint, the entire team should discuss what was accomplished as it compares to the criteria agreed upon with the Product Manager and make necessary process adjustments.

Planning Meetings:[edit]

Planning Meetings are bi-weekly meetings attended by the team at the start of a sprint. During the planning meeting, the team identifies and prioritizes tasks that are to be completed for the two-week sprint. Tasks that will be worked on in the current sprint are to be represented on the Current Sprint board.

Grooming Meetings:[edit]

Grooming Meetings are bi-weekly meetings attended by the team at the halfway point of each sprint. During grooming, the team reevaluates the work they have committed to and determines if more or less work should be taken on or if tasks should be reprioritized. If there is additional time in the meeting, the team will look at the Backlog Board and pull tickets into Upcoming as indicators it should be pulled into the next Sprint.

Retrospective Meetings:[edit]

Retrospective Meetings (retros) are bi-weekly meetings attended by the team at the end of each sprint. During Retrospectives, the team revisits action items from the last retrospective and reflects on the two-week sprint by collectively answering the following:

  • Did we meet our acceptance criteria?
  • What have we accomplished?
  • What worked?
  • What could we improve next time?
  • What was confusing?

Action items will be captured during the meeting and due dates and action owners will be assigned.

Google Calendar:[edit]

New members of the team will be added to the Growth team calendar. If a team member will be out of the office for four or more hours during a working day, they are to share it on the team calendar at the earliest indicator that they may be out. This practice will help the team manage expectations when estimating what work can get accomplished during planning. Team ceremonies will also be represented on the Google Calendar.

Google Hangout:[edit]

The team has three google hangouts:

  • Growth (Social): Instant message members of the Growth team with non-work related items
  • Growth: Instant Message members of the Growth team about work related items
  • Humans of the Web: Instant message members of the Growth, Editing and Readers Web team

Gerrit:[edit]

The Growth team uses Gerrit, a code collaboration tool, for peer code review.  

Phabricator:[edit]

Phabricator is the organization’s task/issue tracking tool that houses the Growth team’s user stories, tasks, progress and prioritization of work. Tickets at the top of the Ready for Development column in the Current Sprint Milestone are considered the highest priority and next up in the queue to work on.