Selected work

Six launches I'm proud of

canva-ai.spec · Canva AI · Canva · 2026running

Testing AI that gives a different answer every time

Canva AI turns a request in plain words into calls to design tools, sometimes chaining several together. Any model or prompt change can quietly break those choices, and pass/fail tests can't see it.

  • Eval pipelines
  • LLM-as-judge
  • Tool descriptions
  • YAML + GitHub
affinity.spec · Affinity · Canva · 2025launched

Getting Affinity's website ready for the day it went free

Canva was making Affinity free, and one announcement would send a wave of people to the website at the same moment. There was a week to prove it would hold.

  • k6
  • JMeter
  • AWS
  • Cloudflare
brand-kits.spec · Brand Kits · Canva · 2026shipped

Bringing Brand Kits to every Canva user

Brand Kits keep fonts, colours and logos consistent across designs. Opening them up from teams to every individual meant they had to work for millions of people, on every device and in every language, from day one.

  • Test strategy
  • TypeScript
  • iOS / Android
  • a11y
process-mining.spec · Process Mining · ServiceNow · 2020–22shipped

Building QA from zero for a brand-new ServiceNow product

ServiceNow's R&D and NowX teams were building Process Mining, a new product that shows how work really flows through a business. There was no QA practice behind it.

  • UI + API automation
  • Gremlin
  • Release mgmt
preqin.spec · Preqin · ThoughtWorks · 2017–20shipped

Test architecture for Preqin's rebuilt website

Preqin's data on alternative assets is used by investors around the world. ThoughtWorks rebuilt their entire website, and testing had to keep pace with a large team shipping fast.

  • Cypress
  • Supertest
  • Jest
  • JMeter
bpay.spec · Barclays UK · Cognizant · 2015–17shipped

Paying with a tap, before Apple Pay was in every pocket

With bPay, Barclays customers paid by tapping a wristband, a sticker or even a jacket on a card reader, years before paying without a card was normal.

  • NFC
  • POS terminals
  • Rest Assured
  • SeeTest

More client work

ThoughtWorksBMW Group

BMW and MINI

Rebuilt the website once and white-labelled it for both brands. I led QA for releases, with UI automation and visual regression running across browsers.

ThoughtWorksBanking

DBS Bank

Rebuilt DBS's UI test framework in Cypress and added performance testing with JMeter.

ThoughtWorksData

Questback

A platform that turns team surveys and data from many other systems into insights. I set up daily security scans of its Docker images and built tools that checked the data arriving from S3 buckets and APIs.

Canva2025 → now

Canva Business, and apps for real estate

Tested the onboarding and setup flows for the Canva Business launch, which rolled out cleanly even with requirements changing up to launch day. Since then I've been the QA on business-specific apps built for real estate users.