Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: first version of roles and tech lead nomination process #454

Closed
wants to merge 4 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions governance/chair-election-process.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# TAG App Delivery Chair Election Process

TBD
96 changes: 96 additions & 0 deletions governance/roles.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
# Roles within the TAG App Delivery

The TAG includes several key roles that are critical to the group's success.
Beyond the roles described in this document the TAG has many contributors, all serving in varying capacities.

- [Roles within the TAG App Delivery](#roles-within-the-tag-app-delivery)
- [Chair](#chair)
- [Technical lead](#technical-lead)
- [Working Group Lead](#working-group-lead)
- [TOC Liaison](#toc-liaison)
- [Emeritus Chair](#emeritus-chair)

## Chair

The (normally three) Co-Chairs of the TAG App Delivery drive the CNCF community efforts of the TAGs domain.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about expressing this as "the TAG will have up to 3 chairs"? Best to be specific since folks will look to this as canonical in the future.

Chairs are experienced leaders within the CNCF community with rooted expertise in the TAG area. Chairs serve a two-year term but may renew their term by submitting a follow-up application.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we enumerate previous contributions expected of chairs? For example:

  • participated in some percentage of TAG meetings
  • wrote up a number of project reviews
  • contributed to end user papers
  • contributed to samples like podtato-head

Copy link
Collaborator Author

@thschue thschue Nov 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joshgav: Please write a proposal for this section. In the past, chairs could nominate themselves if they were active in any way. I am not sure if restricting this will help us growing.

Chair applications go through an [election process](https://github.com/cncf/toc/blob/master/tags/cncf-tags.md#elections) with a final CNCF TOC vote. The election process is defined [here](./chair-election-process.md)(WIP).

Co-Chairs are expected to:
* Manage the operations and governance of the group.
* Organize, host, plan and facilitate TAG meetings and events.
* Reporting to the CNCF TOC on the status of TAG work.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/Reporting/Report/

* Encouraging community members to start projects and working groups.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/Encouraging/Encourage/

* Resolve technical difficulties and decisions related to multiple sub-projects.
* Remind the community of the scope of the TAG and point out guardrails in discussions, working groups, and projects.
* Serve as TAG leadership representative in CNCF project discussions and at community events.
* Evolve the TAG to reflect ongoing changes in the industry.
* Onboard and mentor new community members.
* Mentor community members in a leadership role within the TAG.
* Enforce and promote diversity in TAG work.
* Enforce and promote good communication in TAG efforts in accordance with the [CNCF CoC](https://www.cncf.io/conduct/)

Permissions:
* Chairs have admin access to the TAG GitHub repository.

## Technical Lead

A technical lead (TL) expands the bandwidth of the leadership team in terms of covering technical areas, growing the community, organizing events or doing TAG communications.

Proposals must have Chair as an active sponsor and the agreement of the majority of the current leadership team (Chairs, Tech Leads & Liaisons). TLs are experienced contributors within the CNCF community with rooted expertise in the TAG area.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps "Proposals for new Technical Leads must have a Chair...."

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we define the experience the contributors should have? See examples above for Chairs, should similar ones apply to TLs?


Technical leads go through an [proposal process](./tech-lead-proposal-process.md) with a final CNCF TOC vote.

**A technical lead is expected to**:
* Establish and guide projects and working groups.
* Resolve cross-sub-project technical difficulties and decisions.
* Propose agenda items for meetings to ensure that open issues are discussed with the group when needed.
* Serving as TAG leadership representative in CNCF project discussions and on community events.
* Onboard and mentor new community members.
* Mentor community members in a leadership role within the TAG.
* Enforce and encourage diversity in the TAG efforts.
* Enforce and encourage good communication in the TAG efforts following the [CNCF CoC](https://www.cncf.io/conduct/).
* Support the TAG Chairs.

Permissions:
* Tech Leads have maintain access to the TAG GitHub repository.

## Working Group Leads

A working group chairs (usually 3) are experienced contributors to the TAG that applies to lead along one or two others a working group.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps - "Up to 3 chairs are appointed to lead each working group."

Should we define what we mean by "experienced"?

Working groups as community governance structure are defined in the [CNCF TAG](https://github.com/cncf/toc/blob/master/tags) folder.
TAG Chairs are responsible facilitating the working group applications and make sure that the process is done transparent, accessible and traceable for everyone.
At least one of the TAG chairs or Tech Leads serves as the working group sponsor and provides guidance to the working group leads.
Working group leads are signed off by the majority of the TAG Chairs and the TOC Liaisons.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, don't need TOC approval for WG leaders

The [leadership election process is described here](template-leadership-election-process.md#working-group-lead).

**A working group lead is expected to**:
* Schedule, host, plan and facilitate meetings for the working group.
* Provide technical direction unique to the working group.
* Plan working group deliverables.
* Report to the TAG on the working group status.
* Evolve the working group.
* Garner active participation.
* Establish documents and correct permissions for contributions to occur.
* Contribute content to the working group.
* Onboard and setup the working group lead successor.

Permissions:
* WG Leads have write access to the TAG GitHub repository and CODEOWNERS entries for the working group folder.

## TOC Liaison

The [CNCF TAG](https://github.com/cncf/toc/blob/master/tags) process identifies a TOC Liaison.
The TAG Chairs are responsible for establishing effective communication with the TOC Liaison, including further communication to the wider TOC upon request.

The TOC Liaison will occasionally prioritize TAG activities, as needed by the TOC, to further the [CNCF mission](https://github.com/cncf/foundation/blob/master/charter.md#1-mission-of-the-cloud-native-computing-foundation).

Permissions:
* TOC Liaisons have admin access to the TAG GitHub repository.

## Emeritus Chair

After a TAG Chair completes their term, they transition into the role of Emeritus Chair.
This role does not impose any obligations on the TAG, but it acknowledges their committed time and effort.
The role also lets them share information about their previous work and contributions to the TAG.
An Emeritus Chair retains the same rights/access as in their previous role.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I lean to say emeritus chairs shouldn't retain admin permissions. There may be times when we need to remove access.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you propose @joshgav? - WG Leads have 'write' access, TL's have 'maintain' and Chairs have 'admin'
Propose to drop to 'write' or 'maintain'?

79 changes: 79 additions & 0 deletions governance/tech-lead-proposal-process.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# TAG App Delivery Technical Lead Proposal Process

App Delivery Technical Leads operate as a team alongside the Co-Chairs. The Co-Chair
team seeks enhance the leadership capabilities of the existing co-chairs across
the key qualities of industry experience, hands-on cloud-native and security
experience, as well as administrative experience needed to assist in the
execution of the various projects and efforts that make the TAG App Delivery so
successful.

## Caveats of Technical Leads

* The position of a technical lead does not guarantee future co-chair nomination
* The position of a technical lead is not a paid position (co-chairs are also
not paid positions)
* Technical leads [have responsibilities](roles.md) to the App Delivery TAG, the
leadership team, and the TOC
* Nominations still
[require TOC
approval](https://github.com/cncf/toc/blob/main/tags/cncf-tags.md#elections)

## Process of nominations

Depending on the needs of the community, as determined by the App Delivery TAG
leadership team, technical lead nominations may come in the form of "Nominees by co-chairs" at the moment.

The App Delivery TAG does not have a current limit on the amount of technical leads.

Final technical lead nominations will adhere to the [CNCF's TOC described
process](https://github.com/cncf/toc/blob/main/tags/cncf-tags.md#elections).

### Nominees by co-chairs

Nominees by co-chairs adhere to the technical lead requirements described below.
Co-chairs are responsible for documenting statistic information of all nominee
types for endorsement and presentation to the TOC.

## Technical Lead nomination requirements

In order to verify nominees by the community or by co-chairs have experience
with the group and are actively contributing in a meaningful way, the following
requirements must be met in order for an individual to be nominated.

If a given nominee does not meet all the requirements, the co-chairs will still
review the nomination and justification to determine if enough intent and
commitment is present to move forward with an endorsement.

Nominees must:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do these criteria apply to Chairs too? Perhaps we should list them there as well.


* be the author of at least one pull request against the TAG App Delivery repository
* be active in the community within the last 6 months prior to their nomination.
* active - Attending at least 1 TAG App Delivery Regular Meeting a month
* engaging in community chat via slack or lists
* commenting on PRs and issues to drive suggestions to proposals, define scope,
resolve clarity issues, etc.
* agree to the nomination

Nominations must:

* come from someone other than the nominee
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure this should be required - folks should be able to nominate themselves too. But I do believe they should be seconded by an existing leader.

* have justification from the nominator regarding the nominee's capabilities

### Justification for nominees

To ensure nominations are thoughtful and supported, in addition to the above
requirements, a justification must enumerate on the nominee's:

* TAG App Delivery Community involvement
* leadership skills
* conflict resolution (technical and non-technical)
* mentorship
* willingness to learn and expand existing technical knowledge
* and any known affiliations or group memberships (if applicable)

## Announcing nomination results

The co-chairs will release aggregate information about the nominees at the end
of the nomination process once the Technical Leads have been put forward for
approval by the TOC. Aggregate information will not include who nominated
someone.