01
Working with you
Decisions you can understand and act on.
- Language
- Native English speaker
- Based
- Toronto, Canada (British Canadian)
- Overlap
- North American and European working hours
I'm a British Canadian based in Toronto. My working hours overlap with North America and the European afternoon, which makes it practical to work with founders on either side of the Atlantic.
I'll check that I've understood your brief, explain the reasons behind a technical choice, and flag decisions that need your input. Updates cover what's working, what's next and anything that could affect the plan.
02
Systems architecture
A system that fits the business you are building.
- Experience
- 25+ years
- Example
- Naberly, full-stack architecture
I designed the full-stack architecture for Naberly, the real estate platform later acquired by Fathom Holdings' subsidiary intelliAgent. Architecture is where we work out how the pieces of your product fit together, and which decisions will be costly to change later.
For your project, that means working through the main workflows, data and integrations, then choosing a structure that fits the first release and leaves room for what comes next.
04
C#
My usual starting point for business applications.
- Chosen for
- Type safety, excellent database access, dependency injection
- Ecosystem
- Commercially supported tooling
I use C# and .NET for business applications, including Howdy. They let me build the rules, database access and APIs behind a product in a stack I know well.
I value the type checking, database tools and established tooling. Those help me spend more of the build on what is specific to your business.
05
TypeScript & React
The screens your customers spend time in.
- React
- Since its first release
- Framework
- TanStack, SSR-first
- Client
- Fast client-side apps and navigation where needed
I've used React since its first release and write my front ends in TypeScript, usually with TanStack. I generally render the first page on the server, then handle interactions in the browser where that makes sense. The aim is a product that loads promptly and feels responsive as people use it.
I also created ReactQL, an open-source React and GraphQL starter kit, now archived. It brought server rendering, data access and application setup together for developers.
06
PostgreSQL
Keeping your data in a manageable place.
- Role
- Main database
- Also
- Job queues, document-style data
PostgreSQL is usually my main database. I also use it for background job queues and document-style data where it fits. Keeping those jobs in one system can mean fewer services for you to pay for and your team to maintain.
07
Kubernetes & OpenTofu
Hosting your team can understand and reproduce.
- Clouds
- Linode, Amazon AWS, Google Cloud
- Chosen by
- Requirements and what fits the business
I use Kubernetes to run applications and OpenTofu to describe the infrastructure in code, so the setup is recorded and repeatable. I've worked with Linode, AWS and Google Cloud. We choose the hosting around your requirements, running costs and the work involved in maintaining it.