If you are a developer working for a small time operation (or a solo operation like mine), you know the struggle of staying on top of your support channels. From emails, to Play Store reviews, Twitter, and other mediums, support is a huge part of making - and growing (!) - a successful app.
As your app or service continues to grow, so will the support and management side of the business. On top of that, the more time you spend pouring over support channels, the less time you get to spend coding and improving the app.
For me, the support aspect has gotten significant over the years. I want to make myself available to answer questions, respond to reviews, and help my users. That means that I have less time to develop new features, though. There has to be a balance and a line. I get hundreds of people reaching out to me every day - mostly with feature requests and simple questions about functionality.
Creating a Help Page
The most straight-forward way to begin to reduce this burden is giving your users an easily searchable FAQ or help page. For Pulse, mine is extremely extensive:
It takes a long time, and many iterations, to create a page like this. Once you do though, it is indispensable. Almost every person that sends me a question can get their their answer on my help page. Sometimes users need a bit of help searching, but once they get the hang of it, that page has been a huge time-saver for both myself and my users.
If you want to make one that is similar, I open-sourced a template, as well as Talon's help page, earlier this year:
Designing a Dashboard
One of the cooler things that I have designed, in terms of managing support, has been my dashboard.
At it's core, this desktop app is just an aggregation of different web pages. It can be installed on Mac, Linux (Chrome OS), and Windows.
Having these pages wrapped up and so easily available in one, persistent, app allows you to get to things much more quickly. It also reduces the distraction that happens when you open tons of Chrome taps or browser instances.
I just open-sourced my dashboard implementation, which would be very easy to adapt to your own business or use-case:
You could use my dashboard for any type of services that you wanted to. It obviously isn't limited to support related activities.
Aggregating your Support Channels
Both the help page and the dashboard have made a huge difference for me, but I still wasn't satisfied. I knew I was still spending too much time trying to look through different channels. That's where Slack comes in. If you haven't used Slack before, you should check it out. It is a fantastic tool.
Running the business by myself, I obviously don't use Slack for team communication. Over time, I have built it out to aggregate many of the different support channels that I previously had to check manually. Now, everything runs through Slack. For example:
- Every half hour, I have it make a report of all of the new reviews for Talon and Pulse. I can find out by simply opening Slack, if something is new.
- I get notifications whenever something happens on a GitHub repo that I own.
- If something is wrong with one of my builds, Jenkins will notify me right away, through Slack.
- I get daily purchase reports to track the finances of Pulse and how many new users are picking it up.
- I get daily activity reports for the number of active users for Pulse.
- If one of my sites is having issues or downtime, Slack let's me know.
- The list goes on...
One of the best parts of Slack is the notification customization that they provide. I don't have to get push notifications whenever something changes or a new alert comes through. I can choose when, and for what reasons, I want to be interrupted while working.
The possibilities here are endless. Slack has a very open API for publishing messages, through a bot. Instead of checking all of my support channels manually, the majority of them are instantly available when I open the Slack app across any of my devices. It makes it so much simpler and quicker to know what is new and what I need to look into.
This is a little thing and it took quite a bit of time to build out all of the reporting. To me though, it has been incredibly worthwhile.
I don't have any of these little monitoring/reporting services open source at this point, but I probably will post them in the future.
Hopefully this is helpful for people. I have put a ton of time into my support services and getting the most out of my day. As a dad and a husband, optimizing my day is extremely important to me. I cannot work all of the time. Whatever I can do to reduce the load is a lifesaver in the long run.
Optimizing your support is something that users don't normally notice or care about. If it helps you crank out more product though, that is a win for everyone and deserves some thought and effort.
Let me know if you are using my open-source help page or dashboard!