Jeremy Wdowik

Software Engineer Team Lead

Published on November 20, 2018

An Infrastructure Journey

At Connect Space we build technology that helps organizations run and scale their events. Our customers run events from small workshops to large conferences with thousands of attendees. We required a toolset that would help us quickly scale our engineering to match our customer’s needs.

The Initial Infrastructure

In 2013, we deployed our Ruby on Rails application on Heroku using third party support for MySQL. It expanded to include Redis for background job queuing and MongoDB, used for our reporting engine. Heroku was an easy to use platform for the application stack we utilized to build our product. As the years went on, we decided we wanted to take a more hands-on approach for our application and MySQL server configuration and management.

We transitioned the application servers to a new provider and our database to AWS in 2015. In 2017, we expanded our commitment to our new provider, moving our database under their control and adding additional deployments for our demo and staging environments.

The Challenge

As a small company, we must be able to move quickly as we scale. Multiple issues with server migrations, unexpected downtime, and a long support request process slowed us down and made scaling our servers difficult. To create tools that help our customers scale their event management efforts we needed technology that would help us build, deploy, and scale our own development efforts.

Enter Heroku

In 2018, we made our decision to migrate back to Heroku. Initially, we thought we did not have the control we needed on Heroku. When evaluating the platform in 2018, we discovered that Heroku provided everything we needed for a hands on approach and provided the flexibility of scaling at ease. By transitioning from our previous provider, we have been able to remove expensive support contracts on our server environments and substantially reduce our application related expenses. We love the available add-ons that Heroku supports out of the box, some of which have helped us resolve performance bottlenecks and scalability issues. For instance, Scout is a free add-on we installed when we first created our production environment. Once our production environment went live, we starting seeing powerful reports that narrowed down some of the bottlenecks in our application. On one of our pages, we have improved our response time by over 500 percent.

Utilizing add-ons such as Scout provides tremendous time savings without requiring additional DevOps staffing, and has allowed us to continue to focus on building our product and supporting our customers.

Our decision to move our application back to Heroku saves our engineers time and effort. Heroku’s focus on the developer experience and supporting application development made them a top candidate. Heroku’s clean, automated workflow has allowed us to quickly build new ideas for our product (like Conditional Questions), saves our engineers time, and provides an easily scalable environment.  

Shoutout to Kurt Kowitz for his help on the post!