About Me

Full Stack Developer with a background in IT Operations.

I enjoy picking up new hobbies, learning new things, and finding novel solutions to problems. Having worked on as many legacy projects as I have new, I've developed an appreciation for readable, maintainable, and reusable code. Even if it takes a couple extra lines, I try to make it clear what a given piece of code does.

My philosophy around code continues to change, but at the moment it can be summed up as:
  1. Do one thing and do it well. To the extent that is possible, a class or method should focus on doing just one "thing", and that thing should (ideally) be evident by its name.
  2. When working on an existing codebase, the style and conventions of new code added to the project should match the existing code.
  3. Legacy code often lacks newer language features and optimizations, but is battle-tested. That has significant value.

What I Do

My focus has been web development and APIs, but I also write a lot of console applications and dabble in mobile.

  • C# and VB.NET are some my favorites and I have worked in VBScript, ColdFusion, Java, Python, PHP, Ruby, and Node.
  • Great with SQL having used SQL Server, MySQL, and Oracle.
  • Confident with HTML 5, CSS 3 (including Bootstrap), JavaScript (including working with AJAX and JQuery).
  • Systems experience including Windows, Linux/Unix, and Azure.
  • Project management and supervisory experience.

Past Experience

Types of projects I've worked on recently...

Microservices, APIs, and Data

I have completed projects both reading from and writing to APIs (preferably REST), providing my own APIs, and enjoy finding my way through large datasets. From using LINQ in .NET to QoQ in ColdFusion, I routinely use Fiddler, Postman, and WireShark to solve problems.


Configuring and deploying new VMs, working with Storage Accounts and File Shares, Key Vaults, App Services, and dealing with SQL VMs and Managed Instances are all common tasks. I have worked with clients to migrate existing on-premesis applications to Azure IaaS as well as developing new solutions for deployments using PaaS offerings.

Leveraging .NET in Classic ASP

Using COM and .NET I was able to implement functionality in a Classic ASP application that did not previously exist. That functionality incudes generating PDFs, handling time zones and time conversions, and reading and writing Excel documents using NPOI. This allowed the firm to breathe new life into a legacy application.

Multithreaded Applications

I enjoy concurrent programming and have used both Tasks and Parallel in several projects to significantly increase the speed of various applications.


For more information or for a copy of my resume, please feel free to reach out!