April 19th, 2016
Here at B23, we use Slack, a popular messaging app, for inter-team communication surrounding the B23 Data Platform. We have individual channels set up for general communication, technical topics, and project-specific discussions. We also use the direct messaging feature to discuss certain matters one-on-one. This may sound like a typical messaging tool, but Slack differentiates itself from other messaging apps by providing integrations with a large number of third party services. We have taken advantage of popular third party integrations like GitHub and ZenHub to keep track of our development process. These integrations support product development, but they aren’t part of the product itself.
More recently we have started building custom Slack integrations directly into our product to keep us as engaged as possible with our users. Often the most important innovations are simple and obvious, and the introduction of real time notifications of product and customer behavior into Slack has fundamentally changed our ability to serve our users.
On March 23, 2016 we released the public beta version of B23 Data Platform, a product we’ve built to enable big data analytics in a fast, secure environment. This was a huge milestone for us, but we soon discovered that measuring our product’s popularity and usability proved cumbersome, as we had to develop additional code to help understand usage patterns. As with any beta product, we treasure our users. Customer engagement and feedback is critical to our product development. We wanted to know in real time when a new customer logs in for the first time…and so we decided to integrate directly with the real-time messaging app that we already use.
Slack has an integration called “Incoming WebHooks,” which provides users with a URL that they can use to post messages from their external applications. So we created a Slack channel in B23 Data Platform — called “#new-users” — and now, each time a new user logs into B23 Data Platform, we receive a Slack notification within seconds. This allows us to follow up with new users directly, answer their questions, and get feedback. We can also use this feature to track the number of new users, thereby gauging the popularity of B23 Data Platform over time.
We realized that because we have worked very closely with B23 Data Platform throughout its development, its intricacies are obvious to us; however, they may not be so obvious to new users. We also recognized that there might be some kinks within the beta version of B23 Data Platform that still need to be worked out.
We want to make B23 Data Platform as reliable as possible for our customers, so we created another Slack channel — called “#ss-errors” — which receives a notification each time a user encounters an error in the platform. Of course we believe this channel will hardly be utilized (!), but in the rare case an error occurs, we want to know about it as soon as possible. The Slack message contains a basic error description and indicates the location of the error in the log, allowing us to trace the problem and fix it. This is great user testing for us, but more importantly, it allows us to follow up with users quickly, assure them that the bug will be fixed, and provide them with a workaround in the meantime. Internally, we are able to prioritize bug fixes once we see the distribution and quantity of each error on the Slack channel. We are thereby able to improve customer experience and B23 Data Platform itself, all at the same time.
Integrating Slack messages into B23 Data Platform was a surprisingly quick and simple process, and has already provided us with many benefits. It can go a long way in improving customer engagement and experience!
- Go to https://slack.com/apps and search for “Incoming WebHooks”.
- Click the “Configure” button next to the Slack team that will receive notifications, or click “Sign in to another team” if you don’t see your team listed.
- Click the “Add Configuration” button.
- Select the channel where you want to receive notifications. You can also create a separate channel, so that your current channels don’t get flooded with notifications.
- Click the “Add Incoming WebHooks integration” button. Your Slack channel is now set up to receive notifications.
- On the next page, you will be given a Webhook URL, along with instructions on how to send HTTP POST requests to your Slack channel from your application.
Integrating a product with real-time messaging allows companies to better understand and manage their product. It can open their eyes to flaws in their product and give them the ability to improve it.
By Courtney Whalen, B23 Data Scientist working on the B23 Data Platform: a platform that automatically, in minutes, builds big data applications based on customer defined patterns.