We worked with a cloud-based Platform as a Service (PaaS) solution that manages data for learning institutions and visualizes that data for educators. The development team consisted of just under ten people.

Initial Situation:

  • The technical co-founder was manually bootstrapping all infrastructure. They needed to improve their orchestration and configuration management tooling and processes to reduce the pain experienced provisioning new customers. At the beginning of the engagement, there was no orchestration tooling in place, but Ansible was partially in use for configuration management.

How Bitlancer addressed the problems:

  • Helped to determine sane automation solutions for technologies such as CQRS, Kafka, Zookeeper, MongoDB, and MySQL on RDS.
  • After weighing Cloudformation vs. Terraform for this specific use case, implemented Cloudformation for the single-provider benefits that allowed us to leverage AWS tools directly.
  • Switched configuration management from Ansible to Chef to allow for more flexible provisioning logic and centralization via Chef Server.
  • Explored and rejected Consul because of delivery time pressures and our interest in avoiding over-complication of infrastructure.
  • Implemented Mesos and Singularity for application deployment. Fortunately, multiple developers had prior experience with these platforms, which we took into consideration when suggesting options.

Results:

  • Bitlancer built out a fully bootstrapping, multi-region-compatible stack for their application that requires minimal human intervention to instantiate a new instance.
  • Automation enables the team to deploy application and related infrastructure in minutes, instead of hours.
  • Onboarding new developers is now easier with a simplified and more automated technology stack that existing developers are excited about and treat as their own.