Programming Languages

C++/CLI, C#,, Powershell, Bash, Javascript

Markup Languages



.net 4.7+,, Entity Framework, .net core 2.2+, Windows Forms, Xamarin


Azure, AWS


CI/CD, Release Management, Azure Devops (VSTS), ELK stack, Prometheus


Docker, Kubernetes


Home Assistant, Z-Wave, Zigbee

Everything else…

Jira, Confluence, git, PlantUML


March 2019 – Present

Technical Architect

The Lead Agency

The Technical Architect role was created to take responsibility for system architecture, code quality and development process across the TLA development teams.

  • Managing, coaching and training team members of all levels.
  • Systems architecture, ensuring all future designs are consistent in approach and quality.
  • Technology Selection, including ownership of the Tech Radar.
  • Promoting self-improvement, such as via brown bag lunches.
  • Line Management of all intern and junior staff within the busines, mentoring them and teaching them good practices.
July 2017 – March 2019

Engagement Team Manager

The Lead Agency

The engagement team was tasked with building and maintaining user-facing sites like, and, as well as the publisher systems, marketing systems, property valuation tools and more.

  • Managing, coaching and training team members of all levels.
  • Building, architecting and delivering major projects using a variety of cutting edge. technology, such as Containers, Machine-Learning etc.
  • Organizing and running open days and giving presentations to local tech groups, extending the brand awareness of the company.
  • Deprecating older legacy tech in favour of modern solutions using Umbraco, rearchitecting our cloud approach and migrating from on-premise TFS to VSTS (Now Azure DevOps).
October 2016 – July 2017

Senior Developer


  • Working on major client sites, such as Virgin Trains East Coast (now LNER) and Childline.
  • Heavy use of 4.5
  • Dealing directly with clients to scope out existing and future work.
  • Tying into CRM systems, such as Dymanics
  • Tying into contact systems such as Genesys
July 2011 – September 2016

Development Team Manager

ICC Solutions

Responsibilities include:

  • Updating, supporting and maintaining software solutions and new systems.
  • Provided systems maintenance and support.
  • Guided developers to employ better working practices; clean up our stagnant codebase; work together more efficiently and implement the systems required to manage all of the above.
  • Using legacy applications written in C++ with MFC all the way up to various .net programs written in, C# and C++/CLI.
  • Migrated the code base from SVN to git; Set up continuous integration using TFS Set up an internal issue tracking system (JIRA) and put processes in place for agile development workflows (including spearheading the introduction of a QA team/process); Set up an internal documentation system (Confluence); Created file upload portal using NancyFx with Razor views and RESTful backend systems using core and MVC 6; Merged previously-forked codebases into a singular codebase, then began migrating fragmented codebases to a consistent codebase built with C# using an N-tier architectural design.

Recent Posts