With over 20 years of experience I have a lot to offer.

Jul 2022 - Present | Digiterre Consultant Developer

Uniper - PPA Model Valuation Desktop

Germany - Fully Remote

As a Digiterre consultant I am currently team lead and full-stack developer on a project at Uniper aimed at creating a system to handle the inputs necessary for operating Unipers Power Price Agreement valuation models related to renewable energies. This system also involves visualizing and analysing the timeseries outputs generated by these models.

Our team was assigned the responsibility of re-writing the system as the prior version of the application was unable to meet the business requirements. Our team successfully accomplished this mandate and made significant improvements in the performance of the key functional areas of the application, enhancing performance by an order of magnitude.

Angular, TypeScript, SignalR, C#, Asp.NET Core, Azure CosmosDb

Jan 2022 - Jul 2022

Clifford Chance - Partner Remuneration System

London, UK - Fully Remote

I was brought in to Clifford Chance to offer technical and architectural guidance and input to an existing team of developers. Our primary objective was to upgrade the technology of an existing Partner system that was utilized for managing global partner remuneration in various tax regions taking into consideration many different country specific tax rules.

As a team, we improved the performance of the application while also incorporating industry best practices to enhance the code quality and design.

Angular, C#, Asp.NET Core, Azure SQL Server

Jul 2021 - Nov 2021 | Digiterre Consultant Developer

Anglo American - Live Exposure Reporting Tool

London, UK - Fully Remote

As a Digiterre consultant I filled the role of full-stack deveoper on a team building intraday reporting functionality for traders at Anglo American. Traders could use the tool to access exposure data and it was created to facilitate filtering by date, pivoting, and delving into book, strategy, and trade-level data.

The complexity of the project lay in managing large working datasets that contained multiple reporting dimensions, and handling regularly changing data. Daily trades were broadcast to the user interface in real-time using SignalR, and traders had the choice to pause the feed and investigate the data as a snapshot in time.

Angular, TypeScript, C#, Asp.NET Core, SignalR and Azure SQL Synapse

2017 - 2021 | CodeStream Consultant Developer

The SPAR Group - DataLake and Reporting System

Durban, South Africa

This project involved various disparate legacy data storage systems from which operational data was sourced and replicated into a central modernized data lake using Azure SQL Server. In addition, API endpoints were built using C# and Asp.Net WebApi to provide a reporting and data investigation capability to business on top of which rich and useful applications can be built by the business. The DataLake is now being migrated to Azure to leverage various cloud platform technologies and services such as Azure Data Factory and Azure Synaspe.

The SPAR Group - Store & Vendor Master Data Systems

Durban, South Africa

These master data applications are highly distributed across multiple core backend enterprise systems such as SAP, iSeries/AS400 and custom SQL Server databases. Technologies such as IBM Process Server & Integration Bus are used to co-ordinate messaging and workflow across the various backend system boundaries. The user interface was developed using Angular and integrates directly with numerous .NET & SAP Api’s. I played an integral role in co-ordinating the various development teams and managing sprint work as well as development of the user interfaces and .NET Api’s.

Various Other Contracts

Fully remote from Durban, South Africa

I've built the Back-End API's for Veridot's OEM system, enabling them to move from their legacy system to a new highly functional system for tracking the Micro-dotting of vehicles in South Africa. I also managed the migration of the solution to Azure proving Veridot with a fully managed Azure hosted solution.

I've worked remotely on a live data processing system for Chelsea Football Club in the UK, recieving, analyzing and processing player GPS, acceleration and speed data being fed live into an Azure processing pipeline using Azure EventHub, Azure Functions and Azure Sql Server.

I've worked remotely for CashRewards in Australia building their new Customer Coupon Management site using Angular.

I've worked remotely for a PROFiltr in the UK bringing their online solution for small bookkeeping companies together with potential clients to completion using AngualrJS, NodeJS and MongoDB

I've provided ongoing support and further development of SMEasy (see previous poisition as CTO at SMEasy)

2015 - 2017

SMEasy - Chief Technical Officer

Durban, South Africa

I worked as CTO of SMEasy, coordinating and managing all technical aspects of this exciting online accounting package startup for small to medium sized enterprises. My role was multi-faceted and included the following:

  • Providing key technical insight to the SMEasy board in order to aid them in strategic decision making.
  • Overall technical leadership and guidance of the SMEasy product
  • Further development of product offerings
  • Managing and leading development resources and outside contractors
  • System architecture and development
  • Process re-engineering & new technology investment

2011 - 2015 Consultant Developer @ Digiterre

M & G Investments - Consulting

London, UK

I worked with four other Digiterre consultants at M & G Investments. Our mandate was to introduce agile practices into the development team at M & G. We incorporated Continuous integration into the development cycle, automated unit, integration and acceptance tests as well as automated application deployment and database deployment in all environments. We were also responsible for working closely with M & G developers in a coaching and mentoring capacity to teach new skills and impart accepted industry patterns and practices and design principles.

EDF Trading - Master Data Management

London, UK

I worked on a small team of four developers in a highly agile fashion developing a small Master Data Management system and an Initial Margins tool used to calculate initial margins on all EDF Trading energy positions which would then be reconciled with the initial margin positions as specified by the clearing houses. The application wrapped a third party tool which performed the calculations and facilitated an automated process whereby input data from EDF systems was loaded on a daily basis and initial margin reports were automatically generated for the business to reconcile.

EON - Pricing Tool

London, UK

I worked primarily as the team lead on a large project for an EON Energy Trading developing a Transfer Pricing management tool. The project team was spread over London, Dusseldorf and India and required strong coordination and communication to keep the project on track. In the last two years we have brought this project to completion and are now in the process of handing it over for support and maintenance to an outsourced provider chosen by the EON.

The solution we provided made use of Oracle, server side service components and a WPF user interface. The system worked on large sets of data output by models and involved a series of calculations and data manipulation in order to output the required reports and data analysis required by the business.

2010 - 2011

MAN Investments - System Integration / Fx / Fund Accounting / Fee Calculation

London, UK

I worked in a geographically distributed team on systems integration of multiple disparate applications in the middle office of the worlds largest Fund of funds. The development team facilitated systems communication between various data sources and applications using a variety of request/response and publish/subscribe messaging solutions built on Oracle weblogic / MSMQ and a custom in-house message bus.

The team used SCRUM to run and manage month long sprints. SCRUM teams were located in different offices and communication was paramount to successfully completing work. Part of the teams mandate was to introduce in increasing measures the principles of Agile development, increase the test coverage of the code base and strongly push the ethos of TDD.

I have worked on various different systems including middle office fund accounting, Fee calculation, Foreign Exchange and Trade planning.

2009 - 2010

Brit Insurance - Online Policy Management System

London, UK

I worked on a team of eight developing an online policy management system enabling BritInsurance to manage insurance sold through their network of brokers. The system was loosely coupled employing a publish/subscribe messaging model implemented with NServiceBus to achieve decoupling of logically separate components, high availability and reduce dependencies on other systems.

The team worked in an agile fashion using a continuous integration environment (Team City) alongside unit and integration testing and automated deployment to provide timely feedback to developers on the health of the codebase as a whole. A Kanban board was used to monitor and manage the project’s progress and the team operated in a self-managing style with emphasis on distribution of system knowledge among the whole team and each member taking responsibility for the whole system.

2008 - 2009

Freshfields Bruckhaus Derringer - Contact & event management

London, UK

I worked on a team developing a contact and event management system for the management of business contacts and targeted communications with specific groupings of contacts about business events and full life-cycle tracking of those events. The application was developed using ASP.NET MVC and jQuery for client-side asynchronous UI updates.

Freshfields Bruckhaus Derringer - Budgeting Management Tool

London, UK

I worked as part of large team developing a budgeting application for the firms internal budgeting and cost monitoring of matters. The application was a web based tool relying on data from disparate systems from finance to firm control work management systems. Users of the system would budget costs of estimated work catering for different partners, fee-earners and other resources at different exchange rates. The budget was then eventually compared against actual outcomes of work done on a matter and various reports were available to help monitor the progress of a budget.

Older experience available on request.