How microservices and cloud IT helped a popular appointment booking service scale 200 percent
Google Cloud Partner Team
Try Google Cloud
Start building on Google Cloud with $300 in free credits and 20+ always free products.Free trial
It’s a Friday afternoon and you’re heading home to New York after a two week vacation from somewhere that’s been on your bucket list since you were 12. You find out that you have a big meeting with your entire C-Suite on Monday morning. You look in the mirror, and immediately recognize the need for a haircut that weekend. You try to call your hairdresser, but no one picks up.
Now what? Enter Booksy.
Booksy, a digital appointment booking service, takes the complexity out of appointment scheduling and other everyday business activities. With the help of the company’s services, people can easily book appointments with their favorite beauty, wellness, and health professionals — even if no one picks up the phone.
“Our solution connects people and businesses in the most efficient ways possible,” says Pawel Sobkowiak, Chief Technology Officer of Booksy. “Our name highlights booking services, but our customers also come to us to improve many aspects of running their business, from marketing to sales. We enable them to focus on their craft.”
Booksy started out running on-premises IT and a monolithic application architecture. This setup worked for years — until it just didn’t any more. Continued growth, fueled by demand for not just appointment scheduling but other business services like marketing, sales, and point-of-sale as well, meant Booksy needed a cloud-first approach in order to keep scaling along with demand. The company chose to work with Google Cloud and partner Cockroach Labs, the company behind the cloud-native distributed SQL database CockroachDB, to migrate its IT infrastructure and shift toward a microservices architecture.
1. Increasing flexibility to handle unpredictable activity
Booksy migrated to Google Cloud and CockroachDB at the outset of the COVID-19 pandemic, just as it suddenly faced dramatic shifts in traffic and demand.
“We already had a global presence in multiple markets worldwide,” says Pawel. “Everything became unpredictable, with lockdown announcements resulting in traffic spikes as our customers all tried to update their calendars. With our legacy IT, we weren’t agile enough to handle all the changes and challenges.”
Booksy used its new, cloud-based microservices architecture to adapt to the new normal. In addition to offering greater flexibility to better manage changes in demand after lifting covid-19 related restrictions and re-opening the beauty industry, the company was able to introduce additional valuable services. It developed tools businesses could use to book remote appointments. Additionally, during lockdowns, Booksy gave its customers the option of making an online donation to their favorite beauty salons to help them operate during that difficult time.
“Our legacy IT simply could not handle the extreme changes in traffic. When we saw lulls because of the lockdowns, we were still paying to run machines that were not necessary,” says Pawel. “Google Cloud gave us the auto-scaling we needed to operate efficiently, no matter the service demands.”
Now, 99 percent of Booksy workloads run on Google Kubernetes Engine and Compute Engine, while load balancers help maximize efficiency and stability within the Booksy platform.
CockroachDB helped optimize data management in the new microservices environment. Previously, Booksy had maintained different on-prem PostgreSQL instances in each country it operated, which required their developers to manually shard the database. Besides introducing complexity and fragility into their platform, sharding also introduced complications when customers traveled internationally. With CockroachDB, the company has a highly available database that distributes their data across geographies to efficiently support its new microservices architecture and the VMs they run on.
2. Freeing up DevOps to enhance customer experiences
Booksy is hyper-focused on continuous improvement to the services within its platform. Its legacy IT environment was not conducive to quick, creative DevOps work, as on-premises IT infrastructure struggled to scale and demanded a significant amount of backend management. This also impeded use of a fully managed solution and additions of new technologies as needed due to prohibitively high costs.
Fortunately, Google Cloud and CockroachDB allowed the team to change that.
“Suddenly, we could use a range of cloud-native solutions to support DevOps. We were no longer limited to our monolithic environment,” explains Pawel. “This frees our teams from the complexities of traditional IT management and allows them to create new features to constantly evolve our services. With Google Cloud, we can try new things more efficiently and with greater precision. ”
CockroachDB proved to be a perfect fit as it supports the Postgres interface already familiar to Booksy developers and comes with both SQL and client libraries compatibility with Postgres. It also allowed the company to reuse code in a more modern database. The team only took a couple of hours to get up and running on CockroachDB and connect it to the backend Google Cloud infrastructure.
From an IT management perspective, purchasing CockroachDB through Google Cloud Marketplace gives Booksy unified billing for all its IT costs.
“From a DevOps perspective, CockroachDB is extremely easy to use,” says Adrian Jarczynski, DevOps Lead at Booksy. “Cockroach Labs also provided training and support that helps us take full advantage of its capabilities. They have been a great partner.”
Today, DevOps professionals at Booksy can deploy new services to production in just 15 minutes, then develop relevant business logic and connect new and existing services with ease.
“Most importantly, we can get new features and services out a lot faster,” says Pawel. “We can continually iterate services to offer the experiences our customers want. And we can do all of this without needing our developers to be cloud experts.”
3. Scaling out with enhanced security, compliance, and reliability
Booksy has leveraged Google Cloud geo-tagging tools and CockroachDB’s built-in data homing capabilities to meet regional data residency compliance requirements and optimize performance by putting data close to the customer. It also centralized its global security management thanks to the unified, cloud-based infrastructure gained through solutions including GKE, Compute Engine, Virtual Private Cloud, and Firebase.
Booksy’s ability to scale with ease has likewise improved significantly, as it is no longer encumbered by its original monolithic architecture that made it too expensive to scale as its platform’s global coverage grew. The new fully cloud-native distributed architecture enables simple and flexible horizontal scaling whenever necessary.
Overall, this transformation has enabled Booksy to quickly create and introduce new services to more customers in more regions. Thanks to an efficient infrastructure, agile microservices architecture, and easy access to powerful digital tools, Booksy keeps making it easier for local businesses to serve their customers.
See what CockroachDB can do for your business and learn how Google Cloud can drive meaningful transformation among your DevOps teams.