Skip to content

Commit 78961b7

Browse files
Merge pull request #1 from dogonthehorizon/pattern/trusted-committer
Initial draft of the TC donut
2 parents d7d672c + 1f384c0 commit 78961b7

File tree

1 file changed

+162
-0
lines changed

1 file changed

+162
-0
lines changed

project-roles/trusted-committer.md

Lines changed: 162 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
# Title
2+
3+
Trusted Comitter
4+
5+
# Patlet
6+
7+
Many inner-source projects will find themselves in a situation where
8+
they consistently receive feedback, features, and bug-fixes from a contributor.
9+
In these situations project maintainers seek ways to recognize and reward the
10+
work of the contributor above and beyond single contributions.
11+
12+
# Context
13+
14+
- You are the maintainer of a cross-team library, service, or shared resource
15+
- You receive regular contributions
16+
17+
# Problem
18+
19+
- Project maintainers want to find ways to scale their ability to support a
20+
project
21+
- Project maintainers want to find ways to scale the longevity of the value
22+
delivered by a project
23+
24+
# Forces
25+
26+
- Over the lifecycle of a project the focus of the maintainers may shift away
27+
to accomodate changing business priorities
28+
- Contributors seek visible artifacts of their contributions demonstrating
29+
value
30+
- Motivated contributors looking to push further inner-sourced projects
31+
- Maintaining a project of reasonable complexity is taxing for a small team
32+
- Lack of language for recognizing contributions across teams within an
33+
organization
34+
35+
# Solution
36+
37+
## Defining the Trusted Committer Role for a Project
38+
39+
What a Trusted Committer handles is up to each project and its maintainers.
40+
Whatever shape your Trusted Committer role takes make sure it's clearly
41+
documented somewhere in your project. This sets expectations for new community
42+
members and outlines the role for future candidates.
43+
44+
Below we've provided a few guidelines for what Trusted Committers can be
45+
invited to do:
46+
47+
* If a candidate participates often in community channels (e.g. Slack, JIRA
48+
issue triaging, etc.) then becoming a Trusted Committer formalizes their role
49+
in community support.
50+
51+
* A good candidate for a Trusted Committer, is someone who frequently submits
52+
code, documentation, or other repository changes. Start by including this
53+
person on pull requests. If they are actively engaing in pull requests,
54+
consider approaching them about opportunities for further collaboration on the
55+
project.
56+
57+
## Formalizing Trusted Committers
58+
59+
The first step is to approach candidates about becoming a Trusted Committer.
60+
Maintainers should make sure candidates understand the role. To be clear:
61+
there is no expectation that candidates will accept the role. Each candidate
62+
should figure out if they have the bandwidth to get involved.
63+
64+
When a candidate accepts the role it is up to the project maintainers to
65+
publicly recognize the transition from user to Trusted Committer. It is also a
66+
good idea to add their name to a Trusted Committers section in your project's
67+
README. As an example:
68+
69+
```markdown
70+
# project-name
71+
72+
... your project's readme ...
73+
74+
## Project Leaders
75+
76+
### Maintainers
77+
78+
- Your team
79+
80+
### [Trusted Committers]
81+
82+
- The name of the new trusted committer
83+
84+
[Trusted Committers]: https://example.com/link/to/your/trusted/committer/documentation.md
85+
```
86+
87+
## Maintaining Trusted Committer Relationships
88+
89+
When a new Trusted Committer is minted it’s a good idea to keep them in the
90+
loop as you continue to iterate on your project. This can be as simple as
91+
inviting them to your project channel or as involved as including them in your
92+
planning sessions. More opportunities for involvement gives Trusted Committers
93+
a path to Maintainer if they so desire.
94+
95+
Besides keeping Trusted Committers informed it’s a good idea to check in on a
96+
regular basis. A good cadence is every week, but as the Trusted Committer
97+
settles in this can drop to every few weeks or so. The purpose of these
98+
check-ins is to make sure the Trusted Committer feels supported in their new
99+
role, like a 1:1 with your manager. If things aren’t going well, listen and
100+
try to understand what is preventing the Trusted Comitter from being successful.
101+
If things are going well, [thank the Trusted Committer for their continued
102+
effort][praise] in making the project successful and set a new date to check-in.
103+
104+
## Sunsetting a Trusted Committer
105+
106+
There comes a time when removal of a Trusted Committer is necessary, such as:
107+
108+
* No longer willing to take part
109+
* No longer able to perform their duties
110+
* No longer employed by the company
111+
112+
In each of the above cases a plan for removing access to project resources
113+
should agreed upon by both parties. This includes their entry in a project’s
114+
**Trusted Committer** section.
115+
116+
After access is removed it is courteous to [thank the Trusted Committer for
117+
their participation in a public way][praise]. This ensures clear communication
118+
and continuity within the community.
119+
120+
# Resulting Context
121+
122+
## For Contributors
123+
124+
Achieving Trusted Committer status for a project is a sign that the contributor
125+
has demonstrated an improvement to a community project. Recognition for these
126+
efforts can be used during annual reviews with managers.
127+
128+
## For Maintainers
129+
130+
As a project matures, maintainers can become less familiar with key aspects
131+
of a project. Trusted Committers fill in these gaps. This ensures that all
132+
aspects of the project are better served over time.
133+
134+
A healthy set of Trusted Committers ensures that if project maintainers move on
135+
there is a plan for responsible stewardship.
136+
137+
# Known Instances
138+
139+
This has been tried and proven successful at Nike and PayPal.
140+
141+
# Authors
142+
143+
- Fernando Freire
144+
145+
# Acknowledgements
146+
147+
- [Russell Rutledge]
148+
- [Loren Sanz]
149+
- [Noah Cawley]
150+
- [Jeremy Hicks]
151+
152+
# State
153+
154+
Published internally at Nike; drafted via pull-request in June of 2018.
155+
156+
# Variants
157+
158+
[Russell Rutledge]: https://github.com/rrrutledge
159+
[Loren Sanz]: https://github.com/mrsanz
160+
[Jeremy Hicks]: https://github.com/greatestusername
161+
[Noah Cawley]: https://github.com/utanapishtim
162+
[praise]: https://github.com/paypal/InnerSourcePatterns/blob/master/praise-participants.md

0 commit comments

Comments
 (0)