# Altos Technologies — Ottawa

Proudly Canadian. Custom software development and systems integration. Telecom-scale load, control plane, and packet steering.

Contact: [office@altostech.ca](mailto:office@altostech.ca)

## What we do

### Performance testing

We put systems under real load, find the bottlenecks, and show what will hold in production. When the problem is compute at scale, that includes high-performance computing.

Java, Kafka, Redis.

### Big data and analytics

High-volume data: ingest, transform, store, and query — including streaming when it has to be real-time.

Kafka, ClickHouse, Redis, Elasticsearch.

### Software-defined networks

Programmable packet paths: custom aggregation and load balancing, overlay handling (VLAN, MPLS, GTP), and stateful flow inspection.

P4, Tofino, DPDK.

## Recent work

Work below is anonymized under NDA. Client names are not published.

### IP-flow load generation

A generator for an IP-flow processing pipeline: on the order of 10 million flow events per second, representing about 1 million concurrent mobile subscribers with realistic device identifiers, cell movements and applications. Kafka, Redis, Java.

### Kafka to ClickHouse

The customer moved data as CSV and was barely handling 100 thousand events per second. Replaced with Kafka, Protobuf, Kafka Streams, and ClickHouse: a sustained 10 million events per second, with less hardware and storage. Each record can be enriched in real time from the control plane — for example subscriber location and device identity on an IP-flow record. Shipped with a performance-testing framework and OpenTelemetry monitoring.

### Diameter Gx/Gy

Control plane for a PCEF-style system: policy and quota, next to an existing data plane. Includes a Gx/Gy server for testing and integration. Designed for high availability; 50 thousand control messages per second.

### Packet broker

On 100G Edgecore switches: both directions of a flow are steered to the same DPI engine, then returned to the correct port.

## How we work

We work in Agile iterations, building applications block by block, so technical and business decisions can be judged in a working system.

1. **Discover** — Break the project into iterations that cover the required functionality.
2. **Design** — Architecture first: the simplest and safest structure that will keep cost down.
3. **Develop** — Code to agreed standards, pair programmed, continuously integrated.
4. **Test** — Prove the features work, and that they hold under load.
5. **Release** — Keep improving and refactoring toward a stable, well-performing system.

## Contact

- We will respond within 24 hours.
- We will sign an NDA if you ask.
- You will talk to product and tech people — not account managers.

[office@altostech.ca](mailto:office@altostech.ca)

Altos Technologies · Ottawa, Ontario, Canada
