Overview

Analysis only matters when it reaches the person who has to act. I build the Django, FastAPI and PostGIS backends, real-time feeds and alerting that turn EO and sensor data into working services, and I deploy them reproducibly.

What you get

  • Spatial REST and WebSocket APIs on Django or FastAPI with PostgreSQL / PostGIS
  • IoT ingestion over MQTT and scheduled satellite processing with Celery
  • Alerting through WhatsApp and SMS, PDF reporting and live dashboards
  • QGIS plugins that bring your service into analysts' existing tools
  • Dockerised deployments on AWS, with automated tests and CI

Who this helps

  • Early-warning programmes

    Flood, hazard or crop alerts that must reach communities quickly.

  • Energy & infrastructure developers

    Fast, explainable screening of candidate sites.

  • Start-ups & product teams

    Location-aware products that need a solid spatial backend and API.

  • Research teams

    Turning a working notebook into a service others can use.

How I approach it

  1. 01

    Model the domain spatially first

    Design the PostGIS schema around the real-world entities, such as gauges, catchments, sites and constraint layers, so every output traces back to its data.

  2. 02

    Design for the latency the decision needs

    Site screening was designed for sub-500 ms assessments, using Redis and spatially indexed layers; batch jobs run on Celery schedules.

  3. 03

    Ingest real-world data robustly

    MQTT from ESP32 sensors, scheduled Sentinel-1 / 2 processing and validated inputs, so the service keeps running when one feed fails.

  4. 04

    Deliver where users already are

    WhatsApp and SMS alerts, QGIS plugins, PDF reports and live WebSocket dashboards rather than another login.

  5. 05

    Ship in phases, with tests

    Flood Watch shipped in five delivery phases, each with its own automated tests, so new features do not break earlier ones.

  6. 06

    Deploy reproducibly

    Docker and AWS (EC2, S3), with GitHub Actions CI and split settings for each environment.

Evidence from my work

  • 10PostGIS spatial data models behind Flood Watch Ghana
  • < 500 msSite-screening design target across 15 layers
  • 5Tested delivery phases for Flood Watch Ghana
  • AWSCertified Solutions Architect – Professional

Flood Watch Ghana combines MQTT sensor ingestion, Celery-scheduled Sentinel-1 / 2 flood detection and Twilio WhatsApp / SMS alerts; Fatal Flaw delivers PDF reports and a QGIS plugin from one FastAPI service.

Selected work

BackendIoT + Satellite

Flood Watch Ghana

Django + PostGIS backend with MQTT ingestion from ESP32 gauges, Celery-scheduled Sentinel-1/2 flood detection and Twilio WhatsApp / SMS community alerts.

View case study
FastAPISite Screening

Fatal Flaw Geospatial Risk Platform

Screens Solar, Wind, BESS and data-centre sites against 15 authoritative constraint layers with fatal-flag detection, weighted risk scoring, PDF reports and a QGIS plugin.

View case study
InSARDigital Twin

Urban Subsidence Watcher

Sentinel-1 from the ASF Vertex API through an SBAS chain, with a Tiny U-Net on an 8-channel stack exported to ONNX for edge deployment.

View case study

What sets my work apart

  • 1

    Geospatial-native backends

    PostGIS sits at the core, not as an afterthought, so spatial queries are fast and correct.

  • 2

    Built for real conditions

    Low-bandwidth delivery channels, intermittent sensors and users without GIS training.

  • 3

    Cloud-certified

    AWS Certified Solutions Architect – Professional, with production deployments to match.

Tools & standards

  • Django
  • FastAPI
  • PostgreSQL / PostGIS
  • Redis
  • Celery
  • MQTT
  • WebSockets
  • Docker
  • AWS EC2 / S3
  • GitHub Actions

Common questions

Do you build the front end too?

I focus on backends, APIs and data, and build dashboards and server-rendered interfaces (for example Django with HTMX). For complex single-page front ends I can pair with a front-end specialist.

Where will it be hosted?

Wherever suits you: AWS or your own servers. Everything is containerised with Docker.

Can you integrate with our existing GIS?

Yes. Services expose standard APIs and formats, and a QGIS plugin can bring results directly into analysts' projects.