Engineering

Technology built
for scale and speed

We choose our tools deliberately. Every technology in our stack was selected because it gives us a meaningful advantage in building fast, reliable, and beautiful mobile products.

Mobile Development

Cross-platform and native, done right

We build mobile products that feel native on every platform. Our approach combines the development efficiency of Flutter with the platform-specific power of Kotlin and Swift where it matters most.

Flutter

Our primary cross-platform framework. A single Dart codebase delivers pixel-perfect UIs on Android and iOS, dramatically accelerating our feature velocity without sacrificing performance.

Kotlin

For Android-specific integrations, background services, and performance-critical modules, we drop into native Kotlin. Modern, expressive, and the language Google officially recommends for Android.

Swift

Native iOS development in Swift handles platform-specific features like WidgetKit, Live Activities, and deep system integrations that require the full power of Apple's ecosystem.

Dart / Pub

The language behind Flutter. Dart's strong typing and ahead-of-time compilation give us confidence in our code and performance our users can feel in every interaction.

Backend & Infrastructure

Built for real-time, designed for edge

Sports data is live data. Our backend architecture is designed to ingest, process and serve high-frequency event streams with minimal latency — wherever our users are in the world.

Cloudflare

The backbone of our global content delivery and security layer. Cloudflare Workers power our edge compute, while Workers KV and Durable Objects handle real-time state without cold starts.

Node.js / Bun

Our primary API runtime for event-driven services. The non-blocking I/O model is ideal for our WebSocket-heavy live data pipelines and real-time notification infrastructure.

PostgreSQL

The relational foundation for structured sports data, user profiles and application state. We use logical replication and read replicas to ensure query performance at scale.

Redis

In-memory caching for live match data, session state and rate limiting. Redis Streams power our internal event bus, connecting data ingestion with downstream services.

Data & Analytics

Turning raw data into fan intelligence

Data Ingestion

We integrate with multiple professional sports data providers via REST and WebSocket APIs, normalising heterogeneous data schemas into a unified internal format in real time.

Processing Pipeline

Stream processing via Cloudflare Queues and custom workers handles event enrichment, aggregation and fan-facing statistic computation with sub-second end-to-end latency targets.

Personalisation Engine

A lightweight recommendation layer uses collaborative filtering and content signals to rank news articles, surface relevant statistics and time push notifications for maximum engagement.

Engineering Culture

How we build

Continuous Delivery

We ship to production multiple times per week. Automated CI/CD pipelines with comprehensive test coverage give us the confidence to move fast without breaking things.

Observability First

Every service is instrumented with structured logging, distributed tracing and custom metrics. We know about problems before our users do.

Security by Design

OWASP principles inform every architecture decision. Data is encrypted at rest and in transit. Secrets are managed via environment isolation, never hardcoded.

API-First Architecture

All product surfaces consume the same versioned internal APIs. This ensures consistency and means adding a new platform (web, tablet, TV) requires zero backend changes.

Offline-Capable Apps

We architect for connectivity gaps. Optimistic UI updates, local caching and graceful degradation mean our apps deliver value even in poor network conditions.

Accessibility Standards

WCAG 2.1 AA compliance is a baseline requirement. Every feature is tested with screen readers and meets contrast ratio standards across all supported OS themes.