Professional Profile

I am a senior analyst, software developer and project manager with twenty years commercial experience developing applications and MVPs.

I describe myself as: highly motivated, focused, driven, dedicated, pragmatic and technologically liberal.

Since 2010 my focus has been on JavaScript, initially using Node.js and in the last three years specialising in front-end frameworks such as Backbone, AngularJS and recently ReactJS. Currently I am passionate about Webpack, react-hot-loader and ES6 via Babel.

Along with my previous Ruby on Rails experience I’ve produced websites for the following industries:

  • Geographic Information Systems with Google Maps API and PostGIS.
  • Commercial media cataloguing and delivery (video, audio and images).
  • Online training and e-learning.
  • Content management systems.
  • Content integration websites that scrape data from Amazon.
  • Facebook Graph API integration using both the JavaScript and server side SDKs.
  • Community based websites where content can be freely edited with full revision tracking.
  • Custom forum and commenting system implementations.
  • Custom Google maps integration with custom tile sets.
  • Complex polymorphic object relation modelling with solutions that encompass BOM (Bill of Material modelling) and DAGs (Directed Acyclic Graph).

I am adept at source control and change management specifically using Git with the Gitflow methodology.

Technical Expertise

  • Ten years JavaScript. Experience using JavaScript on both servers (Node) and clients (ReactJS, AngularJS, Backbone, Boostrap, jQuery UI). Testing experience with Jasmine, Mocha and AngularJS Karma test runner.
  • Seven years Ruby on Rails. Experience with ERB, HAML, SASS and RSpec.
  • Ten years CSS – CSS2/CSS3 and Backbone.
  • Fourteen years Delphi experience using various client/server database backends, using OO methodology, principles of software reuse, design patterns and agile programming to achieve maintainable and efficient code.
  • Six months Java Android mobile development.
  • Three years PostgreSQL with two years PostGIS experience - PostgresSQL 9.4 with JSONB is currently my favorite RDBMS.
  • Eight years mySQL experience.
  • Eight years MSSQL development and DBA experience.
  • Five years Oracle PL/SQL development and DBA experience.
  • Five years Interbase and Firebird experience.
  • Ten years Linux administration experience in installing and configuring Apache, NginX, Postfix, mySQL, postgreSQL.

Achievements

  • Designed and developed Soapee, a soap lye calculator and recipe database for the soap making community. Implemented using ReactJS.
  • Project manager and technical lead for Clevertech. Developed a large GIS application using AngularJS and Google Maps Javascript API. This application is currently used by leading US telecoms providers to map over 100 billion geographical data points.
  • Lead developer for Harpua Inc. Developed PhilterIt, a Rails web application and Chrome extension. PhilterIt was covered by Mashable and TechCrunch amongst others. Designed and developed a scalable system architecture employing a custom Node reverse-proxy to load- balance web traffic, IMAP services and socket.io connections.
  • Senior Ruby/Javascript developer for Diddo. Developed Node based real-time chat server and JavaScript client components to enable group chat between Diddo users, GChat and Facebook Chat. Developed Asynchronous based photo and video upload processing backend.
  • Designed and developed Parlmnt, an AngularJS SPA backed by a service based Ruby on Rails application. Inspired by Reddit, parlmnt scraped legislative information from parliament.uk and allowed users to up/down vote and comment on each piece of legislation and legislators.
  • Designed and developed MediaCMS, a Ruby on Rails based application. This application consisted of over 50 tables that drove a media (video, audio and photo) based website. Features included: multiple flash based photo uploads, double entry accounting system to track and audit financial transactions, subscriptions, blogs, user creatable forums amongst other features.
  • Designed and developed RecipeTrees, a Ruby on Rails based application. Technologies to note: Facebook Graph API for single sign-on; deeply nested form updates; model based revision control (i.e. all previous object revisions are recorded); a DAG based model that linked similar ingredients.
  • Designed and developed YAPT, an Android 1.6 application that enabled Android mobile users to send and receive short audio messages between each other. YAPT included an efficient Push notification mechanism which at its height supported 3,000 concurrent and persistent connections.
  • Designed and developed Darkfallsage, a Ruby on Rails community driven site that interlinked many in-game objects with full object revision control. Also included a custom tile-set Google Map implementation that mapped in-game objects.
  • Designed and developed ProcSys, an Enterprise Resource Planning System. ProcSys managed an engineering project from budgeting, through to requisitioning, vendor biding, purchase order printing, GRN, Quality Control, Document Control and finally through to vendor invoice reconciliation. Employed sophisticated workflow mechanism. Size: 160,000 Lines of Code (700 forms), Delphi 5. Developed over three years.
  • Designed and developed SimplePop, a multi-user purchase ordering system which used Firebird. Size : 25,000 Lines of code, Delphi 4. Developed in six months.
  • Designed and developed Debtpro, a multi-user Interbase based credit management system aimed at mass debt collection service centres. Size : 35,000 Lines of code, Delphi 2. Developed in nine months.

Experience

2013 – Present : Clevertech

Project Manager / Technical Lead / Solutions Architect

  • Acted as a technical leader and managed a team of six developers.
  • Interfaced between clients and developers.
  • Mentored new project managers and junior developers.

2001 – 2013 : Panther Software Publishing Limited

Managing Director / Freelance Software Developer

Panther Software Publishing was my software development consultancy delivering bespoke web and desktop solutions. My clients included:

Harpua Inc – 1 year freelance

Lead developer and architect in developing PhilterIt, a Rails based application, with Node based service architecture and an additional Chrome browser extension.

Diddo – 6 months freelance

Developed MVP web application for investors. Developed real-time Node based chat application.

iSOFT PLC – 2 years freelance

Provide guidance and procedures on updating current source control, documentation and project management procedures. Developed high-availability services that processed HL7 messages for various health care applications that interfaced to Samsung and HP medical equipment. Deployed in several NHS Trusts.

Northgate Information Solutions – 9 months freelance

Updated Maxim3 to comply with SAP2005 BRE specifications that came into effect in April 2006. Maxim3 was a commercial tool used by building surveyors and contractors to assess dwelling energy requirements for statuary efficiency reporting.

Axsia Serck Baker – 4.5 years freelance

Long term project with Axsia Serck Baker in which all of their in-house MSSQL Client Server applications dealing with: procurement, document control, accounting and budget management were integrated into two enterprise level applications with centralised software distribution, security and access control.

1998 – 2001 : Interserve

Senior Analyst Programmer reporting to the IT Director

  • Maintaining day to day running of CFACS, an oracle 7.x based financial accounting system in reporting and generating queries for the Financial Department and Regional Finance Director.
  • Design and development of a multi-tiered application using Delphi 3 for importing data from over 100 remote sites for integration into CFACS.

Qualifications

B.Sc. In Computer Science from the University of Hull in 1995.

Hobbies

  • Astrophotography (and terrestrial photography).
  • Soap Making.
  • Cooking delicious food from around the world.
  • Hiking through woods, forests, beaches and mountains.
  • Gardening - but only when it is warm and sunny outside.
  • Brewing beer and wine but had to give that up because weight gain!

What I Would Do If I Had More Time

  • Spend much more time with my wife.
  • Get taught new games by Flossie, our Border Terrier.
  • Study Statistics.
  • Study Machine Learning then develop a music classifier based on track spectograms.
  • Develop a website that maps the Memetics Tree of Life.
  • Learn to speak Japanese.
  • Learn to make electronic music.

Favourite Books

Favourite Games