Software architect and developer specializing in .Net

Based in Brooklyn, NY, USA


  • S.O.L.I.D Principles
  • Build and Deployment Automation
  • System Architecture Planning
  • Evolving Architectures
  • Agile Practices
  • Test-Driven Development
  • Domain-Driven Development
  • Continuous Delivery
  • Continuous Integration
  • Branching Strategies
  • Data Processing
  • High Traffic Management
  • Inversion of Control (IoC)
  • RESTful Services


  • C# 1.3, 2.0, 3.0, 3.5, 4.0
  • ASP.Net MVC 3, 4
  • CSS
  • MSBuild
  • Powershell 1.0-3.0
  • TeamCity 7, 8
  • Javascript
  • Amazon EC2
  • Amazon S3
  • Windows Azure Websites
  • Windows Azure Storage
  • Windows Azure Web Jobs
  • MS SQL 2000, 2005, 2008
  • Nuget
  • Chef
  • Chocolatey
  • Silverlight 2, 3, 4
  • SOAP
  • Nancy
  • Knockout JS
  • Bootstrap JS
  • Ninject
  • NHibernate
  • RavenDb
  • Lucene.Net
  • Git



Chocolatey-like console application for downloading and installing software to a client PC.

Uses the Nuget protocol to cleverly install and configure websites, windows services and any other Nuget package.

Deployment 'hooks' allow for custom operations during pre- and post- install phases.

Operations Monitor Service

Windows service with an embedded Web UI which:

  • Allows the customer service team to locate a specific error across the entire JustGiving server farm, based on a caller's name, email or their error reference
  • Allows the development team to then debug the specific problem and produce a fix within minutes
  • Provides real-time statistics of all errors across the server farm for the operations team to monitor
  • Charts historic statistics of errors across the server farm

Funds Management System

Set of Windows services which:

  • Propagates changes to domain entity data to various JustGiving datacentres
  • Reconciles settlement data provided by payment gateways and updates corresponding JustGiving payment records

Release Process

Implemented a complete end-to-end release process:

  • Continuous integration with tests using TeamCity and MsBuild
  • Automated deployment process - time taking to release to all servers reduced from 1-2 days to less than 1 hour
  • Reduced the risk of a failed release from more than 50% to 0%
  • Increased the predictability of a release by implementing new development and testing guidelines

CMS Delivery

Provided a content management system for JustGiving:

  • Performed a detailed cost-benefit analysis of various CMS products
  • Installed and configured Microsoft's Orchard CMS system
  • Trained developers and marketing team members in the use of the CMS
  • Marketing team are now completely self-sufficient and can update website copy without delay


In 2011 I replaced the existing Microsoft SQL Full-Text search with a Lucene.Net implementation. Search is now way better.

Smart Automobile

Smart Cover Creator

In 2012 I created a web service for car manufacturer Smart Automobile which creates a mosaic image from the images stored in a user's Facebook photo feed. The service makes use of several methods to increase performance such as threading and manipulating bitmap data using unmanaged code. Generating a mosaic image from hundreds of input images takes only a few seconds.

Smart Cover Creator

Tequila London

Digital Wall 1.0

The digital wall is a collaborative web art project.

Watch video for more details:

Digital Wall 2.0

The second incarnation of the digital wall.

Digital Wall version 2

Canon Europe - Translation Tool

Web application which allows Canon's marketing team to update copy and translations across their Europe microsites.

Canon Translation Tool

Canon Europe - Create*

Canon Create

"Create" is a web application which allows Canon distributors across Europe to create and customise marketing assets.

What A Find -

E-commerce website for UK company What A Find, which markets reconditioned furniture at discount prices. The store uses an implementation of ASP.Net Storefront with a custom theme.

What a Find homepage