Industry: Treasury management SaaS for global enterprises

Role: Head of DevOps, 2019 to 2022. Three years owning the infrastructure and delivery pipeline across 200+ enterprise tenants.

The platform was a treasury management product running on Azure for hundreds of enterprise customers, each on their own deployment with their own configuration. The work that mattered most was making that fleet operable at scale. I led the migration from Azure App Services and SQL into Azure Kubernetes Service with Helm and PostgreSQL Flexible Server, set up CI/CD in Azure DevOps for both cloud and on-prem clients, and built a custom Azure Bot that technical managers used to deploy to specific clients without going through the pipeline themselves.

On the multi-tenant side, I shipped patterns for both approaches the product needed (multi-database single web app, and shared-database multi-schema single web app), wrote a tool to provision and deploy multiple client schemas in one database, and ran the database CI/CD flow on dacpac and Microsoft Database Project.

Result: Deployments for 200+ tenants automated end to end. Move off long-lived VMs and onto containers. Hotfix and tagging cycles compressed from manual to scripted.

Stack: .NET, Azure DevOps, Azure Kubernetes Service, Helm, Azure SQL, PostgreSQL Flexible Server, Azure Functions, Azure Bot Service, dacpac, SonarQube, Veracode.