From Startup to Scale-Up: Mastering Customer Communication with Tooling

Emrul Islam

May 15, 2023

Over the past few years, Twingate has made waves as a modern alternative to traditional VPNs, offering enhanced security with reduced setup and management hassles. As our customer base rapidly expanded, we faced challenges in maintaining open communication and staying connected with our customers. In this article, we write about our experiences and how we overcame one of the challenges.

When Twingate launched in 2019 we saw great initial traction. Our customer base back then was mainly similarly-minded startups that found Twingate to be cheaper and/or easier than the alternatives they looked at.

Often times our prospects would be using Slack internally so we’d setup Slack Connect channels with them for easier communication. Customers almost always will have to communicate with different areas of any company that provides a service to them. Our customers were no different, sometimes there’d be a technical question, other times there’d be a legal query on our Terms of Service or perhaps there’d be a query about procurement. Using Slack Connect allowed the most relevant person at a customer to directly contact us, and on our side, we could quickly make sure it was addressed by the most appropriate person in the company. No longer do customers have to direct all queries through an account manager who then has to figure out who to route it to and stay on top of any resolutions.

Slack Connect definitely helped us win a few sales deals, build rapport with our customers and keep a pulse on how they were doing. There really were no negatives, aside from the fact that not all our customers were on Slack.

All was well until mid-2022. By this time our company had grown - instead of a ‘team’ being one person, we now had multi-person teams for almost every company function. And one of the reasons we’d grown was of course the influx of customers we were receiving (we weren’t complaining!). Our list of Slack Connect channels had grown significantly.

This presented a few problems -

  1. It was no longer scalable for all the possible Gators (the name we use to describe people who work at Twingate) that may need to interact with a customer to be in every Slack channel.

  2. If the Gators that were in a channel were on PTO it could mean queries going unanswered for an extended period of time.

  3. Our support team were raising concerns also - we have a ticketing system to track technical issues and our team work through tickets largely on a First-In-First-Out basis, looping in our engineering team where necessary. How could they interrupt their system and maintain resolution tracking if a customer raised an issue ad-hoc via a Slack Connect channel?

There was some discussion on how to address all the many issues that were cropping up, we even contemplated giving up on channels altogether. The logic for doing so was pretty clear, but there was an appreciation that Slack Connect had been instrumental in building the loyal base of users that we have and there’d definitely be a mutual loss if they went away. For instance, we’d potentially lose the valuable product improvement nuggets we’d been receiving via messages in these channels.

We also didn’t want to lose the attention we paid to our customers as we grew into a larger organisation, after all, we were growing thanks to their loyalty so it would be slightly discourteous if nothing else. Plus it always feels a bit rough when we personally experience a great little startup growing and losing some of the ‘personal touch’ - we didn’t want to be that startup.

In the end, we settled on one technical improvement (discussed shortly) and the following set of operational changes:

  • Limiting Slack Connect access to customers on our Enterprise tier or accounts with a large number of seats on Business.

  • Redirecting technical support requests to our ticketing system if not addressed immediately.

  • Assigning at least one member from our Customer Success team to each channel as the main point of contact.

On the tech tooling side, what we wanted was a way to funnel all Slack Connect messages into a single internal Slack channel that Gators could be present in. That way, if anyone noticed a message that was relevant to their function they could jump into the customer channel and address it directly.

We couldn’t find any feature natively in Slack that did this, which we thought was a bit surprising.

Spare engineering time within any tech startup is rarer than hen’s teeth and things are no different at Twingate. Thankfully, it didn’t take us long to put together something outside of our engineering team: A Slackbot that would subscribe itself to all customer channels and re-post customer messages into a central channel. The app is pretty simple - written in NodeJS, stateless and is deployed quite easily via Google CloudRun. If there’s any interest we might even Open Source it.

The app is so simple that we can’t imagine it deserves an article being written about it - and this article isn’t about the app we created, but what it enabled us to do.

The results? Well, it can be hard to tell when no one grumbles but the outcome of these changes has been overwhelmingly positive. Our customers still communicate to us via Slack and as far as they’re concerned we respond to them with the same personal touch as before. Our customer numbers continue to grow and we can still maintain Slack Connect channels with them. Within Twingate, the central channel is mainly subscribed to by the Account Managers, Customer Success and Solution Engineering teams. Oh and our CEO, Tony 🙂

We’re facing little challenges like this every day as our business grows and we’re sure we’re not the only startups going through this. We hope we can continue to find innovative solutions like this as our business expands.

But the key take away, is for at least a little longer we can continue acting like a spunky startup.

Rapidly implement a modern Zero Trust network that is more secure and maintainable than VPNs.

From Startup to Scale-Up: Mastering Customer Communication with Tooling

Emrul Islam

May 15, 2023

Over the past few years, Twingate has made waves as a modern alternative to traditional VPNs, offering enhanced security with reduced setup and management hassles. As our customer base rapidly expanded, we faced challenges in maintaining open communication and staying connected with our customers. In this article, we write about our experiences and how we overcame one of the challenges.

When Twingate launched in 2019 we saw great initial traction. Our customer base back then was mainly similarly-minded startups that found Twingate to be cheaper and/or easier than the alternatives they looked at.

Often times our prospects would be using Slack internally so we’d setup Slack Connect channels with them for easier communication. Customers almost always will have to communicate with different areas of any company that provides a service to them. Our customers were no different, sometimes there’d be a technical question, other times there’d be a legal query on our Terms of Service or perhaps there’d be a query about procurement. Using Slack Connect allowed the most relevant person at a customer to directly contact us, and on our side, we could quickly make sure it was addressed by the most appropriate person in the company. No longer do customers have to direct all queries through an account manager who then has to figure out who to route it to and stay on top of any resolutions.

Slack Connect definitely helped us win a few sales deals, build rapport with our customers and keep a pulse on how they were doing. There really were no negatives, aside from the fact that not all our customers were on Slack.

All was well until mid-2022. By this time our company had grown - instead of a ‘team’ being one person, we now had multi-person teams for almost every company function. And one of the reasons we’d grown was of course the influx of customers we were receiving (we weren’t complaining!). Our list of Slack Connect channels had grown significantly.

This presented a few problems -

  1. It was no longer scalable for all the possible Gators (the name we use to describe people who work at Twingate) that may need to interact with a customer to be in every Slack channel.

  2. If the Gators that were in a channel were on PTO it could mean queries going unanswered for an extended period of time.

  3. Our support team were raising concerns also - we have a ticketing system to track technical issues and our team work through tickets largely on a First-In-First-Out basis, looping in our engineering team where necessary. How could they interrupt their system and maintain resolution tracking if a customer raised an issue ad-hoc via a Slack Connect channel?

There was some discussion on how to address all the many issues that were cropping up, we even contemplated giving up on channels altogether. The logic for doing so was pretty clear, but there was an appreciation that Slack Connect had been instrumental in building the loyal base of users that we have and there’d definitely be a mutual loss if they went away. For instance, we’d potentially lose the valuable product improvement nuggets we’d been receiving via messages in these channels.

We also didn’t want to lose the attention we paid to our customers as we grew into a larger organisation, after all, we were growing thanks to their loyalty so it would be slightly discourteous if nothing else. Plus it always feels a bit rough when we personally experience a great little startup growing and losing some of the ‘personal touch’ - we didn’t want to be that startup.

In the end, we settled on one technical improvement (discussed shortly) and the following set of operational changes:

  • Limiting Slack Connect access to customers on our Enterprise tier or accounts with a large number of seats on Business.

  • Redirecting technical support requests to our ticketing system if not addressed immediately.

  • Assigning at least one member from our Customer Success team to each channel as the main point of contact.

On the tech tooling side, what we wanted was a way to funnel all Slack Connect messages into a single internal Slack channel that Gators could be present in. That way, if anyone noticed a message that was relevant to their function they could jump into the customer channel and address it directly.

We couldn’t find any feature natively in Slack that did this, which we thought was a bit surprising.

Spare engineering time within any tech startup is rarer than hen’s teeth and things are no different at Twingate. Thankfully, it didn’t take us long to put together something outside of our engineering team: A Slackbot that would subscribe itself to all customer channels and re-post customer messages into a central channel. The app is pretty simple - written in NodeJS, stateless and is deployed quite easily via Google CloudRun. If there’s any interest we might even Open Source it.

The app is so simple that we can’t imagine it deserves an article being written about it - and this article isn’t about the app we created, but what it enabled us to do.

The results? Well, it can be hard to tell when no one grumbles but the outcome of these changes has been overwhelmingly positive. Our customers still communicate to us via Slack and as far as they’re concerned we respond to them with the same personal touch as before. Our customer numbers continue to grow and we can still maintain Slack Connect channels with them. Within Twingate, the central channel is mainly subscribed to by the Account Managers, Customer Success and Solution Engineering teams. Oh and our CEO, Tony 🙂

We’re facing little challenges like this every day as our business grows and we’re sure we’re not the only startups going through this. We hope we can continue to find innovative solutions like this as our business expands.

But the key take away, is for at least a little longer we can continue acting like a spunky startup.

Rapidly implement a modern Zero Trust network that is more secure and maintainable than VPNs.

From Startup to Scale-Up: Mastering Customer Communication with Tooling

Emrul Islam

May 15, 2023

Over the past few years, Twingate has made waves as a modern alternative to traditional VPNs, offering enhanced security with reduced setup and management hassles. As our customer base rapidly expanded, we faced challenges in maintaining open communication and staying connected with our customers. In this article, we write about our experiences and how we overcame one of the challenges.

When Twingate launched in 2019 we saw great initial traction. Our customer base back then was mainly similarly-minded startups that found Twingate to be cheaper and/or easier than the alternatives they looked at.

Often times our prospects would be using Slack internally so we’d setup Slack Connect channels with them for easier communication. Customers almost always will have to communicate with different areas of any company that provides a service to them. Our customers were no different, sometimes there’d be a technical question, other times there’d be a legal query on our Terms of Service or perhaps there’d be a query about procurement. Using Slack Connect allowed the most relevant person at a customer to directly contact us, and on our side, we could quickly make sure it was addressed by the most appropriate person in the company. No longer do customers have to direct all queries through an account manager who then has to figure out who to route it to and stay on top of any resolutions.

Slack Connect definitely helped us win a few sales deals, build rapport with our customers and keep a pulse on how they were doing. There really were no negatives, aside from the fact that not all our customers were on Slack.

All was well until mid-2022. By this time our company had grown - instead of a ‘team’ being one person, we now had multi-person teams for almost every company function. And one of the reasons we’d grown was of course the influx of customers we were receiving (we weren’t complaining!). Our list of Slack Connect channels had grown significantly.

This presented a few problems -

  1. It was no longer scalable for all the possible Gators (the name we use to describe people who work at Twingate) that may need to interact with a customer to be in every Slack channel.

  2. If the Gators that were in a channel were on PTO it could mean queries going unanswered for an extended period of time.

  3. Our support team were raising concerns also - we have a ticketing system to track technical issues and our team work through tickets largely on a First-In-First-Out basis, looping in our engineering team where necessary. How could they interrupt their system and maintain resolution tracking if a customer raised an issue ad-hoc via a Slack Connect channel?

There was some discussion on how to address all the many issues that were cropping up, we even contemplated giving up on channels altogether. The logic for doing so was pretty clear, but there was an appreciation that Slack Connect had been instrumental in building the loyal base of users that we have and there’d definitely be a mutual loss if they went away. For instance, we’d potentially lose the valuable product improvement nuggets we’d been receiving via messages in these channels.

We also didn’t want to lose the attention we paid to our customers as we grew into a larger organisation, after all, we were growing thanks to their loyalty so it would be slightly discourteous if nothing else. Plus it always feels a bit rough when we personally experience a great little startup growing and losing some of the ‘personal touch’ - we didn’t want to be that startup.

In the end, we settled on one technical improvement (discussed shortly) and the following set of operational changes:

  • Limiting Slack Connect access to customers on our Enterprise tier or accounts with a large number of seats on Business.

  • Redirecting technical support requests to our ticketing system if not addressed immediately.

  • Assigning at least one member from our Customer Success team to each channel as the main point of contact.

On the tech tooling side, what we wanted was a way to funnel all Slack Connect messages into a single internal Slack channel that Gators could be present in. That way, if anyone noticed a message that was relevant to their function they could jump into the customer channel and address it directly.

We couldn’t find any feature natively in Slack that did this, which we thought was a bit surprising.

Spare engineering time within any tech startup is rarer than hen’s teeth and things are no different at Twingate. Thankfully, it didn’t take us long to put together something outside of our engineering team: A Slackbot that would subscribe itself to all customer channels and re-post customer messages into a central channel. The app is pretty simple - written in NodeJS, stateless and is deployed quite easily via Google CloudRun. If there’s any interest we might even Open Source it.

The app is so simple that we can’t imagine it deserves an article being written about it - and this article isn’t about the app we created, but what it enabled us to do.

The results? Well, it can be hard to tell when no one grumbles but the outcome of these changes has been overwhelmingly positive. Our customers still communicate to us via Slack and as far as they’re concerned we respond to them with the same personal touch as before. Our customer numbers continue to grow and we can still maintain Slack Connect channels with them. Within Twingate, the central channel is mainly subscribed to by the Account Managers, Customer Success and Solution Engineering teams. Oh and our CEO, Tony 🙂

We’re facing little challenges like this every day as our business grows and we’re sure we’re not the only startups going through this. We hope we can continue to find innovative solutions like this as our business expands.

But the key take away, is for at least a little longer we can continue acting like a spunky startup.