is a "DevOps" Engineer at Mozilla Research

Thoughts on retiring from a team

The Rust Community Team has recently been having a conversation about what a
team member’s “retirement” can or should look like. I used to be quite active
on the team but now find myself without the time to contribute much, so I’m
helping pioneer the “retirement” process. I’ve been talking with our subteam
lead extensively about how to best do this, in a way that sets the right
expectations and keeps the team membership experience great for everyone.

Nota bene: This post talks about feelings and opinions. They are mine and not
meant to represent anybody else’s.

Why join a team?

When I joined the Rust community subteam, its purpose was defined vaguely. It
was a small group of “people who do community stuff”, and needed all the extra
hands it could get. A lot of my time was devoted explicitly to Rust and
Rust-related tasks. The tasks that I was doing anyways seemed closely aligned
with the community team’s work, so stepping up as a team contributor made a
lot of sense. Additionally, the team was so new that the only real story for
“how to work with this team and contribute to its work” was “join the team” .
We hadn’t yet pioneered the subteams and collaboration with community
organizers outside the official community team which are now multiplying the
team’s impact.

Why leave?

I’m grateful to the people who have the bandwidth and interest to put
consistent work into participating on Rust’s community team today. As the team
has grown and matured, its role has transitioned from “do community tasks” to
“support and coordinate the many people doing those tasks”. I neither enjoy
nor excel at such coordination tasks. Not only do I have less time to devote
to Rust stuff, but the community team’s work has naturally grown into
higher-impact categories that I personally find less fulfilling and more
exhausting to work on.

Teams and people change

In a way, the team’s growth and refinement over the years reminds me of a
microcosm of what I saw while working at a former startup as it built up into
an enterprise company. Some peoples’ working style had been excellently suited
to the 5-person company they originally joined, but clashed with the 50-person
company into which that startup grew. Others who would never have thrived in a
company of only 10 people were hiring on and having a fantastic impact scaling
the company up to 1,000. And some were fine when the company was small and
didn’t mind being part of a larger organization either. That experience
reminds me that the fit between a person and organization at some point in the
past does not guarantee that they’ll remain a good fit for each other over
time, and neither is necessarily to blame for the eventual mismatch as both
grow and change.

Does leaving harm anyone?

When you’re appreciated and valued for the work you do on a team, it’s easy to
get the idea that the team would be harmed if you left. The tyres on my bike
are a Very Important Part of the bike, and if I took them off, the bike
wouldn’t be rideable. But a team isn’t just a machine – a team’s impact is an
emergent phenomenon that comes out of many factors, not a static item. If a
sports team has a really excellent coach, they’ll retain the lessons they
learned from that coach’s mentorship even after the coach moves away. Older
players will pass along the coach’s lessons to younger ones, and their ideas
will stick around and improve the group even long after the original players’
retirement. When a team is coordinated well, one member leaving doesn’t hurt
it. And if I leave on good terms rather than sticking around till I burn out
or burn bridges, I can always be available for remaining members to consult
when if need advice that only I can provide.

Would staying harm anyone?

I think that in the case of the Rust community team, it would reflect poorly
on the community as a whole if the exact same people comprised the community
team for the entire life of the language.

If nobody new ever joins the team, we wouldn’t get new ideas and tactics, nor
the priceless infusion of fresh patience and optimism that new team members
bring to our perennial challenges and frustrations. So, new team members are
essential. If new people joined on a regular basis but nobody ever left, the
team would grow unboundedly large as time went on, and have you ever tried to
get anything done with a hundred- or thousand-person committee? In my opinion,
having established team members retire every now and then is an essential
factor in preventing either of those undesirable hypotheticals.

The team selects for members who’ll step up and accomplish tasks when they
need to. I think establishing turnover in a healthy and sustainable way is one
of the most essential tasks for the team to build its skills at. The best way
to get a healthy amount of turnover – not too much, but not too little either
– is for every team member to step up to the personal challenge of identifying
the best time to retire from active involvement. And for me, that happens to
look like right now.

Aspirational Clutter

Do you have stuff in your house that you don’t use, and it’s taking up space,
and you’re kind of annoyed at it for taking up space, but you don’t feel like
you can get rid of it because you think you really should use it, or you’re
sure you’re just going to make some personal change that will cause you to use
it someday? I call that stuff aspirational clutter: It doesn’t belong to you,
it belongs to some imaginary person who doesn’t exist but you aspire to become
them someday.

A team meeting every week on your agenda can be aspirational clutter in the
same way as a jumbled shelf of planners or a pile of sports gear covering a
treadmill: It not only isn’t a good fit for who you are right now, but by
wasting time or space it actually gets in the way of the habits and changes
that would make you more like that person you aspire to be.

I find few experiences more existentially miserable than feeling obliged to
promise work that I know I’ll lack the resources of time or energy to deliver.
Sticking around on a team that I’m no longer a good fit for puts me in a
situation where get to choose between feeling guilty if I don’t promise to get
any work done, or feeling like a disappointment for letting others down if I
commit to more than I’m able to deliver. Those aren’t feelings I want to
experience, and I can avoid them easily by being honest with myself
about the amount of time and energy I have available to commit to the team.

The benefits of contributing from a non-team-member role

One scary idea that comes up when leaving a team is the question: “if I’m
not on the team, how can I help with the team’s work?”.

In my opinion, it builds a healthier community if people who are good at a
given team’s work spend some time interfacing with the team from the
perspective of non-team-members. If I know how the community team gets stuff
done and I go “undercover” as a non-team-member coming to them for help, I can
give them essential feedback to improve the experience and processes that
non-team-members encounter.

When I wear my non-team-member hat and try to get stuff done, I learn what
it’s like for everyone else who tries to interface with the team. I can then
use the skills that I built on by participating on the team to remedy any
challenges that a non-team-member encounters. Those changes create a better
experience for every community member who interacts with the team afterwards.

What next?

As a community team alum, I’ll keep doing the Rust outreach – the meetup
organizing, the conference talks, the cute swag, the stickers – that I’ve been
doing all along. Stepping down from the official team member list just
formalizes the state that my involvement has been in for the past year or so:
Although I get the community team’s support for my endeavors when I need it,
I’m not invested in the challenges of supporting others’ work which the team is
now tackling.

I’m proud of the impact that the team has had while I’ve been a part of it,
and I look forward to seeing what it will continue to accomplish. I’m grateful
for all the leadership and hard work that have gone into making the Rust
community subteam an organization from which I can step back while remaining
confident that it will keep excelling and evolving.

Why blog all that?

I’m publishing my thoughts on leaving in the hopes that they can help you,
dear reader, gain some perspective on your own commitments and curate them in
whatever way is best for you.

If you read this and feel pressured to leave something you love and find
fulfilling, please try to forget you ever saw in this post.

If you read this hoping it would give you some excuse to quit a burdensome
commitment and feel disappointed that I didn’t provide one, here it is now:
You don’t need a fancy eloquent excuse to stop doing something if you don’t
want to any more. Replace unfulfilling pursuits with better ones.