Embracing the Future: The Technology Powering NextRoll’s New Cookieless Bidder


In the ever-evolving landscape of digital advertising, staying ahead of the curve is essential for success. As the industry shifts towards a privacy-first approach with the imminent departure of third-party cookies, companies must adapt and innovate to continue delivering effective advertising solutions. 

At NextRoll, we recognize the need to integrate with the Privacy Sandbox’s APIs, as well as the opportunity to experiment and remain at the forefront of the latest innovations in the industry. As a result, rather than simply building upon our existing technology, we made the bold decision to construct an entirely new cookieless bidder from scratch.

Building a new bidder from the ground up presented the unique opportunity to leverage the latest advancements in technology. Let’s explore some of the technologies that the NextRoll team found most impactful during this process. 

Rust 

First, is our decision to use Rust as our primary programming language. Rust is one of the most beloved “low-level” coding languages among developers due to its ability to build high-performance applications while addressing many of the pain points of low-level languages. Our team jumped on the opportunity to have Rust be the backbone of this new bidder, and it has not disappointed.

Kubernetes

Next, at the heart of our new cookieless bidder lies Kubernetes, the industry-leading container orchestration platform. Prior to adopting Kubernetes, our bidder relied on a traditional bare-metal infrastructure, which posed challenges in terms of scalability, flexibility, and management overhead. Kubernetes has become the cornerstone of our infrastructure, enabling us to build a resilient bidding solution. By packaging our bidder components into containers and managing them with Kubernetes, we have achieved a new level of efficiency and reliability. Kubernetes allows us to declaratively define our desired state, automatically scale our bidder based on real-time traffic demands, and provide self-healing capabilities to ensure high availability.

Karpenter

As we built our cookieless bidder, we understood the critical importance of efficient resource management. To optimize our infrastructure and ensure cost-effectiveness, we integrated Karpenter, an open-source autoscaling project designed for Kubernetes. Karpenter revolutionizes the way we scale our bidder by leveraging the power of AWS's Autoscaling Groups. With Karpenter, we can define autoscaling policies based on custom metrics and real-time traffic patterns. For example, we can configure Karpenter to automatically add nodes to our cluster when CPU utilization reaches a certain threshold, ensuring that we have sufficient resources to handle increased traffic. Conversely, when traffic subsides, Karpenter can scale down the cluster, reducing costs by terminating idle nodes. This dynamic scaling approach sets Karpenter apart from traditional autoscaling solutions that rely on predefined schedules or reactive scaling based on limited metrics. 

While Karpenter has been a game-changer for us, it's important to note that it does introduce some complexity in terms of configuration and monitoring. However, the benefits of granular autoscaling and cost optimization far outweigh these minor drawbacks.

Argo

In our mission to build a cutting-edge bidder, we recognized the importance of streamlining our deployment process. To achieve this, we turned to Argo, an open-source suite of tools for declarative continuous delivery and GitOps. 

Previously, our deployment process involved manual steps and lacked a consistent and auditable trail. By integrating Argo into our workflow, we transformed the way we deploy and manage our bidder. With Argo CD, we can define our deployment manifests in a Git repository, ensuring version control and enabling a true GitOps approach. This means that any changes to our bidder are tracked, reviewed, and automatically deployed, reducing the risk of human error and increasing transparency.  We also plan to leverage Argo Rollouts in the future, which will allow us to perform advanced deployment strategies like canary releases and blue-green deployments, minimizing the risk and impact of changes to our bidder. 

While Argo introduces a learning curve and requires a shift in deployment mindset, the benefits of reproducibility, auditability, and automated deployments make it a worthwhile investment.

As our engineers developed new and innovative ways to improve our existing bidders, there came the need to develop and integrate into one core system. This was only made possible by the efforts and willingness of members of many teams across NextRoll coming together to share their in-depth knowledge of the different systems. We are proud to say that the knowledge transfer was successful, and many engineers (myself included) are grateful for the opportunity to receive a more detailed exposure to the entire bidder pipeline. 

Bring on the future!

Ahmad Masad is a Senior Data Science Engineer at NextRoll.