There are two things which must be done for mob/ensemble programming to be successful:

- Prioritize people over everything else
- Prioritize the voices of least privilege over all others

What does this look like?

1/x
Let& #39;s take a look at people over everything else, first.

Software is both created BY people, and to provide value FOR people.

If we prioritize the business, the code, "management", or literally ANYTHING other than people, the people become underserved.

2/x
This means, in building software we must prioritize the people who are gaining value and, more importantly, we must prioritize the people who are BUILDING the software.

In order for a team to effectively create value, they must have their needs met.

3/x
This means recognizing needs: when someone needs a bio break, asks for clarification, needs a moment away, has to take a call, and more.

By intentionally creating a space where it is okay to tend to yourself first, you are able to bring your best self to the work.

4/x
This prioritization also means if someone says "I need a break" the proper response is NOT "well, I don& #39;t need a break."

If the agreement is when one person takes a break, you all take a break, then honor it. If not, individuals must be able to step away.

5/x
In order to prioritize people, it is critical that the team learn to listen first. Every team will be made up of people who have disparate needs. Agreements will, by necessity, be unique to each team.

This leads to the second point.

6/x
Prioritize voices of least privilege above all else.

This is make or break. Look around. Who do you see?

People from marginalized backgrounds are a subjected to systemic harm. They need to be given the greatest opportunity to give voice to their needs and concerns.

7/x
When you address the needs of folks who are most likely to be trod upon first, the rest of the team will benefit from:

Their insight
Their abilities
The answers to their needs

8/x
People from marginalized backgrounds will bring a rich set of skills and insights to your team which no number of white dudes could ever discover on their own.

Real diversity in the team is pure magic!

9/x
Who else is there? New developers, new team members, people new to the business altogether, etc.

One of the greatest benefits a team can get from a new member is perspective from inexperience.

10/x
Inexperience is not inability. Inexperience is the state of being, as yet, unfamiliar with some or all of the work being done in the team.

This inexperience is invaluable!

When given the chance, inexperienced people will ask questions.

11/x
Questions from a place of inexperience can surface all kinds of insights veteran team members might overlook.

The window is short!

Answering questions with "it& #39;s just the way it is" is throwing away gems.

12/x
The only thing I really have to say in closing is, listen to your teammates. They have a lot to share if you let them.

Prioritize people. Prioritize the least privileged voices. Make everything else negotiable. The team will flourish. Your work will shine.

13/13
You can follow @cm_stead.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: