Senior Software Engineer
Tom Biddulph
Backend-focused C# engineer building reliable, accessible web and fintech systems.
At NewDay, I build and maintain accessible financial products used by millions of customers. My background spans several leading fintech teams.
Leeds, United Kingdom
Experience
Senior Software Engineer
NewDay / -present
- Builds and maintains accessible financial products used by millions of customers.
Senior Software Engineer
Codat /
Software Engineer II
Checkout.com / -
Software Engineer
NewDay / -
Associate
AND Digital / -
Education
University of Hull
Bachelor's Degree, Computer Science / First-class honours (1:1)
Technology stack
- Languages
- C#, TypeScript, SQL
- Platform
- .NET, ASP.NET Core, Azure Functions
- Cloud
- Azure, Service Bus, Application Insights
- Infrastructure
- Proxmox, Kubernetes, self-hosting
- Observability
- OpenTelemetry, distributed tracing, OTLP
- Delivery
- Docker, GitHub Actions, CI/CD
- Testing
- TUnit, integration testing, test hosts
Selected projects
A web UI for exploring and managing the Azure Service Bus Emulator.
Stack: React 19, .NET 10, Azure Service Bus, SQL Server, OpenTelemetry
The application combines a React and Vite interface with an ASP.NET Core API and the Azure Service Bus Emulator.
Architecture
- React + Vite UI
- ASP.NET Core API
- Azure Service Bus Emulator + SQL Server
Highlights
- Queue, topic, subscription and DLQ management
- Docker delivery and OpenTelemetry observability
- Monaco message editor and real-time statistics
View source on GitHub
Generates type-safe property resolvers at compile time, avoiding runtime reflection.
Stack: C#, Roslyn, Source Generators
Annotated C# models drive a Roslyn source generator that emits switch-based property resolvers and a type-safe registry.
Architecture
- Annotated C# models
- Roslyn source generator
- Generated switch-based resolvers
Highlights
- Compile-time generation instead of runtime reflection
- Nullable property support
- Type-safe resolver registry
View source on GitHub
A focused test host for isolated-worker Azure Functions applications.
Stack: C#, .NET, Azure Functions
The reusable test host runs isolated-worker Azure Functions from a test project without requiring a deployed Functions host.
Architecture
- Test project
- Isolated worker test host
- Azure Function under test
Highlights
- Designed for isolated-worker Functions
- Small reusable testing utility
- Open source under the MIT license
View source on GitHub
A practical tracing and collector integration demonstration.
Stack: C#, .NET, OpenTelemetry, Azure Service Bus
An HTTP API publishes messages to the Azure Service Bus Emulator, where four consumers demonstrate distributed trace propagation.
Architecture
- HTTP API
- Azure Service Bus Emulator
- Four message consumers + Aspire dashboard
Highlights
- Distributed traces across asynchronous messaging
- Activity links versus parent context
- Docker Compose development environment
View source on GitHub
Career timeline
-
AND DigitalAssociate
-
NewDaySoftware Engineer
-
Checkout.comSoftware Engineer II
-
CodatSenior Software Engineer
-
NewDaySenior Software Engineer