Leanplum is a leading multi-channel customer engagement platform that helps forward-looking brands and marketing teams meet their customers' real-time needs.
Data Management in Leanplum is the process of sourcing, analyzing, and managing the available data to leverage it in marketing activities.
There are mainly two types of data coming to Leanplum:
Events and User Attributes can be used in various use cases in the product, mainly:
Data in Leanplum can be imported and exported from and to various sources, mainly SDK, API, CSV, and technical partners.
Our main objective was to build an industry-leading Data Management to help our customers manage and turn their data into actionable business intelligence for their business and marketing strategy.
I led the Data Management product design, working alongside a cross-functional team of backend engineers, frontend engineers, and a product manager. In addition, I participated in shaping the product strategy and vision.
The product only offered an Events page that listed all the events available with no metadata or controls whatsoever, making it hard for our users to understand or manage the data available.
In addition, most of the processes to get data in or out of Leanplum needed a developer's assistance, making this time-draining and more expensive for our customers. An example would be importing data via CSV (comma-separated values) files—this was only possible through the API (application programming interface), and non-technical users had to rely on developers, which made this process cumbersome.
There was no suitable space to import or export data to or from our technical partners. The information was only available in the documentation, and most of the process was done only through the API, which replicates the same problem mentioned for data through the CSV.
Our support team received tons of tickets from our customers asking how to accomplish some uses cases since it wasn't straightforward in the interface.
We had to introduce a new space in the product that is the heart of data coming in and out of Leanplum and make sure it will be the one source of truth that our users trust to discover and manage their data.
We needed to eliminate technical assistance and empower users to integrate and control data directly from the product without reading the documentation or seeking technical resources.
One source of truth to discover and manage all data integrated in and out of Leanplum.
Empower our users to take action on their data directly from the product without the need for technical resource.
Give meaningful insights about this data leveraged in Leanplum, so we help make informative decisions when managing it.
Before writing a line of code, we went back to our users. We started validating the solutions we created with them to understand how to improve their workflow and experience.
We had regular cadence check-ins with the team and shared what we had as ideas and prototypes, and made sure we were all on the same page. We aligned on whether what we have is feasible and can be implemented with expected time manners.
This was the only page that already existed in the product, yet we only showed a list of all the events available in Leanplum, which didn’t help our customers. We wanted to show more metadata for the events available in Leanplum and add more control on top of them.
Approach 01 (Consistent Pattern)—We started with a widely used pattern in the product, such as in Audiences. For instance, we have a dashboard that shows all audiences available, and in one-level deeper, we have the audience details, which offer more information for a specific audience selected. Adapting this pattern for events meant having a dashboard that shows all the events and then one-level deeper to view and edit a specific selected event. This pattern will encourage users to save changes per event. However, technical constraints and having the save job needing more time to execute, which will block the events page, made this pattern unusable. We had to take a different approach that encourages our users to make batch changes and keep in mind that the save will block the page and take some time to execute.
Approach 02 (Single-page solution)—We created a single-page solution that makes switching between events much faster and encourages users to make multiple changes before saving.
The main product component is a table that shows all the events with their information. A resizable sidebar is expanded on select that shows all the controls and metadata available for an event. Also, we guided our users explicitly to edit multiple events if needed before saving the page.
Considering that we had the same use case as in Events and considering we viewed our users using it and leveraging from it, it was straightforward to apply this pattern on the Attributes page.
Technical partners offer our customers to import or export data in and from Leanplum to or from other vendors. Many of these partners were already available, yet setting these integrations directly from the dashboard wasn't available.
We introduced a new Partners page showing all the available partners, improving these integrations' discoverability. In addition, we added a details page for each partner where our users can set up specific partners directly from the product.
We added an easy-to-use drag and drop experience to upload user data via a CSV file. Also, we integrated validations to indicate any problems in the file or its format before uploading. In addition, we added a section to show uploaded files with their suitable metadata to improve visibility between team members.
These functionalities allowed our users to perform tasks and access the necessary information without dependency on the support team, which increased their productivity and satisfaction.
A remarkable decrease in support tickets was observed, relieving the support team of repetitive requests and enabling them to focus on more critical issues.
By integrating with external vendors and platforms, we expanded our product offerings and provided more comprehensive solutions to customers. The ability to seamlessly integrate with external vendors provided a competitive advantage in the market.
We initiated the foundation in most of these products. Yet, we are continuously learning from our customers on their need for more controls and metadata that improve their experience and help leverage more from their data.
Looking in retrospect, all these functionalities mentioned above seem obvious and natural, yet we didn't get it right right away. This is the fruit of endless iterations, feedback loops, and above all, a tight collaboration of a product team (PD,PM,FE,BE,QA) whose main goal was to achieve an excellent user experience.