I am a software developer, engineering coach, hands-on agile coach, community organizer for PhillyXP, blogger, and speaker with 18+ years of experience creating and delivering high quality software. I have specific expertise in:

  • Leading and coaching software teams
  • Mentoring developers
  • Improving development processes and practices for cross-functional development teams
  • Test Driven Development (TDD)
  • Microtesting
  • Agile / eXtreme Programming practices
  • Pair & Mob programming

I’m passionate about eXtreme Programming (XP) principles, Test-driven development (TDD), and pair programming. I am a strong believer in Software Craftsmanship and a lifelong student always trying to improve my craft. I believe code quality is not subjective or a matter of preference. I enjoy mentoring and coaching developers specifically about code quality, unit testing, and Test-driven development.

I graduated from Drexel University with a degree in Computer Science. I currently work for eMoney Advisor in Radnor, PA. You can learn more about me here.


30 Jan 2018 . development practices . SOS - To Save Sinking Test Suites Comments

I’ve often heard developers declare that unit testing doesn’t work only to discover a test suite full of complex, brittle, and unmaintainable tests. Fortunately, with a focus on readability and simplicity, bad test suites can be rehabbed, becoming accelerators for development teams. TDD Every time I discuss high-quality unit tests I also encourage practicing TDD. It prevents a significant number of issues that arise when developers try to cover bad code in tests. I am a firm believer that you cannot write good tests for bad code. Unfortunately, testing after the code is written, often…

View more posts


Here are a few projects I have worked on in my free time:

Improved iTunes Parser

A ruby iTunes library parser using Nokogiri.

Listening To

A .NET Web API app (using my Lastfm.NET library) with an AngularJS / Bootstrap front end. It displays the last 25 songs I’ve listened to as well as my top 25 artists.


A .NET client for the Last.fm REST API.

iTunes Library Parser

A C# implementation utilizing LINQ-to-XML. Parses an iTunes library file into a collection of track objects.

If you’d like to see some other things I’m working on you can view my github account.

  • {{track.Artist}}-{{track.Album}}


    Track: {{track.Name}}
    Album: {{track.Album}}
    Last Played: {{track.LastPlayed}}
  • {{track.Artist}}


    Rank: {{artist.Rank}}
    Play Count: {{artist.PlayCount}}
Music data courtesy of
Cannot connect to the Last.fm Service to access music data.
Check the Last.fm Status Site for more information.


Drop me a line if I can help your development organization, help you with your product, or you just want to talk about music!