A small set of recent engagements I can share publicly. Case studies first, then the patterns I lean on across them. For more detail or named references, get in touch.
End-to-end greenfield multi-tenant POS SaaS on .NET. Tech lead across backend, frontend, cloud, and DevOps.
Modular monolith on .NET running in Azure. Principal engineer responsible for features and the patterns those features sit on.
Lead Software Engineer on a microservices SaaS for measuring and reducing employee cybersecurity risk.
Head of DevOps on a treasury management SaaS deployed to 200+ enterprise tenants on Azure.
How I work.
The patterns behind the engagements
Architecture for SaaS that has to scale.
I take the same problem twice. First, what shape does the platform need to ship the next eighteen months. Second, what shape does it need to ship the eighteen months after that.
Modular monolith, microservices, hybrid. I pick the smallest shape that gets you both, and I document the seams that let the next engineer move it.
Patterns the team actually uses.
The vertical slice template. The override system that lets a tenant ship a behavioral variant without forking the base code. The workflow engine for long-running operations like payment and activation. The Roslyn analyzers that block the conventions from drifting at compile time.
The patterns are how the team ships features without rewriting the platform every quarter.
Multi-tenancy without the surprises.
Database-per-tenant, shared-schema multi-tenant, or shared-database multi-schema. Each one comes with different operational costs. I have shipped all three in production and can tell you what each one costs at fifty tenants, two hundred, a thousand.
The onboarding flow matters more than the choice. Adding a new tenant should kick off a saga, not a runbook.
DevOps that delivers, not just deploys.
Terraform for the infra. Azure DevOps or GitHub Actions for the pipelines. Azure Container Apps or AKS for runtime.
The boring infra is the boring infra. The work is in the patterns the team uses to ship features through it without breaking the build.
Let's build something.
If you have a platform that needs the architecture sorted out, a team that needs help shipping faster, or a brief I should know about, I'd love to hear about it.
Get in touch