Jordan Husney, Cofounder & CEO of Parabol
Parabol is a remote meeting platform for Agile teams. They make it very easy for Agile product development teams and business agility teams to routinely hold plannings, scrum, and retrospective meetings online – remotely – without the need for a conference room or Post-it® Notes.
Parabol estimates that there are approximately 20 million developers who use some flavor of the Agile product development methodology on their teams. The easiest proxy for their market is the folks who supply tools for backlog management or development team knowledge management like Atlassian, Microsoft DevOps, GitLab (to some extent), ZenHub, Clubhouse, and more.
One of their company values is transparency. With publicly available metrics, they believe they can "[be] an open book." They have experienced a dramatic increase in usage since the healthcare crisis began. In February 2019, Parabol were seeing a rolling four-week average of 500 signups a week. Once the pandemic hit in full force, they saw a steady increase in signups, increasing to 750 signups a week, followed by 1,250 in another week, and peaking at close to 5,000 in a single week. At that point Jordan realized the growth was “out of control.”. “Specifically in relation to DigitalOcean, we had to scramble to bring up a whole bunch of additional infrastructure,” he recalled.
When Parabol got started, they were familiar with AWS because they’d used it before. But they wanted to try something else. Jordan was initially drawn to DigitalOcean because of a superior product offering – including the first blades with SSD hard drives at just $5 a month for a Droplet. But they also understood that the emotional side of the experience was critical. The cloud needed to offer a simple user experience, but it also had to look great. Jordan recalled previous experiences conducting software experiments, in which he’d create tools for teams to use where the hosting option became DigitalOcean simply because the product was so easy and friendly to manage – all at the right price.
“As a founder and somebody that doesn't have a DevOps background, I didn't want to spend every morning of my life wearing a pager and doing XML sit-ups. I did not want to wrestle with the dumpster fire. What I wanted to do was ship an application to users so that we could begin iterating it.” – Jordan Husney, Cofounder & CEO
DO made things as easy as it possibly could for him. At that time, alongside his two technical founding team members, they did the absolute simplest thing first. Parabol got a $5/month Droplet because they were bootstrapping the company from their own pockets. Instead of using Heroku, because Parabol wanted to be able to have access to the iron itself, to be able to have insight into their application performance. Parabol preferred IaaS to PaaS for better control of underlying infrastructure. Jordan installed an open source package their Droplet called docu, which is a basic open source PaaS that emulates the Heroku surface offering and an open source wave. From the very first week, docu helped continuously integrate and deploy (CI/CD) the Parabol development stack. Because DO is easy to maintain, Jordan could clone code to new Droplets, check the code in staging, and then move to a development environment. Once he created his staging environment, Jordan cloned it to make their development environment. Parabol used this framework for their infrastructure on DigitalOcean for three and a half years.
But then came the COVID-19 in 2020, which caused the majority of workforces to become remote. As a result, Parabol had unprecedented activity. They saw 700 people from a really large telecom company sign in. Then they started running one- and 200-person retrospective meetings. At that time, they were still a monolithic containerized application. And everything was running on one large piece of iron because, as a three-person team, they needed an infrastructure solution that a small team could not only wrap their heads around, but also manage. Due to this spike caused by COVID-19, they started seeing performance bottlenecks, one of which was increased latency. To remain competitive, they had to quickly reconsider their existing infrastructure and find a way to acclimate to the growing demand for their product offering.
“When the heath-crisis demand overloaded our infrastructure, we worked around the clock over the weekend—when usage is lowest—to get new infrastructure in place.” Jordan recalls. “We prioritized speed of implementation over long-term scalability to meet our instantaneous demand by making the quickest improvements we could. We took one host that hosted three services into three hosts that hosted one service, including moving from our own Redis service to DigitalOcean's Managed Redis™.Our testing predicted these weekend changes would allow us to move from hosting 10,000 or so simultaneous sessions to several hundred thousand.”
Parabol also reconfigured their primary API service from running single threaded to multithreaded, which allowed their application to vertically scale across all the cores of the iron it was hosted on.
Looking ahead, there are a few offerings from DigitalOcean that Jordan and his team hope to use in the near future. They have a test cluster on the managed Kubernetes service that they are using in development. And they’re planning to move their block storage from Amazon S3 to DigitalOcean, as block storage was not offered by DigitalOcean when Parabol was started.
“While we were pleased we could easily refactor our application and infrastructure in a weekend to match the unprecedented increase in demand, we're still not finished,” Jordan says.
“We're projecting needing to handle millions of simultaneous connections on Parabol, with many more services: integrations, streaming video and audio, and services for features we can't anticipate from here. Remote work only looks like it's poised to grow. We're moving to Kubernetes soon, starting with doing the work we need to enhance our existing services to easily horizontally scale. We've begun to grow our DevOps team to help support us in this transition.”
Talk to an expert for assistance with large deployments, migration planning or questions regarding a proof of concept.