Our Stack v2

Back in August of 2015, Stuart McLeod, our CEO and co-founder, wrote about the technical stack that we use to run our fledgling SaaS company. He thought he’d do an update to let you know what we’ve since changed, what we got right and what we’ve added.

On the whole, I feel like the theory is starting to play out. Choosing enterprise style apps, even at the very beginning, gives us a competitive advantage on labour and systems integration that you just don’t get from the smaller, usually cheaper, applications.

I still can’t stand the thought of wasting so much time, money, energy and effort later on. The transition from startup, through good growth, to hyper growth is hard enough without changing the fundamental underlying systems that support the business. I continue to believe that the products we chose should support that growth for a few years, not just the next six months.

So here’s what we’ve put in place so far.

Azure, and still soon to be AWS. I feel like the Azure platform has improved over the year and we didn’t rush to move everything across, although we still plan to. Most of our backend systems now run on AWS while most of our application environment remains on Azure. The technical margin for the fundamental components — VMs and application environments seems to be diminishing, although the sheer scale of what Amazon has built remains both impressive and useful.

• In 2015, I wrote the following about Segment: “One of our product philosophies is to measure everything. Peter and the guys at Segment have done a great job. A real ‘picks and shovels’ type business. Everything that users do in the application and website is able to be measured with events produced in Segment. Once arrived in their warehouse, those events can then be distributed to many, many of their integrations. The real benefit is making the important process of distributing those events to the relevant applications extremely straightforward. Pretty much everything in this list is connected to Segment in one way or another.”

Nothing has changed here! With every feature we implement we measure its impact and usage. Segment data is distributed to a warehouse and we use a multitude of applications to report on that data including New Relic and Mode. We maintain a very clean spreadsheet of all our events, including a consistent naming convention, what triggers them to occur and a bit of a description. Once we put that in place, we became more confident of proving our design theories and ensuring we’re enhancing, or not, the right aspects of the product.

Algolia gives us a competitive advantage in search — there’s no two ways about it. Given the volume of data that we index, we pretty quickly moved to their enterprise platform for unlimited data. You can find email faster and more reliably in Karbon than you can in Gmail. We’ll continue to expand the types of data that we index — attachments are next — and improve the relevance of results, however I cannot recommend these guys enough. Shout out to Christoph Janz for the introduction to CEO Nicolas Dessaigne.

• We were using Xamarin for our mobile product — never again.

• Switching from FullContact to Clearbit was a pretty straight forward process. We found the social results to be more reliable, however we’re still not getting the accuracy and volume of correct data that we’d like to see. We continue to work with the guys there on accuracy of social data.

New Relic for all our performance metrics, monitoring, etc.

LogEntries for our log entries.

Salesforce has become the powerhouse behind everything. Our system of record, if you like. We integrate all our systems including the application into Salesforce, and pretty much everything about a customer will appear in there. I think the key to Salesforce is keeping people out of it as much as possible — the data being fed to Salesforce is typically from our other systems. This, in theory, should keep the accuracy up and the risk of duplication and manual effort low. It doesn’t always work like that, and when Salesforce becomes full of data rubbish, it becomes nearly impossible to get it out.

Marketo is serving us well, although we need to be using more of it to justify the exorbitant price tag. They’ve been purchased by private equity which hasn’t changed their lack of design, relatively low product release cycle and their very quick AR department, but again, the integration to Salesforce is a key factor in our decision to continue to use Marketo. A migration to something else at this stage would be a monumental effort, and I think any issues are a lack of understanding the full capability of the platform.

RedShift. Our warehouse use has expanded and continues to provide interesting insights. Like any of those things there’s a manual component to getting everything in one place and hanging it together, however we continue to make progress.

Infer is predictive lead scoring and analytics. Based on our existing data in Salesforce, Infer builds a model that predicts the likelihood of success for a particular lead based on 300+ signals of that company. Signals like their website, location, social profiles and other attributes. This is a significant competitive advantage for us as it allows our sales team to spend more time and diligence working with our ‘A’ prospects than say the ‘C’s and ‘D’s. Our model is about to get a refresh now that we have much more data, and I suspect that our sales productivity, growth rates and ARPP will continue to increase. We’re very happy with our Infer implementation.

• One of the biggest shifts we’ve made over the last 12 months is away from Domo and into InsightSquared. What we found with Domo was the constant manual labour requirements to synthesize data and develop the corresponding reporting capability. InsightSquared has built a large array of comprehensive reports already attuned to Salesforce data. Their team has taken the way that we work with Salesforce and adjusted their reports accordingly.

Insight Squared Chart

It would have taken one person another 12 months to build out the array of reports that they provide, and the moment something changes in our process or custom fields, the report would require adjustment. InsightSquared takes the pain of that away. We’ve refocused that resource on customer-facing reporting which will prove enormously valuable.

We’ve got reports that are available to the whole team that cover:

  • Employee scorecards
  • Sales activities
  • Sales development
  • Sales pipeline
  • Sales forecast
  • Sales results
  • SaaS reports
  • Demand generation
  • Data quality

We can also build our own reports in their custom reporting product, which is still in Beta, called Slate. It’s easy to get lost in the data, but once you spend a reasonable amount of time getting to understand it, it paints a very clear picture of what likely outcomes are on the horizon.

Now that we’ve freed up our Data Analyst / Reporting guru, he spends his time building reports on customer’s financial and Karbon data in a platform called Looker. While still in very early stages with a few customers, and subject to a separate piece of writing, this is proving to be a massive game-changer for practices. Never before have partners, team leaders or managers been able to see how efficient their firm is operating without the fictitious use of timesheets. Seriously exciting insights are just around the corner.

Google Analytics. It’s free (and very complicated), but easy if you just want to look at the trends.

• We use Crazy Egg and Moz for our behavioural analytics, SEO & SEM analysis respectively.

Intercom continues to improve and we’re big fans. Our customers are in touch with us many times a day and our Customer Success team are becoming more experienced with its power. We distribute vital information to Intercom such as whether the user is part of a paying customer via Tray.IO, the Intercom API and Segment.

Zendesk, in their recent outstanding quarterly results, introduced a brand refresh and an array of products that fit together more and more, enabling them to expand within their existing client base and no doubt attract larger and larger customers. Their share price continues to do well and everything I hear from within the company is very positive. Would recommend to everyone.

FullStory was perhaps our find of last year. It allows us to see exactly what the user sees on our website or inside the application. Instead of guessing what customers are doing when support tickets arrive, our Customer Success team can see exactly what the user experienced, whether it be an error or strange behavior, right up to when a user engages in “rage” pressing — when they either hit their keyboard or mouse multiple times expecting a different result! This probably indicates a UX design issue or javascript errors. FullStory saves our engineers hours and hours over the month as they have the exact behavior and javascript console that is causing the issue at their fingertips.

Slack — well, durgh.

• We continue to use all the Atlassian products very heavily. I need to do all my upgrades soon.

• We’re slowly scraping Zapier for Tray.io. Tray seems to position itself in the space between Zapier and Mulesoft — which I’d love to have the time to learn, perhaps next year. We’ve now built out five or six significant workflows inside Tray, which encompass all of the major players mentioned in this article. Once you learn it, it’s reasonably straightforward, but like any of those integration platform plays, they’re held back with the amount of connectors on offer. Just a simple upload to S3 at the moment is either impossible or very difficult. Their team has been quick to respond to any issues and we’ll continue to develop labour and cost saving workflows in Tray.

• We scrapped Sitefinity and Wordpress for SilverStripe, and we’ve been very happy with that decision. Our marketing site evolves quickly with only one developer and we’ll soon have our application, support site and marketing site fully user context aware, enabling us to customize the delivery of our content depending on the visitor’s intentions.

Google Apps for email, calendar, etc.

Xink for easy control of email signatures, ties nicely into Google Apps.

Dropbox. Google Drive seems to be catching up for syncing files and would be a considerable cost saving at only $10 per head. We’ll have to revisit that later on.

• We scrapped Boomset and built our own registration and check-in applications on top of Marketo. Nothing fancy but it does the job.

• We scrapped Highfive for Zoom, and it has changed our lives. For all those companies that spend the first 5–15 minutes having technical issues at the start of a meeting, you absolutely have to move to Zoom. Even, and sometimes especially, cross-Pacific video calls, it’s almost always reliable with very little downtime and latency issues.

• We’ve also scrapped GoToWebinar for Zoom, given their new(ish) integration with Marketo. We were happy to see the back of the 90s UI of GTW.

Wistia hosts all our video content for redistribution on our website and other properties. The integration between Wistia and Marketo was a big selling point because we can track the video viewing attributes of our visitors. We produce an enormous amount of content and our video editor does an extraordinary job keeping our quality high and the consistency of delivery at highly regular intervals.

• Our design team continue to use InVision to demonstrate high fidelity screen flows to the rest of the organization and sometimes to customers. We’re great friends with the guys at Atomic and can’t wait to see that product mature over the next few years.

Oktopost is our social media management platform. It provides social media campaign management, an editorial calendar and automation for our marketers. The analytics back into Marketo is valuable data, allowing us to track potential customer activity across multiple platforms such as Facebook, LinkedIn and Twitter. We’re still trying to get the most out of Oktopost and I feel there’s more to be had from what is a reasonably comprehensive platform.

• We’ve scrapped Skype, never to be loaded again.

• We now use our own product for all our task management, assignments, etc. We conduct the OKR process inside there as well and we all love eating our own dog food. Needless to say there’s always plenty of feedback!

Okta. Nearly every application in this list has a login via Okta, integrated with an Active Directory located in Azure. They’ve done a great job of enterprise login and the more applications that support SSO, the easier life is for everyone.

• Employees use Expensify for tracking business expenses although we tend to use Amex as much as possible, for the points. This is easier said than done for our staff in Australia because of the lack of acceptance of the card with merchants. We’ve known David and the team from Expensify since the early Xero days, and they’ve done a pretty good job with that product.

Over the next few years, I really see the investment in these enterprise grade systems paying off. It’s not the system itself that proves out its own value, it’s the integration between them that is becoming more and more compelling for every process that we automate. We’ll never, ever hire a person to handle billing or subscriptions or a large number of sales ops people — the machine that we’re building will do all of that for us.

Elon Musk said recently that the machine that builds the machine becomes more valuable than the end product. I’d love to get to that one day.