Ulta Beauty took a domain-driven design approach to identify operations that could be grouped together to reduce complexity and improve scalability. Now, the applications are based on multiple domains, such as Commerce, Promotions, Catalog, Order, Customer, and Inventory. The new architecture prompted a fresh look at storage requirements to scale dynamically alongside its modernized applications.
For Ulta Beauty, MongoDB Atlas proved to be the best database solution for dynamic scaling, ease-of-use, and integrations with Google Cloud. The company also leveraged an entry-level plan to prove the value of MongoDB Atlas before investing in the technology.
“MongoDB Atlas offers a free tier that gave us an opportunity to quickly demonstrate tangible benefits of a proof of concept,” says Vure. “Once we proved the value of MongoDB Atlas, we benefited from the straightforward resource allocation supported by Google Cloud and MongoDB.”
Integrations between MongoDB Atlas and Google Cloud allow Ulta Beauty to take an iterative approach to new projects. The company creates new clusters in an existing project, then piggybacks them onto an existing Private Service Connect setup between a MongoDB project and Google Cloud project.
By removing complexities within infrastructure management, Ulta Beauty can manage its incredible amount of data, such as member preferences and purchases, that fuels its event-driven architecture. The much more agile infrastructure enables Ulta Beauty to deploy and scale offerings faster than ever.
“We recently had an unplanned traffic surge that impacted our domain services. It took less than an hour for MongoDB Atlas to scale up to the next level of the cluster and manage that traffic,” says Vure. “The on-demand, dynamic scaling, plus GKE, has saved the day more than once.”
Preparing for a happy holiday season
This holiday season, Ulta Beauty has a stronger technical foundation to manage demand surges and provide customers seamless shopping experiences. Previously, the company used 50 pods in a cluster, each with 6 GB of RAM without domain stores, to handle about 100 transactions each second. With domain stores, the same 6 GB of RAM with just 20 GKE pods was able to scale up to 2,400 transactions per second.
With Google Cloud as its technology foundation, Ulta Beauty partnered with Google Cloud partner commercetools to evolve its application APIs as products and properly separate interfaces and capabilities.
Ulta Beauty uses event-based integrations within commercetools to identify how best to leverage Cloud Pub/Sub middleware on top of MongoDB Atlas integrations. Patterns established here were extended into MongoDB change streams and in turn improved business processes.
“Working with the right technology partners has helped us to avoid analysis paralysis that can happen when developer teams spend a lot of time trying to understand and manage every detail,” says Vure. “Instead, we convert a proof of concept into a working solution, and quickly bring it to market. It’s been a major shift in our IT culture as we try out new things weekly and see incredible support from leadership.”
The improvements enable Ulta Beauty to maintain a high level of innovation, performance, and customer service year-round. Now, when the holiday shopping season begins, Ulta Beauty is prepared to handle surges in traffic through auto-scaling with Google Cloud and MongoDB Atlas. Customers get what they want, when they want, free from the frustrations of outages.
“With these changes, we are ready for a holiday season that everyone–even those of us in IT—gets to enjoy. We’re positioned to continuously focus on new, better ways to serve our guests,” says Vure.
Check out MongoDB and commercetools on Google Cloud Marketplace to learn more about what these partners can do for your business.
The content of this blog was taken from a Google Cloud interview with Ulta Beauty.