Following our recent company-wide Hackathon, where teams across the business had to create a prototype app in Slack that could offer meaningful benefits, we felt inspired to pursue one of the ideas and develop it into a successful project.
In this blog, Chris Winch, Front End Consultant, tells the story of bringing "Treeumph" to life.
My Hackathon team drew inspiration from HiBob, our organisation's HR system, and its Kudos feature, to develop a Slackbot application that plants a tree whenever colleagues express recognition or appreciation.
When we came up with the idea, the primary goals were to:
To begin, we found a service called Digital Humani, which allowed us to make an API request to plant a tree.
As we worked on building our prototype, we encountered some issues getting a Slackbot to run locally. Attempting to pinpoint the cause was consuming our valuable prototyping time, so we shifted focus and decided to prototype the app using Zapier, which allows users to connect different apps and APIs quickly without any code.
One of the team set up the Zapier connection so that whenever a message containing the word "kudos" was posted to our #tree-kudos channel in Slack, it would make an API request to the Digital Humani API to plant a tree.
We presented our prototype app to the Hackathon's judging panel, and they immediately saw its potential; we were one of three winning teams in the first round. Despite not coming first in the final round, it was clear there was a genuine interest in what we had developed, prompting us to turn our idea into a fully functional product in the coming months.
It wasn't long after the Hackathon before an actual production project kicked off with a project team assigned to it - and I had the honour of being part of this team.
Comprising a Delivery Manager, Business Analyst, Business Strategist, DevOps Consultant and three Front End Consultants (including myself), the project team began with introductory workshops. Led by our Delivery Manager, these served to define the team's focus, set objectives, and determine essential skills.
The original Hackathon team had called the app "Go Green, Get Rewards", but when the new project team took charge, we decided to hold a poll to give it a new name; the result was "Treeumph" – a suggestion that came from our brilliant Business Strategist.
When we started developing the Treeumph app, we were aware that using a US-based service like Digital Humani in the UK may lead to potential implications for our company, so we decided to look for a UK-based charity we could use instead. Our Business Strategist identified More Trees as a UK-based alternative.
More Trees works with tree planting partners across the world who work with local communities to restore healthy forests and reduce extreme poverty. They ensure trees are planted in the most suitable planting seasons and weather conditions and cared for to provide maximum survival rates, carbon sequestration and community benefits.
We built the app using Slack Bolt, which provides a simple-to-use API to quickly get up and running with Slackbots. This allowed us to quickly create a basic prototype of the app built with NodeJS.
In the development process, it was necessary to find a way of replicating the HiBob message Treeumph needed to listen to and react to without bombarding all staff with multiple notifications. To do so, one of our Front End Consultants developed a separate Slackbot that would enable us to emulate the functionality of the HiBob bot for testing purposes without inundating everybody.
Finding a suitable place to host the app for free or at a minimal cost was challenging. Most NodeJS hosting services include free options; however, on these packages, the server shuts down after a certain period of inactivity, requiring a 'cold start' to spin it back up, leading to a delay. This is problematic for Slackbots, as users expect an instantaneous reaction, so we needed to look at alternative options.
We opted to host the Slackbot as a Lambda function on Amazon Web Services (AWS). This allowed us to host the bot on a service with a generous free tier and would avoid the lengthy cold starts that a NodeJS host would have. I was responsible for choosing the most suitable hosting platform and setting up the AWS account with the necessary permissions for the app to function correctly. Hosting with AWS also allowed us to lean on our expertise as a cloud consultancy.
Three months after the idea was initially presented at the Hackathon, Treeumph has bloomed into a fully-fledged app incorporated into our HiBob platform. It has been a gratifying and fulfilling experience seeing our efforts bear fruit with the launch of this project.
Treeumph is now being used daily to recognise employees' good work while doing good for the planet. Our small but meaningful efforts to plant a tree with each Kudos or Shoutout via HiBob result in 0.3 tonnes of cO2 offset for every tree.
We're excited to do our part in making the world greener, one tree at a time!