Growth Hacking at Treebo

A look at how engineering has been driving growth hacking at Treebo

Varun Achar
Treebo Tech Blog

--

Treebo has always had a true startup-like culture since its inception. We’ve always been experimental when it comes to looking at data, deriving insights, and quickly defining and executing small growth hacks to solve a problem and create impact. Earlier, business teams used to largely rely on manual processes to execute these experiments or use hackathons as a platform to transform ideas into products. This used to work well for us too, until we reached a scale where doing so became either prohibitive, extremely costly or extremely inefficient.

Seeing that a bunch of hacks were being run across the company, our experimental nature got the better of us. The product and engineering teams decided to see if we could start driving these growth hacks for the entire organisation.

The objective of the growth team would be simple: Chase a well defined metric.

Hence the Growth Team was born.

Unlike other engineering teams at Treebo, the growth hacking team works on ideas across all platforms and problems at Treebo. Be it hacking on an idea for improving guest experience, increasing occupancy of hotels or improving revenue realisation, the growth team could bring impact on anything related to Treebo. Every quarter, the team has a set of predefined objectives.

We encourage teams to come up with ideas outside of their work profile. We have several forums to generate blue sky ideas with no feasibility caps to avoid losing out on a good idea. With a plethora of ideas with us, we prioritise keeping in mind the objectives of the quarter. The criteria that we use for accepting a hack are:

  1. It can be built in 1 or 2 weeks.
  2. It can be executed and iterated on, in 1–2 weeks.
  3. It has the potential to have a quantifiable impact.

Engineering for Growth

Even though we build ideas that are meant to be completed in 1–2 weeks, most of these actually have the potential to have not just short term, but also long term impact. Since these also work across channels, impacting some of the core processes of Treebo, engineering for these hacks becomes vitally important.

We architected our systems keeping in mind these realities:

  1. Not all growth hacks will be successful in the first shot, hence on-the-fly configuration is the key.
  2. Growth hacks need to be tested on a smaller subset of data, iterated on and if it sticks it is finally rolled out 100%.
  3. There could be multiple versions of the same growth hack running in parallel for A/B testing their impact.
  4. Growth hacks can run real-time or at a scheduled time.
  5. Growth hacks may talk to each other.
  6. We fail smart and fail fast, hence each hack needs to be completely independent of each other and could be turned off completely.
  7. Since we can’t control what we can’t measure, we should be able to generate reports on top of our data, hence the data model should support easy reporting.

In order to architect for these realities, we relied on using a plug and play Event Driven Architecture (E.D.A.) along with Event Sourcing. Having an event driven architecture allows us to safely contain the domain for each hack, while also allowing hacks to talk to each other without having any dependency on each other. This makes the system extremely loosely coupled. The architecture also allows us to respond dynamically, in real time, as events occur.

Long running processing capability enables the architecture to collect various asynchronous events over a long period of time and correlate these events into a relationship. The system can be configured to look for correlating events that can span from minutes to any period of time. Once the events relationship has been established, it can trigger another event which begins further processing.

Event Sourcing allows us to keep a running record of the state of the system. It maintains an append-only, immutable store of all the events the system has received. This gives us the capability to replay events, which allows us to test out newer hacks or new versions of an existing hack on older data. It also gives us reliability by allowing us to reprocess data in case we detect an anomaly. And it gives us auditing for free :)

Here’s how the architecture looks like at a very high level:

Event Driven Architecture

This plug and playable architecture allows us to build out hacks extremely quickly without having to worry about creating unnecessary dependencies. In case a hack truly scales out to become a core component, we can easily migrate it out into an independent microservice.

Of course every architecture has its own pros and cons. For all the benefits it provides, there are some not so obvious challenges you’ll need to deal with. These include, eventual consistency, infrastructure setup, in some cases order of event processing, increased time for both manual and automation testing etc. We did discuss these concerns during our design phase, but the benefits outweighed the challenges. Any team planning to use an E.D.A. should address these challenges upfront. This is the most overlooked part of microservices and E.D.A. architectures and lack of understanding of these issues can hit any product and it’s team hard.

Technology that powers the Growth Hacks

Tech Stack for Growth

Python is a hacker’s favourite language, so why shouldn’t a growth hacking team use it too? We are of course hosted on AWS on docker containers (that’s just hygiene). Since on-the-fly configuration is a big part of the hacks, we relied on using the excellent dashboard and admin capabilities that Django provides out-of-the-box. All our logs are processed in kibana which, along with New Relic, is used for building our engineering dashboards. All our data is also piped to Metabase, on top of which we build our business and product dashboards.

The Growth Team experiments definitely paid off very well for Treebo and should be tested by other organisations as a concept. What started out initially as a mere experiment, the Growth Team now runs at the intersection of business and engineering brilliance. Over the last 2 quarters, the team has delivered over 30 growth hacks — some of which have shown unbelievable results, catapulting the organisation and raising it’s own already high benchmark.

Interested in working with some of the best technology and business talent in the country? Checkout our current openings at our careers page. We are always on the lookout for Engineers and Product Managers.

Follow us to keep a track of some of the interesting insights from our experiments with growth hacking.

Growth Hacking made possible by the awesome engineering team of Krishna, Ankur, Snehil, Sunil, Ansil and Santosh. Product Managed by Sourav and Jitesh.

--

--