Communities

Communities are groups of team members that work on a shared goal that is not yet part of a team or reflected in the general duties of a unit. Every team member can join or create a community and colleagues outside our organisation are of course welcome to participate as well.

Endurance

Communities can exist for a long time (e.g. documentation, diversity, business administration) or just for a few days or weeks (e.g. to organize a team event, to finally fix a bugging issue).

Topics

Topics can range from specialized technical topics (e.g. checkout flow, database naming) over more general topics (e.g. security, artificial intelligence, user research) to cultural ones (e.g. organizational development).

Requirements & rules

  • A community needs a clear goal and a couple of first tasks or action items that will help to achieve the community's goal
  • A community is led by a single team member (community lead), whose responsibility it is to
    • define the community’s goal
    • align the community with the company’s business goals
    • lead the community towards achieving its goals
    • document and communicate the community’s progress
    • close and archive the community if necessary
  • Every team member that joins a community must actively and regularly contribute
  • A community should meet in fixed intervals (monthly, quarterly,...) but always in a resourceful manner, when it comes to invested time and frequency

Initiation

Once you’ve come up with an idea, take it to the next 1:1 with your manager and pitch the idea. They can help you challenge the idea, give you a better perspective on how to align the idea with our business goals, and if there might be a similar initiative going on already. See your manager as your sponsor to free some time for you and also to back it up.

With this information, you are free to decide whether to found a new community or not.

Starting and running a community

Starting

  • Create a public “community-” Slack channel (private only, if it’s REALLY necessary)
  • Send an @channel message in #io-team-all to inform everyone about the new community, on its goal, and maybe what skills you’re looking for in your contributors
  • Schedule a community kick-off meeting

Running

  • Meet as proposed in the rules above
  • Hold the community members accountable in terms of contribution
  • Regularly reflect on the community, its goal, and its right to exist

Documentation & communication

As a community lead, you have to make sure that either you or other contributing community members document the progress and results of a community. In the past, Confluence pages or Miro boards proved great for doing this collaboratively.

Outcomes of a community may also be part of a review, an Assembly, or a unit update, depending on which audience is relevant for the results. To include outcomes, you simply connect with the people working on these formats.

Completion

A community has come to an end due to the following reasons

  • Its goals have been achieved and found their way into our day-to-day work, e.g. became part of a product team’s backlog, or a standard everyone complies with
  • People are barely contributing to the community
  • The community’s goal does not comply with our company mission anymore

In case it’s about time to close the community, make sure to document the final outcomes and archive its Slack channel.

When to not create a community

If you’re just looking for a place to exchange thoughts, content, or perspectives, please consider some other formats available:

  • Invite for a coffee call about a topic
  • Talk about your topic at our open space
  • Use an existing Slack channel and start a thread, e.g. #misc-random, #misc-music, #misc-io-expats, #tech-talk
  • Create a Slack channel for sporadic exchange, if something interesting pops up, e.g. #misc-typescript-addicts, #misc-cat-owners-of-io

If a topic does neither comply with our business goals nor our company culture, please refrain from proposing a community.