Heroku’s Scalability Enables Singapore to Leapfrog the Competition

Online retailer quickly ramps up to meet heavy demand, gains massive performance improvements.

At the core of every market leader is a strategy for scale. Paneco’s founders set out to not only build a world-class e-commerce site, but to dominate the online alcohol sales market in Singapore and beyond. Despite a preference for on-premises systems, they found Heroku to be a more pragmatic approach to building and scaling a leading online business across global markets. Singapore was founded in 2015 and is part of the worldwide Paneco brand, one of the fastest growing online alcohol retailers in the world. Paneco has a presence on four continents and is continually looking to expand the business into new markets. Paneco is focused on offering the widest variety of alcohol brands at the best prices, delivered conveniently to the customer. In Singapore, the company needed to deliver a superior shopping experience to the market quickly, so they opted to run on Heroku.

The homepage

Cloud PaaS vs. on-premises

Paneco started out with a small team of developers and had no dedicated DevOps engineers or IT support. Some team members had previous experience with Heroku, and the platform was a natural choice from the developer perspective. Heroku was easy to use and would allow them to deploy to production quickly multiple times per day. More importantly, building and running their app on Heroku would allow the team to focus squarely on development, without the time-consuming distraction of managing servers and infrastructure.

Paneco’s founders had a background in e-commerce and prior experience running their own servers and data centers. It was their preferred approach, however for Paneco they felt that the platform-as-a-service approach was more pragmatic, enabling them to better control costs and deliver their app to market faster. While they were not a startup, the team really needed to function with the same speed and agility. With a PaaS like Heroku, the business could scale seamlessly to handle both long-term growth and seasonal spikes in usage, such as during the Christmas and New Year period when the volume of Champagne orders dramatically increases. Although their preference was to manage their own infrastructure, the leaders decided to launch and grow on Heroku.

Building a market-leading store on Heroku

Paneco’s goal was to build a world-class e-commerce platform that offered customers a differentiated experience. The company’s competitors in the region were using off-the-shelf solutions, such as Wordpress with a WooCommerce plugin. In order to gain traction in the market and rise to the top quickly, Paneco needed the flexibility to build out their own product vision from the ground up. Putting Heroku at the foundation of their tech stack allowed the team to choose the technologies that worked best for their business.

The engineers built the app’s front-end using the Spree Commerce framework and built their own inventory management system from scratch in Ruby and Active Admin—all running on Heroku. The application stores customer and product data in Heroku Postgres, and uses Heroku Data for Redis for caching and to offset the load on Postgres, keeping costs down and providing a faster experience for end users.

Heroku Add-ons have been a boon to the Paneco team. The platform allows developers to instantly add a fully-managed cloud service, such as SendGrid or Papertrail, with just a couple of clicks. The team can then move faster and focus on developing core functionality while taking advantage of best-in-class services. In particular, Sentry’s error tracking service helps the team monitor and fix issues in real time.New Relic APM, along with the Heroku Dashboard, enable the team to easily keep tabs on their app’s performance and dive into troubleshooting issues within minutes. SearchBox Elasticsearch further enhances the user experience with fuzzy search options, so that if customers type “Whiskey,” they will get the search results for “Whisky.”

An example of a search for Whiskey

The Heroku Dashboard gives us great visibility into the health of our app. We can easily track metrics, diagnose issues, and fine-tune performance within our regular workflow. Benjamin Sion, CTO, Paneco

Scalability leads to success

To become a market leading business, seamless scalability is essential. As business grows, the app must handle an increasing load from more customers and more demanding traffic patterns. Heroku enables the engineering team to easily provision and scale app resources from the Heroku Dashboard or CLI. Looking at their setup, the team found that if they scaled up versus adding more nodes, the performance improvements went up 400%.

A graph showing the decreasing load time for pages and a view of the web transactions time graph on Paneco

Scaling up our app on Heroku was simple. The whole process involved a few clicks and we immediately saw phenomenal performance improvements—our average response times went from over four seconds to 700 milliseconds. Benjamin Sion, CTO, Paneco

Heroku also enables Paneco to scale their deployment capacity. The team makes use of Heroku’s CI/CD workflow, integrating CircleCI with Heroku Pipelines for a fluid push from initial commit to production. Review apps allow them to spin up a temporary test app for discussion, so the team can experiment and prototype quickly before moving forward with new ideas. Heroku enables Paneco to deploy as often as the team can release code, whether it be five or twenty times a day.

Deploying to Heroku is so easy. It takes only a few hours to get an idea to production, including testing. For instance, our marketing team wanted a new feature to include tasting notes for wine and other fine liquor like premium whisky and gin. Once the design ideation was complete, the feature was in production three hours later. Benjamin Sion, CTO, Paneco

Looking beyond Singapore

Since launching on Heroku, the Singapore team has delivered a flexible, scalable e-commerce platform for the global company that has leapfrogged the competition in the region. The site’s tech stack and deployment processes serve as a model that other Paneco sites around the world can leverage for their own business.

Inside Paneco on Heroku

The Paneco app's front-end is built in Spree Commerce, and their inventory management system is built in Ruby and Active Admin. They use numerous Heroku Add-ons, including SearchBox Elasticsearch for search, Sentry and New Relic for monitoring, Papertrail for logging, and SendGrid for transactional email delivery. The app stores customer and product data in Heroku Postgres and uses Heroku Data for Redis for caching.