Guilds

In a large corporate environment, the decisions that are made at the highest levels can be bewildering, seemingly inconsistent and out of touch with operations on the ground. That’s not to say they’re bad decisions, just that it can be hard to make sense of them when you don’t have access to all the factors that led to them.

Trying to make sense of it is an exercise in frustration. If you have made your case for what you believe to be an ideal structure and made no headway, your next course of action is to figure out how to find a way to reconcile this new structure with real world constraints and frictions. In an engineering org, one way to bring consistency and a semblance of predictability to the team is through the use of Guilds.

How To Make Sure a Guild Won’t Work

Guilds that don’t have people who are dedicated to the work that is being done on the guild will very likely struggle to maintain relevance in the organization. I believe this to be an important pre-requisite to a long-lasting and impactful guild organization.

How To Help a Guild Be Successful

Before we get into the guild organization, I wanted to make sure we have a list of actions you can take to help support a guild structure.

  1. Make sure that the leaders of each guild are 100% dedicated to the fostering of that guild’s success. If there is no one available to dedicate that time, do not create that guild.
  2. A guild should have a backlog and process that the guild leader is accountable to. While there likely won’t (and shouldn’t) be the overhead that typical scrum teams have - initiatives, goals and success criteria help ensure that the impact is not only clear to the guild members themselves, but also to outsiders who either want to participate in the guild or simply those who may not understand the purpose of the guild.
  3. While the target customer of the guild are internal employees, the company’s customer is also a key stakeholder and driving force behind many of the initiatives that are taken up by the guild.

Guild Deep Dive

Let’s get into some tactical things to consider when constructing a guild. We’ll start off with a definition of a guild and move on to address certain key ways of working when operating it.

Definition of a Guild

Guilds are cross-functional groups formed around particular disciplines or shared interests within the organization. They operate independently of the traditional organizational structure and focus on specific, foundational aspects of the system. Guilds aim to foster collaboration, improve expertise, and achieve common goals within their domain.

Structure and Leadership

  1. Membership:
    • Open to all team members who are interested and possess relevant skills or wish to develop them.
    • Members can come from different teams and departments, encouraging diversity in perspectives and expertise.
  2. Leadership:
    • Each guild is led by a Guild Lead, who is elected by the guild members or appointed based on expertise and willingness to lead. But whoever is chosen must be 100% dedicated to the leading of this guild.
    • The Guild Lead is responsible for coordinating activities, facilitating discussions, and ensuring the guild stays on track with its goals.

Decision-Making and Goal Setting

  1. Scope of Work:
    • Guilds focus on foundational aspects relevant to their domain, such as framework improvements, best practices, and tools.
    • Example scopes (see below for more):
      • Frontend Guild: Enhancing the NextJS framework, developing UI components, and setting frontend best practices.
      • API Guild: Improving commerce middleware, optimizing API performance, and defining integration standards.
  2. Identifying Goals:
    • Goals are identified through a combination of member input, organizational needs, and technical debt assessments.
    • Regular meetings (e.g., bi-weekly) are held to discuss and prioritize potential projects.
  3. Decision-Making Process:
    • Consensus-driven: Major decisions are made collectively by the guild members, ensuring all voices are heard.
    • Voting: For critical decisions, a majority vote may be used.
    • Guild Lead facilitates the process but does not have unilateral decision-making power.

Work Execution and Collaboration

  1. Work Distribution:
    • Tasks are assigned based on members’ interests and expertise.
    • Collaborative tools (e.g., JIRA, Trello) are used to manage tasks and track progress.
  2. Collaboration:
    • Regular sync-up meetings (e.g., weekly stand-ups) to discuss progress, challenges, and next steps.
    • Use of communication channels (e.g., Slack) for continuous collaboration.

Progress Reporting

  1. Internal Reporting:
    • Guild members provide updates during regular sync-up meetings.
    • Detailed progress reports are shared within the guild to ensure transparency and collective problem-solving.
  2. External Reporting:
    • Monthly or quarterly updates are presented to the broader organization.
    • Reports include achievements, ongoing projects, challenges faced, and upcoming goals.
    • Documentation of key decisions and learnings is maintained and shared on internal knowledge bases (e.g., Confluence).

Continuous Improvement

  1. Feedback Loops:
    • Regular retrospectives to reflect on what’s working well and areas for improvement.
    • Feedback from guild members and the broader organization is actively sought and incorporated.
  2. Learning and Development:
    • Guilds organize knowledge-sharing sessions, workshops, and training to upskill members.
    • Encouragement of a culture of continuous learning and innovation.

Articles and Conversations about Guilds

https://www.optimizely.com/insights/blog/how-our-engineering-team-uses-guilds-to-increase-collaboration/

https://www.bloomberg.com/company/stories/how-guilds-promote-the-exchange-of-technical-ideas-best-practices-within-bloomberg-engineering/

https://www.reddit.com/r/ExperiencedDevs/comments/1alw9if/for_those_of_you_in_guilds_how_do_you_get/