Expertise. What we build, and what we build it with.
We design, build and run AI agents, generative AI, automation and custom software for teams whose operations depend on it.
AI agents
Agents that handle real work across your systems, with people approving what matters.
Generative AI
RAG, search, evals and MCP servers that hold up with real users and real data.
Automation
Documents read, checked and filed, and back-office work that runs on its own.
Custom software
SaaS products, internal tools, portals and apps built around how you work.
Integrations
Systems that share data reliably, from legacy ERPs to modern SaaS tools.
AI strategy
Readiness assessments and roadmaps from a team that builds what it recommends.
Technologies we work with.
The models, frameworks, languages and platforms behind what we build, and what each one does in our work.
Models
- Anthropic Claude
Agents, document reasoning and long-context analysis
- OpenAI GPT
General reasoning, structured outputs and embeddings
- Google Gemini
Multimodal input and long documents at scale
- Mistral AI
EU-hosted models where data has to stay in Europe
- Meta Llama
Open models for self-hosted and private deployments
- DeepSeek
Open reasoning models for cost-sensitive workloads
- OpenRouter
One API across providers, with fallbacks between models
- Ollama
Running open models locally during development
- vLLM
High-throughput serving for self-hosted open models
- Hugging Face
Open models, rerankers and embedding models
- ElevenLabs
Natural text-to-speech for voice agents
- Deepgram
Low-latency speech-to-text for calls and voice agents
AI frameworks
- LangGraph
Stateful agent workflows with approval steps and retries
- LangChain
Retrieval pipelines, loaders and model integrations
- PydanticAI
Typed agents with validated tool calls and outputs
- CrewAI
Multi-agent setups where roles are clearly separated
- Model Context Protocol
Exposing your systems to agents as secure, typed tools
- LiveKit
Real-time audio for voice agents on phone and web
- Claude Code
Agentic engineering in our own delivery, with review on every change
- OpenAI Codex
Coding agent for scoped tasks, tests and migrations
- PyTorch
Fine-tuning and evaluating smaller task-specific models
Retrieval and vector search
- pgvector
Vector search inside Postgres, next to your permissions
- Qdrant
Dedicated vector search for large, filtered collections
- Elasticsearch
Keyword and hybrid search over large document sets
- Docling
Parsing PDFs, tables and scans into clean structure
- Firecrawl
Turning websites into clean text for research agents
Evals and observability
- Langfuse
Tracing, cost tracking and eval datasets for LLM apps
- Promptfoo
Regression tests for prompts and models in CI
- OpenTelemetry
Traces across services, agents and model calls
- Sentry
Error tracking for applications in production
- Grafana
Dashboards for latency, volume and cost
- MLflow
Tracking experiments and fine-tuned model versions
Languages
- Python
AI services, data work and back ends
- TypeScript
Web applications, APIs and SDKs
- Go
High-throughput services and integration workers
- Rust
Fast, memory-safe services for parsing, streaming and performance-critical paths
- SQL
Reporting, data models and search queries
- Kotlin
Native Android features where cross-platform falls short
- Swift
Native iOS features where cross-platform falls short
Frameworks
- Next.js
Customer portals, dashboards and marketing sites
- React
Interactive interfaces and internal tools
- React Native and Expo
iOS and Android apps from one codebase
- FastAPI
Typed Python APIs for AI services
- Django
Admin-heavy back ends and data-rich platforms
- Node.js
APIs, webhooks and background workers
- Tailwind CSS
Consistent, accessible interfaces built on a design system
- Better Auth
Authentication, SSO and organisations for SaaS products
Data
- PostgreSQL
The system of record for most of what we build
- Supabase
Postgres, auth and storage for fast-moving products
- Redis
Queues, caching and rate limiting
- Snowflake
Connecting AI features to the data warehouse
- BigQuery
Analytics and reporting on Google Cloud
- Apache Kafka
Event streams between systems that change often
- Apache Airflow
Scheduled data pipelines with retries and lineage
- MongoDB
Integrating with document stores already in place
Cloud and infrastructure
- Docker
Every service packaged the same way, locally and in production
- Kubernetes
Self-hosted deployments at larger scale
- AWS
Production hosting, Bedrock models and S3 storage
- Microsoft Azure
Azure OpenAI and hosting inside Microsoft estates
- Google Cloud
Vertex AI, Cloud Run and data on Google Cloud
- Cloudflare
Edge delivery, R2 storage and protection
- Vercel
Hosting for Next.js front ends
- Railway
Fast hosting for services, workers and databases
- Terraform
Infrastructure defined in code and reviewed like code
- GitHub Actions
CI with tests and eval gates on every change
Automation and integrations
- n8n
Self-hostable workflow automation your team can adjust
- Zapier
Quick connections between SaaS tools already in use
- Make
Visual automations for operations teams
- HubSpot
CRM data for sales agents and lead routing
- Salesforce
CRM integrations and agents working on account data
- SAP
Connecting AI workflows to ERP data and processes
- Odoo
ERP integrations for small and mid-sized companies
- Microsoft 365
Outlook, SharePoint and Teams as sources and channels
- Stripe
Billing, subscriptions and payments in SaaS products
- Zendesk
Support queues where agents draft and route tickets
- REST and GraphQL APIs
Clean, documented APIs between your systems