Variant Systems

Elixir & Phoenix for Logistics

Supply chains don't pause for server errors. Elixir's fault tolerance keeps your logistics running.

Variant Systems builds industry-specific software with the tools that fit the problem.

Why this combination

  • BEAM VM handles millions of concurrent connections from fleet devices and IoT sensors
  • Fault-tolerant supervision trees keep the system running when individual components fail
  • Phoenix Channels push real-time location and status updates to dispatchers instantly
  • Lightweight processes manage stateful connections to thousands of tracking devices

Why Elixir for Logistics Systems

Logistics software manages chaos. Trucks break down. Ships get delayed. Warehouses overflow. A container in Shanghai affects a delivery in Chicago. Your system needs to process all of this simultaneously, in real time, without dropping data or going offline. Most web frameworks weren’t built for this kind of concurrency.

Elixir runs on the BEAM VM - infrastructure originally built for telecom switches that handle millions of simultaneous calls. Each tracking device, each shipment state machine, each integration connection runs as an isolated lightweight process. A failed GPS parser for one truck doesn’t affect tracking for the rest of the fleet. The supervision tree restarts failed processes automatically. You don’t page an engineer at 3am because one carrier API returned garbage data.

Real-Time Fleet and Shipment Tracking

Dispatchers need to see where every vehicle is right now. Not five minutes ago. Not after the next polling interval. Now. Traditional architectures poll APIs or batch-process location data. By the time the dashboard updates, the information is stale.

Phoenix Channels maintain persistent WebSocket connections between your server and every dispatcher screen. When a GPS tracker reports a new position, the system broadcasts that update to relevant subscribers in milliseconds. We build shipment state machines as GenServer processes - each shipment is a living process that tracks its current state, handles events (picked up, in transit, delayed, delivered), and pushes state changes to interested parties automatically. LiveView dashboards update without JavaScript, rendering server-side HTML diffs over the wire for a real-time experience with zero frontend complexity.

IoT Data Ingestion at Scale

Modern logistics runs on sensor data. GPS trackers on trucks. Temperature monitors in refrigerated containers. Weight sensors on warehouse shelves. Barcode scanners at every handoff point. Each device sends a constant stream of telemetry that your system needs to ingest, validate, and act on.

Elixir handles this volume naturally. Each device connection is a supervised process with its own state and failure boundary. A malfunctioning sensor that sends malformed data gets handled - the process crashes, restarts, and reconnects - without affecting data ingestion from other devices. We process IoT data through pipelines built with GenStage, applying backpressure when downstream systems can’t keep up rather than dropping messages. The result is a system that ingests telemetry from thousands of devices concurrently without data loss.

Integration with Carrier and Customs Systems

Logistics doesn’t happen in your system alone. You integrate with carrier tracking APIs, customs declaration systems, warehouse management platforms, and billing services. These external systems have varying reliability, unpredictable response times, and inconsistent data formats.

Elixir’s supervision trees are built for exactly this. Each integration runs as a supervised process with configurable retry strategies. A slow customs API queues requests naturally without blocking your shipment processing. Failed carrier API calls retry with exponential backoff. Circuit breakers prevent cascade failures when an external service goes down entirely. We manage stateful integration sessions - maintaining authentication tokens, handling rate limits, and tracking request quotas - all within isolated processes. The core shipment tracking system stays responsive regardless of how external services behave.

Compliance considerations

Chain of custody logging with immutable event streams
Cross-border data handling with configurable data residency per region
IoT device authentication via mutual TLS and certificate management
Customs documentation generation with audit trails for regulatory review

Common patterns we build

  • Real-time fleet tracking dashboards with Phoenix LiveView
  • IoT telemetry ingestion from GPS trackers and environmental sensors
  • Event-driven shipment state machines using GenServer processes
  • Fault-tolerant integration with carrier APIs and customs systems

Other technologies

Services

Building in Logistics?

We understand the unique challenges. Let's talk about your project.

Get in touch