Introduction
The main focus of this guild is to enable product squads to make chapter-based technical decisions that are effective, high-quality, consistent, and efficient so that they can design and implement robust, scalable, and maintainable systems. This means providing standards, best practices, and processes to the squads.
The guild might also provide technical support to the product squads on chapter-based topics when needed.
Finally, the guild also takes care of enhancing the chapter’s Developer experience.
Participants
The guild coordinator is the Chapter Lead. If there is no Chapter Lead for a given function, the VP of Engineering can act on behalf of her/him or delegate a representative engineer from the chapter.
Besides the guild coordinator, the guild members are the most senior engineers (preferably IC).
Currently, there are two Chapter Core guilds: one for Backend and one for Frontend.
Themes
Examples of themes the guild could focus on are
- Technology stack: the standard stack (e.g., .NET, Go, TypeScript, etc.). Having standard technology stacks can foster cross-squad collaboration, squads’ rotation, and engineers’ onboarding.
- Coding: standards and best practices such as naming conventions, file structure, and how to handle comments.
- Version control: standards and best practices such as what branching strategy (e.g., trunk-based, feature branching, etc.) or short-lived branches.
- Error handling: standards and best practices on how errors could be reported and logged and what errors should trigger alerts. This would ensure that errors are handled consistently and effectively across all the product squads.
- Testing: standards and best practices such as what types of tests should be written (e.g., unit, integration, functional, etc.), how they should be executed, and what kind of tools we can use (e.g., Localstack, Test containers, etc.).
- Code Review: standards and best practices such as how many reviewers should be involved, what specific things should be looked for, etc.
- Deployment: standards and best practices such as how often to deploy, how to handle rollbacks, and how to handle pre-release testing. This could help with ensuring that deployments are handled consistently and effectively.
- Performance: standards and best practices on how to handle load testing, how to optimize performance, and how to handle scalability.