Recent Projects

A SPA written with React, a Swagger REST API and NodeJS scripts, that queries SVN to get a log of changes and then displays this information in a sortable, filterable grid with a pre-filter form to allow faster searches.

A vast collection of scripts and HTML views that show:

  • number of tests passing/failing (for cucumber test projects run on a Jenkins server)
  • same, but grouped up by tags to allow aggregation across projects and split out by functional area
  • test history (google chart), all project total tests pie chart (google chart) and other charts
  • emails code review data and statistics
  • creates data and HTML for code defect 'heat maps' displayed as (D3) bubble-charts

Also: Cuke-JUnit
Simple utility written in JavaScript and running on NodeJS that converts between cucumber.json files and JUnit.xml.

A collection of small gists in Java:

A collection of small algorithm gists in JavaScript github

About Me

Designing and implementing architecture of all automated testing, across a range of technologies, including infrastructure, framework code and reporting (including a React app showing recent code changes across all client side technologies).

Massively expanding automated testing to cover all supported releases and to bring more technical and functional parts of the system under test.

Initially as Head of Automated Testing (June 2017-Nov. 2017) I established standards for all automated testing across different technologies, as well as setting up a new team of technically skilled automated testers.

Developed and implemented tools for measuring a range of quality indicators, such as defect density (heat maps) and automated testing results. A radiator app written using JavaScript and Node parses test results and generates bespoke views. These scripts also generate Crucible code review statistics as well as charts showing defect ‘heat’ (by combining incident data with SVN and GIT change history and laying this on top of D3 bubble charts generated from the code base). Code is stored in GIT on BitBucket.

Developed the automated testing standards, framework and infrastructure. Tests are run on Jenkins and are written using Cucumber, Scala and Java.

Worked on Groovy scripts to populate a DB2 database to provide data for automated testing on a system with an Angular front end and Scala business logic tier over a very large IBM DB2 legacy system.

Initially as Chief Production Architect (Sept. 2013 – Jan. 2014) I established and implemented a programme of improvements to the production processes.

Managed 6 teams (>60 individuals across Delphi, Java web & REST, client pack and software release). Oversaw delivery of Stocktrade to Brewin Dolphin. Established new client-side teams in other offices.

Team and project management. Recruited and trained graduates and experienced developers.

Managed functionality and design of applications, including refactoring of critical software.

Worked on a number of developments with the Front Office applications that provide Order Management, Trading and Enquiry functionality for the Figaro retail stockbroking system.

Technical Lead and architect for the London Underground (LU) RTS project to replace LU’s timetabling system. I prepared and presented the technical response, including estimating effort and mapping out work packages. The project was to replace and extend the timetable production system, through more than £6 million of development.

Managed work packages through to completion and demonstration to users and senior LU management.

Introduced continuous integration and automated testing.

Took over lead of Timetable Editor product.

Worked on various Timetable Editor improvements (Delphi client app with Oracle database).

I worked on a Delphi multi-tier client application on the Landmark system – a scheduling and revenue system for television advertising.

4GL and c programmer on an Ingres RDBMS system.

Major developments: Euro conversion, multi-language, multi-currency and Y2K.

(During this time, I took a 1-year sabbatical for a Round the World trip.)

Education and Training

When Level Insitution/Course Notes/Results
1992 - 1995 Aeronautical and Astronautical Engineering BEng Hons University of Southampton 3rd Year project: “Designing an Expert System for Corrosion Failure Analysis”. Written in Visual Basic. Also 2 units in Pascal, 2 units in C.
1990 - 1992 A Levels Saint Francis Xavier 6th Form College, London 3 A Levels: Maths (A), Physics (A), Chemistry (B)
Other training

Full Stack Web Development (2016, Coursera, Hong Kong University of Science and Technology).

Management Training (2012-2015).

Scala Coursera: Functional Programming Principles in Scala (July 2014).

Java SE 7 Programmer I (April 2014).

ISEB Software Testing (May 2011).

Appraisal for Team Leaders (September 2010).

Communication Coaching Skills (July 2010).

Effective Project Management (July 2010).

IOC Stockbroking Certificate (December 2009).

TAP Certificate in Training Delivery Skills (August 2009).

Team Leaders Course (2005).

ITIL Foundations (2005).

UML for Software Design (2005).

(First Aid - current).