Bunchball, a company that offers gamification as a service to help drive engagement, customer loyalty and more for organizations like Applebee’s, Salesforce and Ford Canada, recently decided to transform its infrastructure from a manually configured platform to an auto-scaling, all-container solution.
The company had relied on virtual machines in the past, but faced some obstacles due to VMs’ relatively static nature. The company wanted to make production changes in a more timely manner, explains Joe Schneider, DevOps engineer for Bunchball. “It used to take up to two months, but now we can make these changes in a week,” he says.
Containers, which include application files and its dependencies, are a more portable option than a VM that includes all operating system files. The challenge to find a more flexible and portable solution prompted the Bunchball team to reconfigure its infrastructure. The team started off by focusing on its’ main app and then slowly transitioning new features piece by piece. “We realized we couldn’t run our app the way we’re running it forever,” Schneider says. “The plumbing became a lot more dynamic, and we had to rethink how to have the computer layer talk to the data layer.” Schneider adds. “With a container app, we could have things up and running in minutes.”
The best approach for Bunchball’s needs, according to Schneider, involved a slow transition to containers. “We had to keep the old stuff running while we were building a new airplane right next to the one already in flight,” Schneider says, explaining that he and his team would make a new piece of infrastructure and make changes one piece at a time. “There were really no drastic changes all at once,” he says.
Schneider says that getting the easiest parts done first was instrumental to the team’s success. This approach gave the team extra time to build the experience needed to tackle the more difficult challenges more efficiently. He warns, if you recreate your applications all at once with containers, you’ll have to recreate all the plumbing on the spot and automate it, which could turn out to be much more work than anticipated.
The move also required some careful and strategic planning when it came to internal talent. Assigning certain individuals to become the dedicated experts was helpful when it came to building leadership and training other employees as needed. “We really adopted a mentor approach, coupled with ongoing training and online documentations that were always available to reference, which worked fairly well,” Schneider says.
Another important lesson learned, according to Schneider, was to keep expectations in line. “A lot of the hype around doing orchestration with containers is that you get higher resource utilization,” he says. “Well, that won’t happen for a long time; it’ll probably be at least a year before you see savings,” he says. He emphasizes that improvements will come with time and reminds individuals interested in a similar mission to keep the bigger picture in mind. “In the end, it’ll most certainly be worth it,” Schneider says.
Renee Morad is a freelance writer and editor based in New Jersey. Her work has appeared in The New York Times, Discovery News, Business Insider, Ozy.com, NPR, MainStreet.com, and other outlets. If you have a story you would like profiled, contact her at [email protected]
The IT Innovators series of articles is underwritten by Microsoft, and is editorially independent.