Skip to content
AI Digital Hub

Technology

What we build on, and why

A stack chosen for maintainability rather than novelty. Every choice below has a reason, and several of them are reasons to use less technology than you might expect.

AI & models

We default to Claude for reasoning-heavy work and route simpler steps to smaller models. The architecture keeps providers swappable, because pricing and capability move every few months.

  • Claude (Anthropic)Primary for reasoning and agents
  • OpenAIWhere a specific capability fits better
  • Open-weight modelsSelf-hosted for residency constraints
  • Vercel AI SDK
  • LangGraphAgent orchestration
  • TemporalDurable long-running workflows

Data & retrieval

Answer quality is capped by retrieval quality, so this layer gets more attention than the model choice does.

  • Postgres + pgvectorDefault under a few million chunks
  • ElasticsearchHybrid keyword and vector search
  • dbt
  • Airflow / Dagster
  • Snowflake
  • BigQuery
  • Databricks
  • Kafka / DebeziumChange data capture

Cloud & infrastructure

We deploy into your account, defined entirely in Terraform, so nothing depends on us holding the keys.

  • AWS
  • Azure
  • Google Cloud
  • Terraform
  • KubernetesWhen the scale genuinely warrants it
  • Docker
  • Cloudflare

Delivery & operations

Deliberately conventional. The goal is a platform your team can still operate in two years.

  • GitHub Actions
  • GitLab CI
  • ArgoCD
  • Grafana / Prometheus
  • OpenTelemetry
  • PagerDuty
  • Sentry

Evaluation & observability for AI

The layer most teams skip, and the reason their AI features cannot be changed safely.

  • Langfuse
  • LangSmith
  • Custom evaluation harnessesVersioned with your code
  • MLflow

Security

Scanning that gates the pipeline on new findings rather than producing a dashboard nobody opens.

  • Trivy
  • Snyk
  • Semgrep
  • Gitleaks
  • Checkov / OPA
  • HashiCorp Vault

Positions

Opinions that shape the stack

Several of these will cost us work from people who wanted to hear something else. They are still what we think.

Boring where it counts

Terraform, containers, a managed control plane, whatever CI you already pay for. The interesting engineering goes into making the pipeline fast and failures obvious — not into adopting a tool nobody will understand in two years.

Probably not Kubernetes

A managed container service or serverless platform is simpler, cheaper and adequate for most workloads. Kubernetes earns its operational cost at real scale or with genuinely complex scheduling. Choosing it by default is one of the most expensive mistakes in this field.

Postgres before a vector database

Under a few million chunks, pgvector alongside your relational data is simpler, cheaper and easier to keep consistent. Dedicated vector databases earn their operational cost higher up. We will tell you which side of that line you are on.

Providers stay swappable

Model pricing and capability move every few months. We abstract the provider and keep a fallback path, so a price change or an outage is a config change rather than a rewrite.

Your cloud account, not ours

We deploy into your tenancy under roles you grant and can revoke. Smaller attack surface, simpler compliance story, and nothing to extract from us if the relationship ends.

Evaluation is not optional

The layer most teams skip. Without it nobody can say whether a change helped, and nobody else can safely maintain the system. It is in scope on every AI engagement we run.

Partners

Cloud and platform relationships

We work across AWS, Azure and Google Cloud and hold no exclusive reseller arrangement with any of them — deliberately, because a partner incentive is a bad reason to recommend a platform. Where a partner programme gives you credits or better support terms, we will tell you and help you claim it.

Partner programme →
Integrations

Systems we connect to

CRMs, ERPs, support desks, commerce platforms and the emailed spreadsheet your largest supplier insists on. Integration difficulty drives automation cost more than model choice does, so it is worth checking early.

Integration directory →

Wondering whether we can reach your systems?

Tell us what you run. Integration difficulty is the single biggest driver of automation cost, and it is a five-minute conversation to find out.

Or email [email protected] · we reply within 1 business day