two young employees looking at a monitor in the office

The Engine
Behind Our Engineers

Join us

COMPANY TECH STACK

The Tools for the Team

Building better adtech for tomorrow starts with our colleagues today. Everyone at adjoe has a stake in our adtech stack. It is our tech teams who pitch the platforms and technologies to drive our products forward in the industry.
Over 5 Billion Requests per Day
Our mobile SDK is integrated into publisher apps and communicates to our backend via REST or gRPC. We then pull our data from backend APIs to serve insights into our dashboards.
45 LBs & 295 TGs
The Load Balancers distribute all incoming requests to the right target application in different availability zones.

CONTAINER ORCHESTRATION SYSTEM

More Than 2,000 Pods Running
Kubernetes has became industry standard for container orchestration and we are running more than 2000 pods of stateless and stateful apps.
Over 1,000 Containers Running
ECS’s simplicity and stability allow us to reduce management effort and through our use of Spot Instances we are able to keep our AWS serve costs low.
480k Lines of Code
Our application is built in Golang and split into over 120 independent microservices.

EVENT LAYER

Over 1.5 B Events per Day
We believe in event-driven architecture, with our main event bus system being SNS+SQS.
Over 800 M Messages per Day
Apache Kafka is an open-source distributed event streaming platform used for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.
600 GB Processed Data per Day
Similar to Kafka, we use a managed large-scale event streaming bus.
500 M Processed Items per Day
Allows for effortless generation of events based on DynamoDB database activity.
Over 150 TB per Month
The AWS CDN provides high global availability, which gives us the opportunity to serve videos and images to users.

Logging and Metrics Layer

Over 1.5 B Logs per Day
The self-hosted Elasticsearch allows us to process, store, and search billions of log events daily.
Cheaper than CWL
To remain cost efficient we ship our logs from Docker to Elasticsearch.
10k+ Different Metrics
Responsible for our infrastructure, monitoring, and alarms to be fast and efficient.
Written in Go & Typescript
Advanced visualization tool to analyze our system performance.
15,000+ Different Metrics
Prometheus is an open-source systems monitoring and alerting toolkit that has become an industry standard software for cloud native applications.
1,102 solved bugs
Comprehensive application error tracking that informs our team of any challenges the Go Microservices may encounter.
35 New Alarms in 2021
Our core incident management tool that prevents us from missing outages or degradations of service.
APM Solution
A cost effective alternative to ELK stack using S3 like object stores for storage.

Database Layer

700+ Tables in Use
Our central data store that is fast, reliable, and scales automatically.
500 GB Aggregated Data per Day
Powers our statistics and analytics dashboards.
10x Faster Than Redshift in Specific Scenarios
Apache Druid is a real-time database to power modern analytics applications.
Perfect DynamoDB Alternative
ScyllaDB is the Monstrously Fast + Scalable NoSQL Database.
Over 210 M Queries per Day
Used for caching and performance boosts.
Database Management System
A cloud-native columnar database optimized for the AWS.

Big Data

Data Lake Pipeline

Over 2 B Messages per Day
Apache Kafka is an open-source distributed event streaming platform used for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.
5 TB of Data per Day
Processes every possible amount of data and throughput in real-time.
6 TB Logs to s3 per Day
Firehose makes it possible to write this data in optimal size and format (parquet) for querying.
Low Latency and High Throughput Data Processing
Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams.
81 Lambda Functions
Connected to DynamoDB streams, captures table activity and sends it to Kinesis.
140 Tables to Fill
Glue is the backbone of the pipeline. It holds schema and table information, which is used for both processing and querying.

Data Science

100 CPUs in Use
Gives our business the ability to transform and analyze our data from the Datalake into unique and valuable insights that otherwise would not be possible.
>20 Million ML Predictions per Day
Used to develop machine learning models and algorithms to scale our business’ performance.
>88k Generated Queries
Our serverless solution to querying the Datalake through SQL in seconds.
Workflow Management
An open-source tool for authoring, scheduling, and monitoring complex workflows as code.
Computing Platform
An open-source tool to host a distributed Jupyter Notebook environment.
Managing Machine Learning Workflows
Train, reuse, and deploy ML models in a reproducible way.

Deep Storage

600 TB Data
Storage for both our Datalake and additional static content.
Over 5 Billion Requests per Day
Our mobile SDK is integrated into publisher apps and communicates to our backend via REST or gRPC. We then pull our data from backend APIs to serve insights into our dashboards.
45 LBs & 295 TGs
The Load Balancers distribute all incoming requests to the right target application in different availability zones.
Over 150 TB per Month
The AWS CDN provides high global availability, which gives us the opportunity to serve videos and images to users.

CONTAINER ORCHESTRATION SYSTEM

More Than 2,000 Pods Running
Kubernetes has became industry standard for container orchestration and we are running more than 2000 pods of stateless and stateful apps.
Over 1,000 Containers Running
ECS’s simplicity and stability allow us to reduce management effort and through our use of Spot Instances we are able to keep our AWS serve costs low.
480k Lines of Code
Our application is built in Golang and split into over 120 independent microservices.

Logging and Metrics Layer

Over 1.5 B Logs per Day
The self-hosted Elasticsearch allows us to process, store, and search billions of log events daily.
Cheaper than CWL
To remain cost efficient we ship our logs from Docker to Elasticsearch.
10k+ Different Metrics
Responsible for our infrastructure, monitoring, and alarms to be fast and efficient.
Written in Go & Typescript
Advanced visualization tool to analyze our system performance.
15,000+ Different Metrics
Prometheus is an open-source systems monitoring and alerting toolkit that has become an industry standard software for cloud native applications.
1,102 solved bugs
Comprehensive application error tracking that informs our team of any challenges the Go Microservices may encounter.
35 New Alarms in 2021
Our core incident management tool that prevents us from missing outages or degradations of service.
APM Solution
A cost effective alternative to ELK stack using S3 like object stores for storage.

EVENT LAYER

Over 1.5 B Events per Day
We believe in event-driven architecture, with our main event bus system being SNS+SQS.
Over 800 M Messages per Day
Apache Kafka is an open-source distributed event streaming platform used for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.
600 GB Processed Data per Day
Similar to Kafka, we use a managed large-scale event streaming bus.
500 M Processed Items per Day
Allows for effortless generation of events based on DynamoDB database activity.

Big Data

Data Lake Pipeline

Over 2 B Messages per Day
Apache Kafka is an open-source distributed event streaming platform used for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.
5 TB of Data per Day
Processes every possible amount of data and throughput in real-time.
6 TB Logs to s3 per Day
Firehose makes it possible to write this data in optimal size and format (parquet) for querying.
Low Latency and High Throughput Data Processing
Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams.
81 Lambda Functions
Connected to DynamoDB streams, captures table activity and sends it to Kinesis.
140 Tables to Fill
Glue is the backbone of the pipeline. It holds schema and table information, which is used for both processing and querying.

Data Science

100 CPUs in Use
Gives our business the ability to transform and analyze our data from the Datalake into unique and valuable insights that otherwise would not be possible.
>20 Million ML Predictions per Day
Used to develop machine learning models and algorithms to scale our business’ performance.
>88k Generated Queries
Our serverless solution to querying the Datalake through SQL in seconds.
Workflow Management
An open-source tool for authoring, scheduling, and monitoring complex workflows as code.
Computing Platform
An open-source tool to host a distributed Jupyter Notebook environment.
Managing Machine Learning Workflows
Train, reuse, and deploy ML models in a reproducible way.

Deep Storage

600 TB Data
Storage for both our Datalake and additional static content.

Database Layer

700+ Tables in Use
Our central data store that is fast, reliable, and scales automatically.
500 GB Aggregated Data per Day
Powers our statistics and analytics dashboards.
10x Faster Than Redshift in Specific Scenarios
Apache Druid is a real-time database to power modern analytics applications.
Perfect DynamoDB Alternative
ScyllaDB is the Monstrously Fast + Scalable NoSQL Database.
Over 210 M Queries per Day
Used for caching and performance boosts.
Database Management System
A cloud-native columnar database optimized for the AWS.
two developers at adjoe working on the company tech stack

Sharing and growing our expertise is part of the adjoe culture

Whether it’s providing our insights into our adtech stack or tools on Stack Overflow or through open source projects. Our Tech team is on it. We dedicate afternoons to answering your questions, leading discussions, and giving back to our developer community. Dive into our daily developer topics here.
Check our Stack Overflow

Open-Source Technologies

Kubernetes, Terraform, Golang, MySQL, Kafka, Druid, Schema Registry, Prometheus, Grafana, Thanos, Linux, Elasticsearch, Kibana, Fluentbit, Openobserve, Jupyterhub, Ray, Airflow, MLflow, Docker, Podman, Tensorflow, Pytorch, Git, Karpenter, OpenMetadata, Trino, Velero, ArgoCD, Blackbox Exporter

Connect with us on social media

two members of adjoe using the company tech stack

Our Tech Team

Less is not always more – as proven by our extensive company tech stack. And our team is always pitching new technologies that will help us grow our business.
Discover our Tech teams

View our adtech jobs

Join us