[Proposal - Work In Progress - Comments Welcome]

Problem Statement

We want to expand the Core Committer program from its current membership of 9 engineers for the following reasons:

We’d love to expand this membership to 81 core committers - encompassing engineers, PMs, UXers, Doc writers, and more - this calendar year. This document focuses on where we might go in Q4, which involves adding more engineering core committers; initially, these will likely be drawn from partner organizations. In tandem, we will work on defining what a non-engineering core committer looks like, and work to identify community members that meet that definition. Longer term, we will develop strategies to expand the core committer program to 81 members and beyond, and seek to find CCs from outside our partner orgs.

Summary of CC Champion Survey

In May 2021, a survey of CC Champions was conducted. As a reminder, CC champions were edX employees who served as an interface between CCs and edX. Each CC in the pilot was assigned to 2 edX employees as their 2 internal champions. The champions supported the CCs through the pilot to:

This survey sought to understand how the pilot program went and how much effort was required of champions. We discovered that:

Proposal

Lines of Communication

We propose that each CC has a singular point of contact, aligned with a team that owns the area(s) that the CC is working in. We initially debated an “embedded in the team” model, but felt that this would be problematic as it’s easy for requests to fall through the cracks as team members can assume “others will handle this [email/PR/Slack message]”. Via team-based review and communication described below, the CC is effectively embedded in a team, but there is still direct ownership over the relationship. I am using the term “point-of-contact” or POC here rather than “Champion”, which I believe has more implications that only one person, rather than a team, is responsible for the CC.

This singular point-of-contact would take the form of one person on a team, with another as backup. We recommend the backup be the engineering manager for the team, to facilitate routing requests when the first POC is unavailable.

Team-based review and communication: We strongly recommend each team make a shared external-openedx-[teamname] Slack channel with team’s CCs and all team members. The CC’s POC on the team may delegate any needed reviews and merging to others on the team. We also encourage teams to reach out to their CCs for reviews on their own PRs.

We recognize that CCs may work in various areas of the codebase. Therefore, a CC may have multiple POCs depending on area. For example, someone working on LTI as well as maintenance upgrades may have POCs within CE as well as Arch-BOM.

Rollout Plan (Remainder of Q4)