Moving work forward

How internal Slack integrations can simplify your company’s workflows

Imagine you’re a receptionist for a busy business. It’s Monday morning, and the day’s first visitor arrives for a meeting.

First, you spend some time going back and forth on the spelling of her name (“It’s S-A not S-H…”) and figuring out who she’s here to see. Once that’s sorted, you search through your company directory, find the relevant phone number, and call the host to come and fetch their guest. The visitor has to sit tight and wait until someone comes to get them.

This process, which happens dozens of times per day, could be made so much easier by bringing it into Slack with an internal integration. Here’s how that could look:

A visitor walks into your office, and as she approaches, you give her a tablet and ask that she enters her name. The meeting host has used a slash command to add the guest to a list of today’s visitors, so the rest of her information fills in automatically.

A Slack integration sends the host a notification displaying the visitor’s name and location. Rather than leaving the visitor hanging for an answer, the meeting’s host simply selects an option from a menu, like “On my way,” “Running late,” or “Let security know.”

High-frequency, low-effort workflows like this are perfect candidates to bring into Slack with an internal integration. In Slack, your team can kick off and compete workflows in a searchable interface, without ever switching contexts.

In this article, I’ll show you our process for mapping out a workflow, and I’ll share some examples of common workflows that are great fits for bringing into Slack.

Mapping out a workflow

Before you figure out what to build, you first need to identify workflows that are good candidates for an integration. Most work processes follow a common pattern:

  1. Kickoff: The event that starts the process. This could be anything from filing a new help desk ticket, filing a sales lead, or approving a new headcount for your team.
  2. Triage: You assess the impact of the event, assign an owner, and decide on next steps. To do this, you need to get data from other systems.
  3. Communication: You loop in the right people based on the outcomes of your triage.
  4. Task breakdown: The people involved need to figure out what the tasks are, prioritize them, and then complete them. This is often easier said than done.
  5. Resolution: Once the tasks are complete and the outcome is reached, the process needs to end somehow. This could be a celebration or a post mortem, but either way, you’ll want to document and share what happened and what was learned.

You can break up any workflow into these parts to visualize how it could be simplified with an integration. Take the receptionist example, for instance — if we were to break it down, it would look like this:

Initial kick-off: Guest arrives at reception
Triage: You collect their name and ask who they are here to see
Communication: You let the host know their guest has arrived
Task breakdown: The host lets you know whether they’re on their way or running late. You update the guest or security with that information.
Resolution: The host or a security guard picks up the guest

Now that you understand our approach to mapping out a workflow, let’s look at some examples of some other popular use cases that are great candidates for a Slack integration.

Updating sales opportunities

Accurate forecasting is a tough but important part of a successful sales team, but keeping everyone informed — on the state of different opportunities, the reasons they’ve changed, and the next steps — can be tedious.

Most CRM systems don’t make this process easier. They’re slow and especially cumbersome on mobile. As a result, people don’t want to use them, and their information becomes outdated.

Here’s what the process looks like today.

Kick-off: A sales prospect lets you know they’re not going to buy as many units as projected because of a problem with your product.
Triage: You’re the sales rep, so you figure out the impact on the deal, and whether there’s a way to get the prospect to buy the number of units they originally suggested.
Communication: You tell the product managers so they can gather feedback from the prospect. 
Task breakdown: Internal teams work with you to determine if the product problem can be fixed, or if there is a workaround.
Resolution: You update the opportunity in your company’s CRM to document what’s been done and what needs to happen next, and let the team know during your next forecasting meeting.

Now let’s imagine how that process could look if it were brought into Slack.

As soon as you hear that a prospect might not buy as many units as you had expected, you grab your phone and open Slack. In a direct message to a bot, you search for that opportunity and use a message menu to select an action to take — in this case, “Edit opportunity value.”

The bot asks you to select a reason why the opportunity value has decreased. You select “Product deficiency,” and note the specific product area it relates to.

In the background, your internal integration figures out who is responsible for that product area. It sends a message to your #degraded-opportunities Slack channel where you and the product lead are notified. Here, you can get the product team more involved in the sales process.

Bringing your sales forecast updates into Slack makes important changes visible and searchable across your sales, product, and engineering teams.

Setting estimates on development tasks

Estimating the time and complexity of software is hard. One way to make it easier and (slightly) more accurate is to poll subject matter experts for their opinion. Gathering different perspectives on the same bit of work can help you identify potential problem areas early.

To do that, you need to find the correct subject matter experts, ask them their opinions on an estimate, loop in the appropriate leads from business and sales, and then update the task with the final estimate — a long and manual workflow.

Now imagine simplifying this process with a Slack integration:

An internal integration notifies the appropriate Slack channel when an item is added to your product backlog. The notification includes an overview of what needs to change, why the change is important, and when it needs to happen.

Teams can triage the feature directly in Slack by adding additional details, setting its priority if it’s a relevant item, or closing out the ticket if it’s not.

Besides the detail included here, you can find subject matter experts in Slack using search (which highlights people who often talk about a particular term), well-named channel conventions, or user groups.

Using message menus, this integration allows you to poll a group of people (or even a channel) on what they see as the size of that development task. Once people submit their responses, the integration @mentions those people who gave the highest and lowest estimates, kicking off a conversation that helps the group reach a more accurate estimation.

Build an integration for your team

Menus, buttons, and other interactive platform features can make messages in Slack a canvas for you to facilitate workflows for your company – without needing to open up another tab, piece of software, or email chain.

Combined with timely, contextual notifications and added transparency around how work gets done, integrations can make your working life a little more pleasant and productive. And when a business is made up of thousands of intersecting processes like this, little efficiency gains add up.

You can check out our public ideaboard to get more ideas on what to build — we’ve updated it to include app ideas that are particularly well-suited to internal integrations. When you’re ready to get started, visit our API site to learn how to build an internal integration for your team.

Have you built a weird or wonderful Slack integration for your team? We’d love to hear about it!