Novu Handbook
    Slack Guidelines

    Slack Guidelines

    ⏰ Call to Action

    • Must:
      • All Slack communications follow 📜Novu’s communication manifest
      • Use threads for discussion, summarise thread with “Also send to #<channel>”, format:
      • 🧵
        Summary: <1-sentence summary>
        • <point 1>
        • <point 2>
        • <point 3>
      • Use @here and @<person> only for urgent messages
      • New channels follow naming conventions
    • Suggestions:
      • Schedule non-urgent messages to respect working hours
      • Organize your sidebar
      • Configure your profile

    📣 Introduction

    With great messaging power comes great responsibility. The following guidelines are in place to ensure that our Slack community grows safely and scalably while respecting the communication space that we operate in as a company.

    📲 Channel Naming Conventions

    All channels must follow the naming patterns set out below. If you need to create a channel that does not align with the purpose of any below, it most likely indicates a new category is required, or you could probably use an existing channel. If you think a new channel category is required, add your proposal as a comment on this document and post it to the company-general channel to ask for feedback.

    By following the patterns below, channels will be self-describing, easier to navigate, and avoid the dreaded Slack channel sprawl 💀.

    Company
    #all-<purpose>
    Company-wide channels that typically broadcast messages to everyone in the company. Example: Company Announcements - #all-announcements
    Category
    Naming Pattern (max 4 char prefix)
    Description
    Team
    #team-<name>
    Team channels, used for providing updates to direct team members Example: Sales team - #team-sales
    Automated feed
    #feed-<purpose> OR #<dep>-feed-<purpose> (see note ➡️)
    Channels that receive automated data feeds in response to actions taken in other applications. Example: Stripe customer subscription updates - #feed-revenue For departments beyond 10 members, the <dep> prefix MUST be used as a namespace for the feed to avoid cluttering the global namespace. Example: Engineering Github Feed - #eng-feed-github
    External
    #ext-<company>
    Any channel having external members (i.e. enterprises, partners) should be prefixed accordingly to ensure that Novu members are mindful of what is being discussed and where. Example: Acme Customer - #ext-acme
    Project
    #proj-<name>
    Project channels are typically not long-lived and archived once the project reaches completion. Example: Translation management - #proj-translation-management
    Department
    #<dep>-<purpose>
    Department-wide channels that are used to inform entire departments. Example: Engineering Announcements - #eng-announcements Departments: * eng * sales * marketing * people
    Event
    #event-<name>
    Channels for communicating about upcoming and active events. MUST be archived after the event has concluded. Example: Engineering Offsite - #event-rnd-offsite
    Social
    #fun-<topic>
    Channels are socially focused and not to be used for conducting business. Example: Pets - #fun-pets
    Incident
    #inci-<service>-<YYYY-MM-DD>
    Provides a single location for notifying relevant parties of ongoing platform incidents. Receives regular updates from war-room participants. Example: Prod-US Redis failure - #inci-prod-us-redis-2024-02-05

    🗣️ Communication Etiquette

    Slack has powerful tagging and notification features that quickly escalate messages to relevant parties. However, when misused, they can contribute to notification burnout and excess channel noise. Therefore, care should be exercised when using the tagging features to ensure people only receive urgent messages when necessary.

    📣 Notifying Groups

    • Do not use @here or @channel in any #all-<name> channel. This capability is reserved for the Leadership Team (see Org Map) to notify the entire company in crisis events or time-sensitive notifications.
    • Use @channel sparingly, regardless of channel. We are a global company, and @channel sends notifications to all channel members regardless of the time. If something is pressing, consider @here instead.
    • If something does not require immediate attention, please avoid using @here@channel or @everyone

    📺 Channels

    • Please be mindful of posting in #general . This channel should be reserved for important, company-wide news or questions. If you wish to post something for company-wide fun or something non-critical, please consider #fun-offtopic instead (or another social channel)

    🧵 Threads

    • Threads are an excellent way to:
      • keep the primary channel clear to avoid overloading it
      • minimize sending notifications to everyone in a channel and allow for “opting-in” to a discussion
      • centralize discussions on a given topic

    😓 Avoiding Notification Fatigue

    See Notifying Groups for guidelines on use of the @<group> tags, but they are also large causes of notification fatigue

    • Prefer to use the Scheduled Message feature for non-urgent notifications. Even though someone may have do not disturb on, they can still view the notification if they visit Slack, and people still tend to feel an urgency to respond outside of business hours. Respect their personal space 🙇
    • Only use the “notify anyway” feature if urgency is required. Slack members may have “do not disturb” on and be in deep work, preferring not to be interrupted.
    • Please be mindful of how you reach out to someone! “No Hello” is a great policy to ensure people are not unnecessarily pinged. The premise is simple: if you send someone a message, ensure that the message's primary purpose is included rather than spreading it across multiple pings.
      • ❌ ”Hey, Alice!” followed later by a block of text in a separate message
      • ✅  ”Hey, Alice! How are you? Do you happen to know how I can do ___?”

    ⚙️ Profile & Preferences

    Profile

    Please take the time to set up your profile to help others because we have new team members joining and channels with external entities. Setup should include:

    • A profile picture
    • Your job function
    • Name Pronunciation
    • Pronouns
    • Your timezone

    Preferences

    It is highly recommended that you configure your work hours under Preferences | Notifications. This setting helps control when you receive notifications to avoid the never-ending workday and to inform teammates that you are unavailable automatically.

    🧹 Channel Archiving

    Not all channels are destined to live forever. Sometimes, we need to archive channels to keep Slack clean and healthy. After a channel has achieved its purpose, we should use the Slack channel archive feature to remove the channel from view for channel participants. Slack will still index the data to be searchable, ensuring information durability when required.

    Slack also sends notifications to your personal Slack inbox when inactivity is detected in a channel. If you’re receiving this notification, take the initiative to help out! The notification will be cleared for everyone, saving the company valuable time 🕰️ and reducing noise.

    ⭐ Tips

    Save important messages

    Have an important message you want to reference easily? Add it to your ‘saved items’ list using message options and easily access the message from above your channel list without wasting time hunting around.

    image

    Star people or channels

    Starring people or channels allows you to easily access the most important conversations. To star a person or channel, click on their name or the channel name and select 'Star'. This will move them to the top of your sidebar for easy access.

    Organize your sidebar with custom sections

    You can create custom sections in your sidebar to organize your channels and direct messages. To create a section, click on the '+' symbol next to 'Channels' in the sidebar and select 'Create new section'. Name your section and drag and drop channels or direct messages into it.

    💡
    Sections are only visible to you; feel free to organize them in the way you find most convenient.

    Schedule a message for later

    If you want to send a message at a specific time, you can schedule it in advance. Just type your message, click on the up arrow next to the message box, and select 'Schedule message'. Choose the date and time you want the message to be sent, and you're done!

    image

    🔖 Learn more

    • https://www.atlassian.com/blog/halp/10-slack-tips-and-tricks-for-productivity-in-2020
    • https://tettra.com/article/slack-tips/
    Logo

    The Open Source Notifications infrastructure For Developers

    GitHubXDiscord