Community Tech/Team Processes
This page is under construction.
Please help review and edit this page.
This page is intended for Community Tech team members to share information about internal processes and norms. This document serves to catalog information, expectations, cadences, and good practices for:
- Community Wishlist Survey
For developer-specific processes, please visit Community_Tech/Development
Although everyone on CommTech should feel empowered to edit and make comments/suggestions on this doc, James McLeod is the primary owner and is accountable for keeping it updated as we refine our processes together.
Main CommTech Workboard: https://phabricator.wikimedia.org/project/board/1274
List of Sprint Milestones: https://phabricator.wikimedia.org/project/subprojects/1274
Community Wishlist SurveyEdit
How do we implement wishes?Edit
To make sure we implement wishes in a balanced way we thought of a way to share responsibilities. One dev in the team can we a "wish lead" for one of the wishes while others are the "wish devs".
What does it mean to be a wish lead?Edit
Does NOT mean
- To be responsible for the whole project
- To make technical decisions on your own
- To work in isolation or to feel like you have to do most of it
- To have all the answers
What it means
- To work closely with Natalia helping to shape the project's technical requirements and possible challenges
- To work closely with Natalia, James, and Karolin cutting tickets, pruning phab, and creating a balanced timeline
- To say NO and trim the fat of MVPs
- To tackle first any tasks that are blocking the team or delegate them
- To be responsible for the release checklist and call out any possible delays and setbacks asap
- To organize work in a way that the team can be the most productive
- To keep everyone in sync and be the contact person for this wish
- To kickstart and open up the floor for healthy discussions about what's working and what's not working for the project
- Technical planning is a group activity and should not fall on the Lead alone
- Facilitating these conversations and perhaps having done some preliminary research to speed things up would be on the Lead's lap
- Makes sure that while we can have two wishes going on at the same time, they shouldn't be in the same phase in parallel (phase 1: strategise/discover/define, phase 2: develop, phase 3: deliver; taken from the WMF's Inclusive Product Playbook)
- Gets informed by wish devs about status updates through wish channel
Roles & ResponsibilitiesEdit
People and roles within our teamEdit
|Karolin Siebert||Engineering Manager|
|Dayllan Maza||Lead Engineer/Tech Lead|
|Natalia Rodriguez||Product Manager|
|Szymon Grabarczuk||Community Relations Specialist|
|Dom Walden||QA Engineer|
|Nicolas Ayoub||UX Designer|
|James McLeod||Technical Program Manager|
Specific tasks and responsibilities per roleEdit
what we expect you to do
tasks that allow you to fill your role
|Lead Engineer/Tech Lead||
|Community Relations Specialist||
|Quality Assurance Engineer||
|Technical Program Manager||
indicates who Drives, Approves, Consults, and is Informed for CommTech decisions
|Product Manager||Technical Program Manager||Engineering Manager||Technical Lead||Quality Assurance Engineer||UX Designer||Engineers||Community Relations Specialist||Director of Product Management||Other|
|Set product strategy||Approver||Informed||Consulted||Consulted||Consulted||Consulted||Consulted||Consulted||Approver|
|Set roadmap + goals||Driver||Consulted||Consulted||Consulted||Consulted||Consulted||Consulted||Consulted||Approver||Consulted|
|Prioritize feature development||Driver||Consulted||Consulted||Driver||Consulted||Consulted||Consulted||Consulted||Informed|
|Prioritize bug fixes||Approver||Consulted||Consulted||Consulted||Driver||Consulted||Consulted||Informed||Informed|
|Define user research needs + strategies||Approver||Informed||Consulted||Consulted||Informed||Driver||Consulted||Consulted||Informed|
|Manage Process Improvements and team norms/artifacts||Approver||Driver||Consulted||Consulted||Consulted||Consulted||Consulted||Consulted|
|Plan Offsites (attendees, budget, travel)||Consulted||Driver||Approver||Consulted||Consulted||Consulted||Consulted||Consulted||Informed||Consulted|
|Plan Offsite Content||Approver||Driver||Consulted||Consulted||Consulted||Consulted||Consulted||Consulted||Informed|
|Collaboration & Communication|
|Organise collab events and sessions||Approver||Approver||Driver||Consulted||Consulted||Informed||Consulted||Informed||Informed|
|Plan sync and async comms and alignment||Approver||Approver||Driver||Consulted||Consulted||Informed||Consulted||Informed||Informed|
|Have weekly conversations with Engineers||Informed||Informed||Driver||Informed||Informed||Informed||Approver||Informed||Informed|
|Engineering Resource Recruitment and Allocation||Approver||Informed||Driver||Consulted||Informed||Informed||Informed||Informed|
|Coordinate Team Dependencies||Consulted||Approver||Driver||Consulted||Consulted||Consulted||Consulted||Consulted||Informed|
|Professional Development for Engineers||Informed||Informed||Driver||Consulted||Consulted||Consulted||Consulted||Consulted||Informed|
|Onboard new team members||Approver||Approver||Driver||Consulted||Consulted||Consulted||Consulted||Consulted||Informed|
|Determine Technical Approach||Informed||Informed||Approver||Driver||Consulted||Consulted||Consulted||Informed||Informed|
|Maintain testing infrastructure||Informed||Informed||Approver||Consulted||Driver||Consulted||Consulted||Consulted|
|Team Tool Creation and Management||Consulted||Informed||Approver||Consulted||Consulted||Consulted||Driver||Informed|
|Keep Community Informed||Approver||Consulted||Consulted||Consulted||Consulted||Consulted||Consulted||Driver||Informed|
|Keep public team and project pages up to date||Approver||Driver||Consulted||Consulted||Consulted||Consulted||Consulted||Consulted||Informed|
- Phabricator (often affectionately referred to as Phab) is Wikimedia Foundation’s primary task management and bug tracking system.
- New to Phab? Visit this page on MediaWiki to learn more.
- A distinct piece of work within Phabricator (e.g., https://phabricator.wikimedia.org/T283897) is referred to as a task or a ticket.
- An epic is also a type of task within Phabricator. Epics are typically used to house groups of tasks (as sub-tasks).
|Column header||What kinds of tasks live here?||Who moves tasks into this column?|
|New & TBD Tickets||Newly-created tasks in which CommTech is tagged||Anyone!
This is the default column for any tasks tagged with Community-Tech.
|Freezer||Tasks that we won’t be able to work on now (i.e., not in Unbreak Now!, not within the scope of a prioritized wish), and we don’t anticipate working on in the future. This column should be used sparingly, as an alternative to declining the task or untagging CommTech.||Product Manager, Tech Lead, Engineering Manager, Engineer, TPgM|
|Engineering Backlog||Tasks that we won’t be able to work on now (i.e., not in Unbreak Now!, not within the scope of a prioritized wish), but would like to refine/work on in the future.||Product Manager, Tech Lead, Engineering Manager, Engineer, TPgM|
|Epics||Parent tasks tagged as Epic, which likely carry over multiple sprints.||Product Manager, Tech Lead, Engineering Manager, UX Designer, Engineer, QA Engineer, TPgM|
|Following||Tasks that CommTech won’t work on directly, but want to keep an eye on.||Product Manager, Tech Lead, Engineering Manager, UX Designer, Engineer, QA Engineer, TPgM|
|To Be Estimated/Discussed||Tasks that need to be refined and/or estimated at an upcoming Estimation meeting.||Product Manager, Tech Lead, Engineering Manager|
|Estimated||Tasks that have been discussed, estimated with a point value, and are ready to be prioritized within a present or future sprint.||Product Manager, Tech Lead, Engineering Manager, TPgM|
|CommTech-Sprint-x (where x is a numbered sprint)||Milestone column! Tasks that are actively being worked on, or prioritized for the immediate future. Opens a separate kanban board for active & future sprints.||Product Manager, Tech Lead, Engineering Manager, UX Designer, Engineer, QA Engineer, TPgM|
- CommTech Sprint Kanban boards
- Each sprint board represents a 2-week timespan (we also keep a log of CommTech sprints, outside of Phab, here).
|Column header||What kinds of tasks live here?||Who moves tasks into this column?|