Full-featured SaaS Data Management Platform for Adtech Company

The client's product is a comprehensive adtech platform designed for advanced digital advertisers in the significant enterprise segment — whether within a media agency or an in-house team. It can oversee the entire advertising process through a single software. Several of our engineering teams were engaged in various facets of SaaS platform development, emphasizing optimization, insights, and monitoring.

Project background

One of our clients, an Italian advertising technology company, sought a comprehensive solution to streamline and manage its advertising activities, ensure effective communication with its target audience, and influence consumer purchase decisions. 

Our client’s primary technical challenge involved the integration of numerous third-party APIs, which frequently malfunctioned, disrupting the synchronization of advertising campaigns. Issues with third-party API integrations required customers to regularly renew their credentials, leading to incomplete data and impaired platform functionality.

To address these challenges, our development team implemented several measures, including automated scripts designed to rectify data discrepancies and enhance platform reliability. The goal was to develop a full-featured SaaS data management platform that provided robust, seamless management of advertising campaigns, minimizing technical disruptions and improving overall user experience.

  • Duration: 2+ years - Ongoing
  • Location: Italy
  • Industry: Advertising

Business needs

Managing advertising necessitates a meticulously planned managerial approach that supervises and regulates various advertising activities tied to a program for communicating with a company’s target audience.

1. The client’s challenges were purely technical. They stemmed from using numerous third-party APIs to synchronize advertising campaigns, which frequently malfunctioned.

2. Additionally, integration with third-party APIs required platform customers to renew their credentials regularly; failure resulted in incomplete data and SaaS management platform malfunctions.

3. In order to address the issue, we implemented several measures, including automated scripts to correct corrupted data.

Product features


We developed a dedicated page for users of this data management platform to monitor the status of client servers. Using the Atlassian status page as a foundation, we customized the design to fit our needs. This tailored solution equips platform users with essential information, enabling them to make informed decisions and enhancing trust and reliability in the AdTech platform.

Updated UI for budget reallocation recommendations

We've moved the list of recommendations from a general separate page to a modal window within each campaign, simplifying the comparison of user budgets. Additionally, we introduced the option to customize recommendation settings, allowing users to tailor the advice they receive. We've also included a chart to visualize the forecast generated from the recommendations.

Goals & Progress Dashboard

This dashboard enables users to track their progress toward campaign and media plan goals. It provides a quick overview of set goals and spending, helping users assess their progress. Users can also view the distribution of spending across channels and SaaS platforms, gaining insights into their budget allocation.

Personalized Campaign Recommendations & Budget Optimization

Our system generates personalized campaign suggestions based on users' historical performance, goals, and audience demographics. Users receive recommendations for optimizing their budget allocation, considering historical ROI and campaign performance metrics.


CHI Software’s team joined an ongoing project with several core tasks:

Optimization: Initially, our project involved enhancing the flow of budget reallocation recommendations and setting alerts. This encompassed:

– Refactoring the recommendations and alerts services from Scala to Python.

– Updating the user interface (UI) to provide a better user experience (UX), incorporating helpful features and charts.

– Adding the capability to customize preferred budget reallocation characteristics.

– Implementing an email notifications system.

– Creating comprehensive data visualizations to support the prominence of recommendations.

– Budget optimization involves giving users suggestions for reallocating their budget, considering historical ROI and campaign performance metrics.

Monitoring: Besides the core tasks, a side project related to monitoring emerged. Our team led this project, conducting market research and investigating monitoring possibilities.

– Collaborating with the CTO, we identified the need for two separate monitoring systems:

– One for clients.

– One for internal use.

– We drafted requirements for both, and the implementation was carried out without our direct involvement.

Insights: We then proceeded to create predefined dashboards for all users. One of these dashboards focused on comparing campaign and media plan goals with actual results, while the other compared recommendation forecasts to actual metric results.

Recommendation system: A recommender system has been deployed, utilizing advanced algorithms to deliver personalized recommendations to users. It uses provided customer data and preferences to recommend personalized marketing campaign strategies and budget optimization tailored to individual needs and preferences.

In terms of technology stack:

1. Backend development predominantly utilized Python to support asynchronous programming, ease of use, and suitable libraries for developing domain-driven applications.

2. Frontend development involved various JavaScript frameworks, with React.js being the primary choice.

3. Deployment was managed using Kubernetes and hosted on AWS. Our DevOps team configured Jenkins for automated building, code testing, and deployment to multiple sandbox environments, with each team having at least three sandboxes for testing.

4. We relied on Postgres for data storage, but specific data processing tasks required columnar databases like ClickHouse and NoSQL databases like MongoDB.

5. Some services communicated through Kafka, while others used plain HTTP requests.

6. The architecture was designed to focus on microservices and event-driven principles to ensure a clean, bug-free structure with high performance and scalability. We developed four services, including integrations with ad servers like CM360, Adform, Sizmek, and Appsflyer, to enable the adtech platform‘s trafficking feature.

Our technology stack

  • Python​​
  • Scala​​
  • Java​​
  • JS React​​
  • Typescript​​
  • Recharts library​​
  • AWS​​
  • Apache Kafka​​
  • DataDog (with APM)​​
  • Scikit-Learn

Client values

We contributed to the development of a comprehensive ADTECH analytical system that delivered significant value to our client:​


Accelerated Efficiency: Our work resulted in a 30% increase in the client's operational speed.


Enhanced Campaign Planning: We improved the quality of campaign planning, ensuring more effective and precise strategies.


Competitive Advantage: The SaaS platform gained a robust 'trafficking' feature, setting it apart from competitors and attracting new clients.


Increased ROI: Our efforts led to a remarkable 10 to 20% boost in return on investment (ROI) for our client.


Let’s bring your idea to life together!

    Successfully applied!