An attendance tracker for adult rec hockey teams. Players tap In, Maybe or Out for each game, and captains see bench numbers, goalie coverage and the forward/D lineup at a glance. Schedules and final scores sync daily from the ASHL's public API. Multi-team, installable as a PWA, with a PHP 8.4 + MySQL API featuring hashed team PINs, HMAC-signed cookies and a self-migrating schema. Demo PIN: 1234
Open to new opportunities
Hi, I'm Thomas Coleman.
I build easy-to-use solutions for complex problems.
Senior software developer with 5+ years building high-performance C#/.NET backend services, REST APIs and enterprise decision-analytics software at Copperleaf. I modernize legacy systems, raise the bar on automated testing, and use AI-driven tools like Claude Code and Cursor to ship faster without cutting corners. I'm looking for my next senior or intermediate engineering role on a team that values craft and ownership.
About me
I'm a software developer who enjoys the whole lifecycle of a feature: understanding the problem, designing a clean solution, writing well-tested code, and seeing it land with real users.
At Copperleaf I spent nearly six years building enterprise software that helps utilities and infrastructure organizations like Enbridge and Network Rail plan multi-million-dollar investments, work where correctness, performance and clarity really matter. Along the way I helped grow the team by leading technical interviews and onboarding new engineers.
Lately I've been going deep on AI-assisted engineering: building agentic workflows with Claude and MCP connectors, and using Claude Code, Cursor and Copilot to move faster while keeping quality high.
Outside of work, I'm raising two kids, playing beer-league hockey, and keeping a 3D printer busy. I'm also a lifelong gamer, from tabletop RPGs and Magic: The Gathering to video games, and I'm usually partway through a fantasy or sci-fi novel.
Experience
-
Copperleaf
- Senior Software Developer Jan 2025 — Dec 2025
- Software Developer May 2020 — Dec 2024
Enterprise decision-analytics software for asset investment planning, used by utilities and infrastructure organizations worldwide.
- Converted from a one-year contract to full-time within four months (Sept 2020).
- Accelerated delivery for Enbridge by refactoring and modernizing a legacy framework that external contractors had struggled to stabilize for nearly two years, completing complex model changes within a single sprint.
- Delivered Network Rail's "WireRuns" model 45% under the client's estimated budget and 18% under internal senior-level benchmarks.
- Developed and maintained core frameworks using C# business logic and YAML-based configuration to support enterprise-level decision analytics.
- Authored and optimized SQL scripts for Oracle databases, ensuring data integrity during critical system updates for global infrastructure clients.
- Standardized testing by introducing automated unit tests (NUnit, AutoFixture), increasing code coverage and reducing manual QA cycles.
- Led technical interviews and onboarded new engineering hires, contributing to a 20% increase in team capacity.
- Worked directly with customers to design and implement complex financial models that received high stakeholder approval.
-
Software Developer in Test (Co-op) @ NetApp
- Developed automated test suites using Ruby, Cucumber and Selenium for the StorageGRID product, covering feature validation and regression testing.
-
Software Developer (Co-op) @ Move Canada
- Built and optimized backend services and internal tools using JavaScript and Node.js.
- Validated REST endpoints with Postman and used SQL to troubleshoot customer configuration issues.
- Worked in a 10-person Scrum team; extended for an additional work term based on productivity and impact.
-
Software Developer (Contract) @ Copperleaf
- Built technical prototypes in Java and PostgreSQL to optimize asset bundling and survey frequency.
- Used QGIS and PostGIS to visualize and analyze spatial data and business risk models.
Projects
A few things I've built outside of work.
Multi-Tenant SaaS API
An ASP.NET Core Web API with shared-schema multi-tenancy. Tenant isolation is enforced centrally with EF Core global query filters and write validation that fails closed. Keycloak (OIDC) provides role-based access control, with a React/TypeScript tenant console using Authorization Code + PKCE, all run in Docker Compose.
Fire & Life Safety Business Website
A responsive marketing site for a restaurant fire-suppression services company. I designed and built it end to end, including the logo and branding assets, plus a Formspree-backed contact form that works on any host with no server configuration.
AI-Powered Job Search Automation
An agentic daily workflow built on Claude scheduled tasks and MCP connectors (Indeed, Google Drive). It filters and prioritizes postings, de-duplicates them against a Google Sheets tracker, and drafts tailored résumés and cover letters.
Daycare Waitlist Manager
A waitlist system with separate portals for parents and daycares, including position tracking and automatic matching of families to the closest daycare. Backed by a Node.js/Express REST API with bcrypt password hashing.
Home Asset Tracker
A full-stack CRUD app for cataloguing household assets: purchase details, serial numbers, locations and warranties, with automatic warnings before a warranty expires. Includes search, category filtering and an Express REST API.
Skills
Languages
Frameworks & Libraries
Databases
Testing & QA
Tools & Practices
AI & Automation
Education
Bachelor of Science, Computer Science
University of British Columbia · Co-operative Education Program
Let's talk
I'm currently exploring new roles. Whether you're hiring, have a question, or just want to connect, my inbox is open.