Guilds are cross-functional, cross-team groups with a specific focus and continuing goal. This focus and goal of each guild is directly related to the delivery of projects, and contributes to an increased capacity to produce work.
Guilds cut across all teams and departments, and incorporate all roles involved in delivery of projects.
Focus: Improving efficiency of delivery using agile methodology
Goal: Clarify our relationship with Agile, evaluate, apply, and iterate our agile approach toward continuous improvement of our delivery processes.
Meetings: Every second Thursday at 14:00 UTC
Focus: Frontend technologies and skillsets.
Goal: Improving standards and depth of knowledge in the areas of HTML, CSS & JS. Topics will include coding standards, debugging tools, security, testing, browser standards, performance, UX, accessibility and anything in between.
Coordinators: @kirsty @mikeselander
Meetings: Every fortnight; time is being finalised.
Focus: The block editor shipped with WordPress 5.0.
Goal: Improve knowledge and skills for building with Gutenberg.
Meetings: Every fortnight; new time is being finalised.
Focus: Processes, methods and tools for testing software.
Goals: Increase knowledge about software testing and quality management; contribute to maintaining and improving tooling around software testing and software quality; create best-in-class documentation.
Coordinators: @thorsten & @stephen
Meetings: Every two weeks, cycling through three different time zones. Exact times to be finalized.
Focus: Improving overall team well-being and how it affects issues of performance, retention and burnout.
Goal: To strive towards making well-being a facet in company decision-making.
Coordinator: [Currently seeking new coordinator; contact @paulwp]
Meetings: Currently on pause.
Guilds are self-organising and each is different. All guilds follow a few simple rules:
- They have a specific, delivery-based focus. Guilds are specifically for contributing to the business goals. They are not personal interest groups.
- They have defined goals. Guilds are formed to have an impact on the delivery process, and should have well-defined goals that aim to provide value.
- They are cross-functional, cross-team, and have open membership. Anyone from the company can join a guild, regardless of role or project. Guilds should avoid being primarily focussed on a singular skill (such as engineering), instead aiming to be inclusive of all roles.
- They have regular participants. Guilds must have enough interest to sustain themselves to avoid “guild fatigue”.
- They have a coordinator. Guilds have a coordinator to organise and facilitate meetings. The coordinator does not need to “lead” the conversation, they are simply there to handle organisation.
Starting a guild
The first step to starting a new guild is to establish interest. You should ask around to find out whether others are interested in joining the guild or helping to organise. As a rule of thumb, you should have at least five people interested in participating regularly, otherwise the overhead of having a guild probably isn’t worth it.
Once you’ve established initial interest, you should write up a proposal. The proposal should include the details of the guild (focus, goal, coordinator, and suggested meeting scheduling), along with further details to justify why the guild should exist. (The frontend guild proposal is a great example of this.) This proposal should be posted to Updates to broadcast to the entire company and to gather further interest.
If you have enough interest in your guild, you can then running it. Add the details to this page, and start organising your meetings. If concerns are raised with your initial proposal, ensure you incorporate the feedback into your planning.
After the first few meetings, you should assess the progress of the guild. Is it meeting the goals you set? Do you have regular meetings with regular attendees? If the guild isn’t meeting your goals, consider changing the guild definition to better match, or consider placing the guild on “pause” to better communicate its status.