Tech stack

The tools we trust.

We pick technologies based on long-term maintainability, hiring availability and real product fit — not on hype. Below is the working set we currently build with.

Our engineering choices reflect a single principle: boring where it counts, modern where it matters. The infrastructure layer should be predictable. The user-facing layer can afford to be more adventurous.

Mobile

Flutter
Kotlin
Swift
Jetpack Compose
SwiftUI
Dart

For cross-platform products we lean on Flutter, which gives us a single codebase without sacrificing animation quality. Where a project genuinely needs platform-native depth — deep iOS integration, complex Android background work — we go native with Swift / SwiftUI and Kotlin / Jetpack Compose.

Backend

Node.js
TypeScript
Go
Python
PostgreSQL
Redis
GraphQL
REST

Our backend services are written in TypeScript on Node.js, with Go used for performance-sensitive components and Python reserved for data and analytics pipelines. PostgreSQL is our default datastore; Redis handles caching and short-lived state.

Infrastructure

Docker
Kubernetes
AWS
Terraform
GitHub Actions
CloudFront

Containerized services, infrastructure as code, and continuous delivery from day one. We do not over-engineer — small services run on managed platforms, larger ones graduate to Kubernetes when they need to.

Data and analytics

BigQuery
dbt
Apache Kafka
Airflow
Looker

For analytics workloads we use BigQuery with dbt for modeling. Streaming pipelines run on Kafka, scheduled jobs are coordinated through Airflow.

Design and product

Figma
Linear
Notion
Storybook

Design files live in Figma with a shared component library. Product work is tracked in Linear, documentation in Notion. UI components are documented in Storybook for the web and a similar pattern catalogue for mobile.

Want to work with this stack?

We are actively hiring. Browse open roles or send us a short note.