T.J. McNaboe - Software Developor
Trusted to join teams, tackle complex problems, and help figure out what comes next.
My experience spans startups, independent projects, and large enterprise environments, from working as the sole developer on a project to contributing as part of large, globally distributed teams. Along the way I've worked across different industries, technologies, and organizational structures, adapting to what each team and problem requires.
The common thread has been becoming part of the team, understanding the problem from more than one perspective, and contributing wherever I can make the greatest impact—not simply where the code happens to be. Explore my professional experience for a broader look at the engagements, organizations, and work that have shaped how I approach software.
At Exelon, I worked on the systems supporting residential utility service changes, where I learned to look beyond the development backlog and engage directly with stakeholders and business teams to understand the problems behind the requirements.
That approach led to several initiatives, including improving customer-to-service matching by approximately 25% and developing a SignalR / Azure Cosmos DB proof of concept to give call-center representatives visibility into a customer's online experience.
Outside of client engagements, I build software to explore ideas, solve recurring problems, and develop tools that I would want to use myself. My projects span reusable .NET libraries, application infrastructure, architectural prototypes, and code-first developer tooling.
These projects give me the opportunity to take an idea from concept through architecture and implementation without the constraints of a particular client or product. They are also a way to experiment with approaches to software design and share useful pieces of that work with other developers.
I built Exchange56.Metering as a practical backend engineering project focused on the kinds of challenges real SaaS and API platforms face: subscription enforcement, access control, and usage-based billing.
The library combines ASP.NET Core authorization, Orleans-based in-memory metering for high-throughput workloads, and asynchronous Stripe integration to demonstrate clean architecture, performance-minded design, and production-oriented engineering decisions.