In this article, we take a look at long-time Compose customer, Emarsys, who runs Compose-hosted MongoDB, PostgreSQL and Redis for their micro-services architected marketing automation platform.
Emarsys has been delivering email campaigns for customers since 2000, but it was in 2010 that the company made a critical pivot from offering CRM and email services to a full-serviced marketing automation solution. That included moving to a microservices architecture.
The microservices architecture is key for Emarsys for delivering value to their clients faster. They have accelerated development of entirely new modules by supporting greater autonomy for their engineers. Developers are encouraged to code in their favorite languages with their choice of tools in their preferred cloud. The majority of development happens in their Budapest office. We spoke with Andras Fincza, Head of Engineering and László Merklik, Senior Vice President of Core Products, about their application and use of Compose-hosted services.
Unlike marketing automation vendors who are focused on the B2B space, Emarsys works with B2C customers. While B2B marketing automation solutions are tailored for smaller data sets, Emarsys is built for scale. "If you have 2 million or 60 million contacts, there's an explosion of data and simple metrics solutions won't suffice," said Merklik.
Merklik added: "So the problem for a marketer is that it became the age of point solutions – you have a solution for personalization, you have a solution for push, you have a solution for automation, and so forth. But in the end it's impossible to get that information in one place, make sense of it, build your marketing strategy, and execute it with all these point solutions. So what we're trying to solve is this gap – this huge gap in the information and the execution of the strategy. We want to let our customers define their strategy but not have to worry about how to get and use data."
The Emarsys application is split into two different infrastructures, a legacy infrastructure (built in PHP) and a new cloud-based infrastructure on Compose, Heroku and other as-a-Service platforms. Everything works together seamlessly using REST APIs to communicate across the entire stack. The huge data sets they work with are analyzed through an AI module for example. To some degree, Compose epitomizes why they have moved to a microservices architecture. It's simply much easier for developers to focus on writing great code instead of managing infrastructure.
"Our developers need to write maintainable code and be on-call if something breaks or it needs work," said Fincza, "So it really motivates them to write resilient code. On the other side, we want to provide them with state-of-the-art solutions to manage the services they write, so this is why we use Compose, for example, because it frees up our operations time and helps the team focus on the code quality and the product itself."
So how does their team of 70+ developers and data scientists work in unison to build a microservices platform? As Fincza describes it, they have followed the same type of system that Spotify's engineering team has championed in which they've split their teams into "clans" to focus on different themes, such as content or reporting. The company embraces OKRs for setting goals; they have a 12-18 month high-level product roadmap that is broken into 4 month release. Each team derives their own objectives in support of the high-level roadmap.
Compose-hosted MongoDB, PostgreSQL and Redis are used by various engineering clans for different parts of the application. In addition to Compose freeing up time for their team to focus on app development, Fincza added, "One of the best things we have from Compose is the reliability. We've had no critical incidents or anything that I can recall."
Every day, and often several times per day, they release code into production which has helped them capitalize on the great output from their team. The thoughtful combination of top-down OKRs with small teams broken into themes helps their teams be more agile and release code into production daily. All that work has paid off: Emarsys has grown into a market leader in marketing automation with 15 offices worldwide and more than 1,500 clients running 250,000+ personalized campaigns each month.
If you'd like to read more about Emarsys' development and technology, you can find them blogging on Medium on the Emarsys Craftlab.