Non-Technical Contributor (NTC) Definition


Problem Statement

There are many contributors to the Open edX platform that participate in a variety of ways beyond coding - particularly translators, QA folx, members of the Marketing working group, documentation folx, and more. Whilst the Core Contributor Program, Committer role has focused on code contributors, we want to send the message that all contributors to the platform play a meaningful role and deserve the designation Core Contributor. Therefore the Core Contributor Program has defined the following Non-Technical Contributor (NTC) roles.

Core Contributors have a set of Rights and Responsibilities to the Open edX platform. In exchange for those Rights to contribute, we ask for some Responsibilities: this will include signing a Program Agreement and following the responsibilities of the roles that are laid out below.

Who can become an NTC?

What specific roles required is detailed in the below NTC Role Descriptions section. In general, however, people wishing to be NTCs need to show sustained, active performance in the role prior to being nominated as a NTC. We call this the “3 Cs”: Commitment, Conduct, Caliber. That means if you wish to be a NTC, you should begin by joining the Open edX project and participate in a way that’s meaningful to you. Reach out to us if you don’t know how to begin!

NTC Role Descriptions

Roles are listed below; the person listed next to the role is the person most highly responsible for the definition.

We are asking that all Core Contributors, regardless of role, complete the following requirement:

Sign a Core Contributor Program Agreement, sent to you by Program administrators when you are invited to the program. This Agreement covers all NTC role types, so if you switch to a new role or add on responsibilities of a second, you will not need more paperwork (exception: the Committer role requires a bit more paperwork)

Additionally, some roles may require that CCs take the edX Privacy & Security Course, as well as the edX Accessibility (a11y) course (non-Engineering version). Exemptions and/or additions are listed below each role under the “edX requirements” section.

Project manager (leading Open edX projects and/or working groups) - Nimisha

  • Responsibilities:

    • Effectively and efficiently enable collaboration on Open edX projects and working groups.

    • Perform quality control on the project throughout development to maintain the standards expected.

    • Planning

      • Create long- and short-term plans, including setting targets for milestones and adhering to deadlines.

      • Adjust schedules and targets on the project as needed.

    • Communications

      • Communicate updates and keep the project aligned with their goals.

      • Serve as a point of contact for the project.

    • Collaboration

      • Facilitate group discussions that result in effective decision-making when multiple options are present.

      • Delegate tasks on the project to community members best positioned and interested to complete them.

      • Prefer asynchronous discussions to accommodate global timezones.

  • Access:

    • GitHub - Write Access to GitHub Projects

    • Miro access for facilitating group conversations

    • Calendly account

    • Any additional access, as needed, to support particular projects and working groups that the PM is associated with.

Translation Reviewers - Eden

  • Responsibilities:

    • Translate edX strings into their spoken language(s)

    • Review/accept translations; serve as arbiters of correct translations

    • Attend Transifex Working Group meetings

    • Report edX-specific and uncontextualized strings to the edX team

    • Identify stellar translators in their language and encourage/support them

  • Access:

    • Access they already can get for free: translator access on Transifex, reviewing capabilities for their language(s)

  • edX requirements:

    • Required review of a Transifex training document instead of the privacy and a11y training courses

QA - Sarina

  • Responsibilities:

    • Test the following areas and produce actionable issue reports, following up with coders needing clarification, retesting, etc.

      • Test new features prior to or immediately after release, including accessibility and internationalization aspects

      • Test out/exercise named releases

      • Test and review documentation of features, both new and existing features (maintenance work)

      • Test and review release notes.

  • Access:

    • Potentially read only access to Miro

    • Potentially access to shared Google docs

    • Access they already can get for free: GitHub read access, devstack, student account

  • edX requirements:

    • Take the Engineering version of the a11y course to be able to better test a11y features

Marketing WG members - Eden

  • Responsibilities:

    • Website enhancements to increase consumer site traffic

    • Representing the Open edX project in public events, event planning and organizing (for both online and in person events)

    • Transifex contributions for the Open edX platform & website (Italian, French, Spanish, German)

    • Content Creation: identifying blog content & authors, social media content mgmt., website content in form of videos, images, demos + documentation

  • Access:

    • Website (authoring roles)

    • Transifex translator & reviewer access

    • Social media channel access

    • Shared space to discuss ideas, posts and launch dates (e.g. Adobe)

Documentation - Sarina

  • Responsibilities:

    • Proficiency in professional English

    • Follows the documentation specifications laid out in OEP-19

    • Maintain existing documentation: reviewing/updating documentation as needed, including:

      • Onboarding materials

      • Courses

      • Documentation infrastructure

    • Produce new documentation, including:

      • Test out released features and document their use

      • Test out developer-facing tools (devstack, Tutor) and document their use

      • Test out installing/running named releases and document how to do it

      • (potentially) provide documentation for unreleased features (note: I currently believe we do not have the capacity to support documentation of unreleased features)

  • Access:

    • Access they already can get for free: devstack, student account

    • Write access to edX documentation repositories

    • (potentially) access to shared Google docs & read-only access to Miro, if documenting unreleased features

Product managers - Shelby

  • Responsibilities:

    • Define opportunity areas, other potential teams, gather input from the broader community

      • Ex ecommerce deprecation - would be good to have a product direction from the community about incorporating other third party payment providers

    • PM is required to have access to dev resources, so initially will need to be from an affiliated partner organisation or have other access to development resources (perhaps a coalition from the community?)

      • Unfortunately we do not currently have opportunities for PM work that is not backed by dev effort

      • For first iteration, we’d like to focus on finding 1-2 PMs who are working with already established Blended projects

      • May be an opportunity as well to fulfill a role on the Mobile team - more to come.

    • Has a “champion” relationship with a PM (may act as a mentor/helper - good opportunity for an edX PM without direct reports)

    • Participates in Product team meetings to present product direction/approaches as needed

      • Unlikely to have to participate in Consumer Review meetings

  • Access:

    • Miro

    • Figma

    • In some cases, JIRA/Confluence

    • Shared Google documents

  • edX requirements:

    • Participate in an interview with the Product team - may be a case study + an interview with the edX product manager you’d be working most closely with initially

    • Initially, is working on a blended project

UX/UI - Stacey

  • Responsibilities:

    • Create design work in standard tools for upcoming/in flight projects

    • Participates in Design Review meetings with edX UX team

    • Has a “champion” relationship with a UX manager

    • Unfortunately we do not currently have opportunities for UX work that is not a part of established projects

    • For first iteration, we’d like to focus on finding 1-2 UX/UI designers who are working with already established Blended projects

  • Access:

    • Miro

    • Figma

    • In some cases, JIRA/Confluence

  • edX requirements:

    • Participate in an interview with UX team

    • Does not start until we hire more UX managers in Q1

    • Initially, is working on a Blended project

Open Source Pull Request Project Manager - Natalia

  • Responsibilities:

    • Someone external coming in and managing OSPRs - does not need to be affiliated with an edX partner organization

      • Ideally someone technical enough to understand how complex a given changeset is

      • Can use CI tools

      • Able to communicate clearly and concisely to core committers & edX engineering about priority and relative effort

    • Follows newly incoming requests and triages them

      • Say Hi on the PR

      • Route to the proper team

    • Follows older PRs and bumps them

      • Ping the author if something’s been waiting on them for a long time

      • Ping the reviewers if something’s been waiting on them for a long time

    • We can train you on this job!

  • Access:

    • Already granted publicly: read access to GH, shared Slack channels

    • Ability to move ticket states on the open Jira OSPR board

Translation Infrastructure Administrators - Sarina

  • Responsibilities:

    • Manage translation pull jobs and correct various language translations as needed

    • Maintain the translation pull jobs

  • Access:

    • Transifex admin access

    • Github access to view output of nightly translation jobs

    • Potentially write access to GH to maintain the translation pull jobs

Forum moderators - Ned

  • Responsibilities:

    • Re-Categorize new topics

    • Remove spam posts/ban spam users

    • Organize older topics as needed/maintain the platform

    • Respond to topics with high quality answers - pointers to documentation, referral to other users, etc

  • Access:

    • Moderator role on

    • Do we still use the #discourse-moderators Open edX Slack channel? if so: add to that channel.

  • edX requirements:

    • Open Question: Forum moderators will not be exposed to any edX internal details - we will rely on them to be independent operators, much like a volunteer moderator on any other internet forum (like Reddit, StackOverflow, etc)

      • However, if they need to sign an NDA, they should take the Privacy course

      • Since accessibility is not a concern on the Forums (the Discourse software takes care of a11y), we do not recommend they take the a11y course.

Open edX Named Release Managers (BTR) - Sarina

  • Responsibilities:

    • Active membership in the BTR guild

      • Attends BTR meetings regularly

      • Responsive in the #wg-build-test-release Open edX slack room

    • Maintains the BTR GitHub projects board

    • Takes on the burden of either making fixes or finding appropriate parties to address them

    • Maintain Named Release branches across 30+ key repositories, both the latest and any previous supported releases

    • Manage merging fixes into these branches

    • Manage the release of release candidates and point releases, for both the latest and any previous supported releases

  • Access:

    • Added to appropriate bot allowlist that gives write access to named release branches only (but needs overall write access to all code repos)

What are a NTC's access & responsibilities?

NTCs may need access to…

  • Internal edX tools

    • Various Google docs/sheets (WG members/Project mgrs/PMs/UX)

    • Design Tools

      • Figma (PM/UX)

      • Miro (PM/UX/QA/Project mgr)

    • Transifex admin (Translators)

    • Committer access to documentation repos (docs)

    • Admin access to marketing sites/materials (marketing WG)

  • Tools that already have access but we should be sure are set up

    • Appropriate Jira/Confluence access - may involve some access to currently-private spaces

    • Shared Slack channels

NTC Champion ideation - WIP

  • Could have a Champion per role type - thinking

    • The Transifex Working Group will serve as champion for and oversight of Translators.

    • CE team generally sponsors QA

    • Internal marketing (Eden?) could champion Marketing WG

    • Someone on Stacey’s team would champion UX/UI

    • Unknown who might champion Project Managers - likely Natalia for the OSPR project manager

    • Product managers need individual champions, likely the person they work most closely with for a given project

    • Other WG members would be championed by the edX-er most involved in that WG

For certain, UX & Product Management would like their CCs to have a champion.