---
title: "Martin Hicks - Software developer and AWS consultant"
description: "I'm a software developer and AWS consultant based in Manchester, UK. Currently building open source tools for DynamoDB developers."
canonical: https://martinhicks.dev/
last-updated: 2026-08-24
---

# Software developer & AWS consultant.

Hello. I'm Martin, a software developer and entrepreneur based in Manchester, England.

I'm a co-founder of [Si Novi](https://sinovi.uk), where we build cloud-native applications and consult on AWS architecture. I also build tools for DynamoDB - including [Dynoxide](https://dynoxide.dev) and [Nubo](https://nubo.sinovi.uk).

---

## Latest posts

  13th August 2026

### [Parity Suite 3.0.0: measuring the wrong thing](https://martinhicks.dev/articles/parity-suite-300-release-notes)

The board scored emulators on a pass rate over what they attempted, so a score could jump 8 points without the engine changing a line. 3.0.0 replaces that with two figures, letter grades, and 56 new tests.

[Read article →](https://martinhicks.dev/articles/parity-suite-300-release-notes)

  13th August 2026

### [When a DynamoDB vector index is actually ready](https://martinhicks.dev/articles/dynamodb-vector-search-docs-get-wrong)

AWS's docs contradict each other about what searching a backfilling vector index does, describe a state the index never enters, and name a readiness signal that arrives too early. Here's what I measured instead.

[Read article →](https://martinhicks.dev/articles/dynamodb-vector-search-docs-get-wrong)

  13th August 2026

### [What a write to an indexed DynamoDB table costs](https://martinhicks.dev/articles/what-a-write-to-an-indexed-dynamodb-table-costs)

Adding a GSI to a DynamoDB table doubles the cost of some writes and changes nothing about others, and which is which isn't well documented. So I measured it against real DynamoDB and pinned every number.

[Read article →](https://martinhicks.dev/articles/what-a-write-to-an-indexed-dynamodb-table-costs)

  28th July 2026

### [Dynoxide 0.12.0: PartiQL RETURNING, wasm conformance](https://martinhicks.dev/articles/dynoxide-0120-release-notes)

RETURNING finally does something, the wasm build lands on the conformance board at 100% over three quarters of the suite, and PartiQL UPDATE stops creating rows it shouldn't.

[Read article →](https://martinhicks.dev/articles/dynoxide-0120-release-notes)

  17th July 2026

### [You can't pin DynamoDB to one region](https://martinhicks.dev/articles/you-cant-pin-dynamodb-to-one-region)

My DynamoDB conformance suite took one AWS region as ground truth. Then that region started accepting a value the rest of AWS rejected, and weeks later reverted it. AWS ships changes region by region, so one region was never a safe baseline.

[Read article →](https://martinhicks.dev/articles/you-cant-pin-dynamodb-to-one-region)

  5th July 2026

### [Dynoxide 0.11.3: closing a Windows port hijack](https://martinhicks.dev/articles/dynoxide-0113-windows-listener-hardening)

Issue #23 asked for a Windows socket option investigation. It found the opposite problem: dynoxide's ports could be hijacked by a same-user process. 0.11.3 closes that, and the test suite now runs on Windows for the first time.

[Read article →](https://martinhicks.dev/articles/dynoxide-0113-windows-listener-hardening)

[View all articles →](https://martinhicks.dev/articles)

---

Source: https://martinhicks.dev/
