Skip to content

Latest commit

 

History

History
88 lines (62 loc) · 5.51 KB

COUNCIL.md

File metadata and controls

88 lines (62 loc) · 5.51 KB

Agora Council

The council's objective is to facilitate a broader conversation with the engineers at Moda who are making daily decisions on the technology they are using within their teams. We also hope to make the overall discussion of architecture more inclusive and more transparent.

General Structure

  • The Principal and Distinguished members of Moda Tech constitute the permanent members of the Council.
  • The @agora-bdfl will organize the group while it gets started. At some point, the Council will elect a Chair to a one-year term.
  • Attendance at council meetings is voluntary, however each department should be represented by at least one member.
  • All Councilmembers continue to serve as first class team members as their primary role.
  • Tech exec and team management will encourage teams to actively plan time for architecture into all ongoing work.

Additional Councilmembers

  • The Council should review its composition on a quarterly basis.
  • In order to ensure broad technical and departmental representation, the Council may appoint additional members at any point.
  • Additional members are proposed by the Chair, after consultation with the respective department leads/directors.
  • The Council decides on the proposed members via majority vote.
  • Additional Councilmembers are given a permanent seat on the Council.
  • Additional Councilmembers are free to voluntarily give up their seat on the Council.

Term limits

TODO: Consider/discuss term limits or some other means of keeping the Council at a reasonable size. A group like this has the tendency to grow over time (natural additions via promotion + nominations; only subtraction via attrition from Moda) but we should be conscious of the group growing too large. Problems with being too large:

  • Meetings become very "expensive" (i.e. time from many senior people)
  • More difficult to drive to consensus
  • More difficult to schedule meetings
  • Easier to be disengaged as an individual
  • Too high of a percentage of Moda Tech covered, such that the group begins to feel exclusive of the minority instead of the top of a pyramid

High-level responsibility

  • The Council will provide comments into company wide review process on duties related to system architecture and technological choices.
  • Chair responsibilities:
    • Convene regular Council meetings as necessary and at least twice per month.
    • Share agenda + minutes with all of tech from each Council meeting - most important here is to make transparent all of the decisions, non decisions, and discussions
  • Primary responsibilities of the Agora Council:
    • Make it easier to brainstorm solutions to problems and to share results
    • Highlight best practices across all our teams
    • Minimize duplication of effort across Moda
    • Define standards for inter-team communication
    • Assist teams in solving hard technical problems in simple, scalable ways
    • Assess specific technologies - both already at Moda or not yet in use at Moda
    • Maintain a Moda Tech Radar
  • Allocate portion of time if other architects would like their help
  • Publish and maintain a simple means to contact the Council for help with issues and visibility of the feedback loop through to resolution

Council Meetings

  • The Council will meet once weekly, to help gain momentum. The Council will revisit this in the future to decide if this cadence continues making sense.
  • Councilmembers should do their best to attend Council meetings. Continued lack of attendance may result in expulsion from the Council.
  • The main goal of the meetings is to share information as well as discuss and decide on architectural topics that affect the entire tech organization.
  • All members can raise topics to be discussed at Council meetings.
  • The meeting agenda will be distributed in advance of every meeting.
  • Any non-Councilmember who has a PR up for discussion in the agenda should attend the meeting.
  • To encourage visibility and participation, there will be a rotating standing invite for non-Councilmembers. This should be automatically maintained as part of onboarding, and should appear on calendars to encourage attendance.
  • In addition, each meeting will allow for up to 5 additional people to sign up to attend, based on the agenda items.
  • Each meeting has a scribe to keep track of the discussion in a Github comment on a PR.
  • Meeting minutes are shared (as links to Github comments) with all of Moda Tech after each meeting.

Council Meeting Organizer

The Council meeting will be organized on a monthly rotating basis by one of the Council members. This is to distribute the organizing load while also encouraging different viewpoints/priorities from all disciplines represented on the Council. The responsbilities of the Organizer include:

  • Set the agenda for the upcoming week's meeting.
  • Distribute the agenda to all of Tech, and collect signups for non-Councilmember attendance. Send out meeting invites accordingly.
  • Encourage members from across the org to contribute PRs towards those agenda items.
  • Drive conversation around existing PRs, in advance of the meeting.
  • During the meeting, take notes in the PRs.
  • Present Agora Council summary at End-of-Sprint Demos (bi-weekly).
  • At the end of the rotation, help identify the next Organizer.

The current Organizer will be listed in the meeting agenda.

Decision making process

  • Votes should be conducted via Github comments on a PR.
  • Decisions are made via majority vote.
  • In case of a stalemate, the Chair has the deciding vote.