04 / 05 · Solution · Bespoke build

Custom software development.

Web and mobile platforms, API integrations, cloud deployments, IoT pipelines — built for the geospatial and field-operations domains where off-the-shelf would force the wrong shape.

Discuss a build
What this practice does

Bespoke where off-the-shelf would force a workaround.

We don't do custom because it's billable. We do custom when configuring a SaaS would warp the process around the tool, when the existing vendor has stopped investing in the feature you need, or when the integration boundary is the actual product.

Most of our custom-software briefs are at one of three boundaries: geospatial data meets a non-GIS team, field operations meet an enterprise back office, or an IoT estate meets a decision-support layer. The hard part is rarely the technology — it's getting the seams right.

Capabilities

Five build patterns we keep being asked for.

Most projects sit inside one of these patterns. Where they don't, the discovery phase is longer.

01

Domain-specific web platforms

React / TypeScript front ends, Python or Node APIs, PostGIS underneath. Built for a specific workflow rather than a generic CRUD shell.

  • React + TypeScript
  • Vite · Next.js
  • FastAPI · Express
  • PostGIS · DuckDB
  • Auth (Entra / Okta)
  • RBAC, audit, SSO
02

Mobile platforms

Native Android in Kotlin where the workflow is offline-heavy or hardware-aware. Web PWAs where install friction matters more than peripheral support.

  • Kotlin Android
  • Jetpack Compose
  • Bluetooth peripherals
  • Offline-first sync
  • Push / FCM
  • MDM provisioning
03

API & integration work

Where the deliverable is the seam — between a SaaS, a GIS, an ERP and a data warehouse. REST, GraphQL, OGC API, webhooks, queues. The boring infrastructure that makes the rest defensible.

  • REST & GraphQL
  • OGC API · STAC
  • Webhooks · SQS / Service Bus
  • SFTP / EDI bridges
  • OAuth / OIDC
  • Schema versioning
04

Cloud deployments

AWS or Azure, depending on the tenancy you already have. Infrastructure-as-code. CI/CD. Observability. Not a heroic platform engineering effort — the regular kind that survives the operations review.

  • Terraform · Bicep
  • GitHub Actions
  • Containers · ECS / AKS
  • Postgres + PostGIS
  • Object storage
  • OpenTelemetry
05

IoT & sensor pipelines

From LoRaWAN gateways and field sensors through ingest, decoding and storage to the dashboards a decision actually gets made on. We've done this in agri and infrastructure contexts.

  • LoRaWAN ingest
  • MQTT · Kafka
  • Time-series store
  • Edge processing
  • Alerting rules
  • Decision dashboards
How we work

Senior team. One steady contact.

Buyer questions

FAQs.

Will you take on a fixed-price build?

For tightly scoped pieces, yes. For anything where the requirements are genuinely uncertain at the start, we prefer a discovery sprint that prices the build properly, then a fixed-price build phase. Fixed-pricing the wrong scope helps no one.

What's your stack?

TypeScript and React on the front end. Python or Node on the back. PostGIS for spatial data. Kotlin for Android. AWS or Azure depending on the client's existing tenancy. We do not chase frameworks — boring tools age better.

Will you work with our existing development team?

Yes. We've slotted into in-house teams as a focused geospatial extension, and we've handed projects back for in-house ownership at the end of a build. Whatever fits the team.

What about source code and ownership?

The code is yours from commit zero — pushed to your repo on your account. No license fee on what we build, no per-seat fee, no platform lock-in. The handover at the end is just access already given.

Yours isn't here? Ask us directly.

Previous · Digital forms Next · AI & analytics
Got a build in mind?

Tell us the seam. We'll tell you whether bespoke is the right answer or whether something off-the-shelf does the job.

Emailhello@m2geo.ie

Bring the problem and the constraints. We'll bring an honest read.