
Rob Reid is Cockroach Labs’ Technical Evangelist and a software developer from London, England. In his career, he has written backend, frontend, and messaging software for the police, travel, finance, commodities, sports betting, telecoms, retail, and aerospace industries. He is the author of *Practical CockroachDB: Building Fault-Tolerant Distributed SQL Databases* (Apress) and *Understanding Multi-Region Application Architecture* (O’Reilly) and has two CockroachDB tattoos.
System
Why Multi-Region Application Architecture Matters
In my experience as a software engineer (and generally as a human, come to think of it), it seems to be universally easier to go from 2 to 3 of something, than it is to go from 1 to 2. For example, if your application already supports 2 languages, adding a 3rd is simple; whereas, if your application only supports 1 language, you need to build support for internationalization, before you can add the 2nd. The same holds true for application architecture; adding a 3rd region to an application that’s already distributed and supports multiple regions is much easier than making a single region application distributed (can run across multiple machines) and then multi-region (region/locality awareness).

Rob Reid
August 14, 2023
Product
The Art of Data Residency and Application Architecture
In this post Rob and I explain how we built Silo, a fully functioning multi-region Next.js application combining CockroachDB multi-region serverless and a multi-region Node.js (Lambda) API backed by a Geographically aware Route 53 Hosted Zone. Both the API and CockroachDB have been deployed to AWS. The Next.js app has been deployed using Vercel. There are a number of reasons why you’d want to choose a multi-region strategy; to optimize latency, maintain high availability and, in some cases, to comply with regional regulations. But, rather than tell you about the benefits, I’d like to show you.

Rob Reid
May 17, 2023
Design
A recipe for disaster recovery (including disaster prevention in practice)
Disasters are expensive. Hilariously expensive. In my career as a software engineer, I’ve employed a bunch of technologies and witnessed most of them - in some way - fail and cause downtime. Downtime (and the thought of downtime), alongside Toilet Time Debugging™, are among the endless reasons a Software Engineer may struggle to switch off.

Rob Reid
May 2, 2023