Prototype to World-Class Software in 1 Month
At Bolste we are building a next-generation business software that transforms how employees gain productivity through orchestrating successful outcomes from daily interactions. Rather than silo information in disparate apps like Skype, Sharepoint, Slack, etc. Bolste cuts through the noise with a unified platform for collaboration and all the essential tools in one place. In August of 2016, after months of validating our platform with early customers, Bolste was ready for release to the public. Market validation of Bolste was instantaneous. In early August Bolste was awarded the coveted “2016 Hot Vendor Award” by Aragon Research, a world renowned collaboration research firm.
Prototyping Bolste Platform
However, like many other startups, we hit a problem: the infrastructure that worked well for prototyping and early development was not a good fit for running a scalable and reliable product.
At this stage, most companies pick from one of two extremes: Platform-as-a-Service (PaaS) or Infrastructure-as-a-Service (IaaS).
With a PaaS vendor like Heroku or Docker Cloud, infrastructure is built according to vendor high-level specifications, the details are taken care of under the hood. Because all those details are hidden, it’s easy to launch something quickly. But for that very same reason, it’s also much harder to debug, scale, keep costs under control, and customize infrastructure.
As a result, many companies eventually go through a painful migration process away from PaaS and switch to an IaaS vendor such as Amazon Web Services (AWS) or Google Cloud. IaaS gives a deeper and lower level of control over infrastructure, which makes it easier to scale and customize. But this all comes at a great cost: learning and managing all of these pieces is time consuming and expensive.
Bolste Implementation & Infrastructure
At Bolste, we decided to avoid both of these extremes and instead go with a new emerging option: Infrastructure Packages developed by Gruntwork (http://gruntwork.io). Each Infrastructure Package implements a common piece of infrastructure used by all startups (e.g. network security configuration, automated deployment scripts, cluster management), enabling the build almost as easily as with a PaaS. But unlike a PaaS, Infrastructure Packages gives full control, so debug and customization is readily available.
“Our work with Bolste meant they could focus most of their energies on new app features while we took the lead on their DevOps and infrastructure automation. But Bolste controls 100% of the source code and their team still runs the infrastructure. In the end, our goal wasn’t to take over their infrastructure; it was to make it an order of magnitude easier for them to run themselves.”
Josh Padnik, Co-founder Gruntwork
Our mission at Bolste is to build the best software for business users–not to design the best infrastructure. By using the Gruntwork Infrastructure Packages, we got access to DevOps best practices and world-class infrastructure without having to build it all from scratch. This allowed us to focus on building the Bolste product and for someone else to take care of the grunt work.
Part II will provide detail on how we made the decisions we made, and why deploying infrastructure-as-code is a competitive advantage…