Talks

In today's fast-paced tech world, backend systems need to be flexible and self-service to support evolving business needs. For Picnic, this means building a backend that lets operators and analysts directly define and manage the logic driving customer interactions, product personalization and internal workflows. 

Our solution is a Rule Engine platform where operators can easily attach logic and effects to events by creating, testing and managing their own rules. Powered by GraalVM's polyglot capabilities, it allows analysts and other stakeholders to write rules in JavaScript or Python. This event-driven system enables self-service without developer involvement. It handles actions across the Picnic system landscape, from updating customer data to triggering communications.

In this talk, we will discuss the architecture behind our Rule Engine and share some of the challenges we faced with GraalVM’s polyglot capabilities. We will explain how we made Java-based event data accessible in guest languages. In addition, we will show how we provided extra context from our systems to the rules, and designed a simple DSL for data retrieval and action triggering. Finally, we’ll cover how we ensure fairness and maintain performance. 

Come and learn how you can leverage the potential of GraalVM!
Rick Ossendrijver
Picnic Technologies
Rick Ossendrijver is a Software Engineer at Picnic, a fast-growing online supermarket. Rick is a committer and enthusiast of the Error Prone project. Moreover, he is passionate about improving software quality through static analysis and automation, and works on Picnic's open-source Error Prone Support project.
Enric Sala
Picnic Technologies
Enric Sala is the Tech Lead of the Targeting team at Picnic, an online supermarket.

In his role, he support the team in building backend systems to personalize the customer's shopping experience.