Professional Summary
Over 15 years of progressive experience as a full-stack developer, with very strong DevOps and Cloud expertise. Proven track record of modernizing enterprise infrastructure, delivering working software, mitigating technical debt, and designing robust CI/CD pipelines. Highly adaptable technical leader with consistent success driving cross-functional Agile/Scrum teams. Proficient with a broad diversity of full-stack technologies, but most notably C#.NET, JavaScript/TypeScript, React, and SQL Server.
Professional Experience
Technical Lead, Full-Stack Development
Abrams Software Kingston, Ontario - Remote August 2025 - Present
- Train Large Language Models (LLM) in all aspects of development for large clients such as DataAnnotation.tech; evaluate code generation by applying expert code review combined with comprehensive unit testing. (JavaScript, TypeScript, .NET (C#), Python, React, SQL, REST, Jest, Vitest, Node.js, Next.js)
- Develop specialized chess training software integrated with Lichess.org API to help visualize board control and checkmating patterns. (React.js, TypeScript, OAuth2, REST)
Lead DevOps Engineer, Infrastructure and Cloud Enablement
Employment and Social Development Canada (BDM Project) Gatineau, Quebec December 2021 - July 2025
- Enhanced and maintained microservices-architecture application for onboarding personnel; integrated with enterprise IAM in Azure AD and Azure DevOps mirrored in Entra (C# .NET, Blazor, HTML/CSS, Azure Logic Apps, Azure SQL, APIM, GraphQL).
- Implemented CI/CD pipelines in ADO for build, test, and cloud deployments. Supported and advised other teams on pipeline implementation and management. (PowerShell, YAML).
- Developed custom ADO web extension applications (TypeScript, React) -- analytics widget for build/deploy metrics; Team Calendar leveraging sprint/iteration data.
- Administered Azure DevOps Services for all teams in the BDM project; advised on Agile process templates, branching strategies, PR workflows, and WCAG accessibility compliance.
- Implemented ITSG-33 (NIST-based) security controls for SA&A submissions against a PBMM security profile.
Development Lead, Testing Services
Employment and Social Development Canada Gatineau, Quebec August 2019 - November 2021
- Engineered ADO pipelines for automated testing, provisioning agent machines to execute parallel Selenium UI tests and seamlessly integrating logged test results back into ADO.
- Co-architected an internal web application enabling QA staff to author structured test scenarios via a web UI; designed the database schema and developed the C# code bridging the application with ADO.
- Championed the departmental transition from LoadRunner to JMeter, significantly reducing licensing costs.
Team Lead / Technical Lead
Department of Immigration, Refugees, and Citizenship Canada Ottawa, Ontario April 2018 - August 2019
- Directed daily stand-ups and poker planning estimation sessions. Pioneered capacity planning and forecasting methodologies using Azure DevOps Server (TFS).
- Mentored full-stack developers in SSRS, T-SQL, C#.NET, and automated testing.
- Managed departmental TFS instances and maintained heavily customized Agile, Scrum, and CMMI process templates. Built custom web extensions using React.js, Node.js, TypeScript/JavaScript, and C#.
Development Lead
Department of Justice Canada Ottawa, Ontario January 2016 - March 2018
- Led enhancement and maintenance of the departmental case management system -- a high availability web application serving thousands of accounts across the country (ASP.Net, C#, SQL, JavaScript, HTML, CSS).
- Mentored junior developers and integrated code review processes with TFS work items.
- Engineered MS Dynamics CRM plug-ins, custom actions, and processes; migrated legacy SQL stored procedures to the new CRM environment using C# and LINQ.
Senior DevOps & ALM Engineer
Department of Citizenship and Immigration Canada Ottawa, Ontario April 2014 - December 2015
- Transitioned the department from manual, UI-based release procedures to fully automated CI/CD workflows.
- Slashed technical debt by replacing over-engineered legacy C# desktop applications with lightweight PowerShell scripts using the TFS Client APIs.
- Guided development teams in migrating from legacy XAML builds to modern, scriptable build definitions.
Full-Stack .NET Developer / SDET
Department of Justice Canada Ottawa, Ontario October 2006 - March 2014
- Core contributor to the flagship Legal Case Management System used by 5,000+ lawyers and agents across Canada.
- Modernized the CMS with a widget-based interface using Knockout.js and ASP.NET, reducing server load.
- Diagnosed a COM Interop memory leak across 11 servers and implemented automated health monitoring.
- Architected a custom Java-based test framework that reduced release validation time by 98% (80 person-weeks to 5 person-days), saving an estimated $160,000 per release cycle.
Education & Certifications