Sheet 03 · Project register
Projects
Selected work: agronomy platforms, spatial data pipelines and map rendering.
MyFarmWeb
The client-facing agronomy platform: interactive maps, data exploration and reporting for farmers and agronomists.
- Led a full rewrite of the client-facing frontend, improving performance, usability and platform adoption.
- Developed regional-scale data exploration and export tools that process years of data quickly.
- Moved static and spatial content delivery onto a CDN, improving caching efficiency and global latency.
- Architected and delivered online service ordering, integrating with existing operational and scheduling workflows.
- TypeScript
- React
- OpenLayers
- WebGL
- AWS
Mobile
Field applications for capturing survey data and reporting from the field.
Capture — led the refactor, redesign and production deployment of a business-critical field app, reducing support burden while improving release confidence, user experience and maintainability.
- Hand-coded advanced digitising features: performant survey gridding, manual digitising, and GPS-track-based digitising.
ATVise — led development on a cross-team project compiling location-aware in-field text, voice and image recordings into context-enriched, editable reports for agronomists and agents to share.
- React Native
- TypeScript
Data
The data layer beneath the platform: pipelines, analytics and document generation.
- Led the design and implementation of a centralised crop data platform, aligning and cleaning data across multiple legacy systems so that analytics and reporting could be trusted.
- Built an analytics API with DuckDB and tRPC, aggregating large and disparate Parquet datasets while still adhering to MyFarmWeb’s data-access authorization model.
- Redesigned the storage and processing of large spatial datasets, substantially reducing storage costs.
- Designed and built a bespoke PDF map-book templating engine, dramatically cutting turnaround from sample collection to delivery.
- TypeScript
- DuckDB
- tRPC
- Parquet
- Postgres
- AWS
Platform
The internal tooling, packages and constraints the rest of the platform is built on.
- Designed the internal packages, tooling and contribution constraints so that safety is enforced by the guard rails themselves rather than left to code review — opening the platform to LLM-assisted contributors.
- Built CI/CD pipelines and automated end-to-end testing across multiple frontend applications.
- Currently leading the migration off Firebase, which serves as the syncing layer for the Capture app.
- TypeScript
- TurboRepo
- pnpm
- Cloudflare Workers
- GCP
Personal
Easy-to-use thematic maps of South Africa.
Each thematic map is a mini-system in its own right, with its own data pipeline, caching layer and scheduled jobs behind it.
- Built entirely from publicly available datasets.
- Nothing is proxied live except select API tiles; the rest is ingested on a schedule rather than fetched on demand.
- Cached aggressively and selectively at every layer.
Design2Digital
Client work
A small software consultancy delivering production systems for clients across banking, agriculture and marketing.
Co-founded a consultancy delivering production software for a range of clients, contributing to architecture, implementation and delivery while owning defined technical scope alongside engineers, designers and client stakeholders.