A very enthusiastic and adaptable professional interested in delivering quality software using agile approaches
Web Application Design and Programming using Ruby On Rails, Sinatra, Hanami and related technologies
Agile/XP practices including TDD/BDD, Continuous Integration/Deployment, Version Control (Git), refactoring, DRY, YAGNI
Web Application Design and Programming using ColdFusion, Fusebox 3
Kanban - Facilitator/Coach for retrospectives, estimation, planning, etc
Developing User Stories and Acceptance Criteria with stakeholders
Linux (Ubuntu), including Bind, SSL certs, Chef, Amazon EC2, cron
System VR4 System Administration (Sequent Dynix/PTX and SUNOS/Solaris)
TCP/IP network configuration and implementation
Korn and Bourne shell scripting
Mac OSX, Ubuntu, Windows
Scrum Certified Scrummaster (May '09)
Programming: Certified Advanced Cold Fusion 5.0 Developer
Professional Body: MBCS (Member of British Computer Society)
B.Sc. Degree: Mathematics (Honours) at University College London
GCSE A-Levels: Computer Science, Maths, Further Maths, Physics
Interests: Music, both listening and playing (Bass Guitar), Cinema, Dining, Travel, Diving
June 2015 - Present
Taking the 'nature' brand home page app from a skeleton proof of concept to a robust, reliable, fast, production service. Since this replaced a static html page, particular emphasis placed on relibility, the app will surivive backend outages by relying on cache and will survive cache outages by relying on the backend.
Coding 'Subject Pages' application (showing subjects across all journals). Application taken from scratch to launch.
Enhancing Beta Search application to include advanced search including filtering.
October 2011 - March 2015
New development and maintenance/enhancement coding in the LP Online team, supporting the applications providing the main content of the Lonely Planet website.
Integration of "Ultimate Lists" (from books applicaton) into main LP online Rails application.
Integration of news blog (Wordpress) data into main LP online Rails application.
Integration of "Need To Know" data (from books applicaton) into main LP online Rails application.
Development of background data pipeline in Ruby, pulling data from multiple partners and internal sources.
Redevelopment of legacy java applications (Hotels, Destinations) in Ruby On Rails
April 2009 - September 2011
Changed team from Scrum to Kanban on my own initiative, driven by wanting to make the team responsive to business demands, because scrum was not working well in a predominantly support and maintenance environment.
Fostered a Continuous Improvement culture by encouraging team to talk about pain-points and wishlist items on a regular basis and addressing those items within a week at the team meeting.
Negotiated for developers to have a 'google day', one day per month per developer on an activity of the developers choosing.
Running scrum team as Scrum master, both doing conventional scrum and then our own adaptations for a mixed maintenance/new development environment
Facilitating retrospectives (team meeting) often adapting our process as a result.
Advocating Agile principles (including Lean/Kanban/Scrum) both with the Team and the rest of the organisation
Promoting good development practices within the Team, including refactoring, BDD/TDD, Design Patterns, XP practices, etc
Used Agilezen to co-ordinate distributed team.
Continued as active developer alongside these activities
Adopted replacement technolgies where appropriate, e.g. Jenkins/Hudson (for Cruise Control), Confluence (for Mediawiki), Bundler and RVM (for in-house bundling solution) and Cucumber
Improved automation between Github, Lighthouse (ticketing) and Jenkins (CI)
April 2002 - April 2009
Supported and Maintenance for core business app including
Developed spike project (for new technologies and techniques) combining the freecycle functionality and ethos in a website not unlike an online auction site.
Re-development of core business application (Recruitment application)
Development of bespoke Recruitment website using Cold Fusion 5.0 with the Fusebox 3 framework.
January 2002 - March 2002
Personal development and training, including Cold Fusion Certification exam, Java refresher course and Java Server Pages (JSP).
April 2001 - December 2001
Development of Website and Content management system using Spectra.
April 2000 - March 2001
June 1999 - February 2000
August 1998 - June 1999
Use of XML for Web Content management, separating content from presentation, and so reducing maintenance overheads. Implemented at the server side using COLD FUSION (v.4) Custom Tags, thus deliverable to any web-browser, in contrast to some other XML approaches.
Additionally some exposure to: CSS, Perl, ASP and MS.Access
October 1997 - July 1998
Cycling in France, Thailand and Malaysia
June 1996 - September 1997
Design of Intranet Sales Reporting application using JAVA, JDBC, SQL, WEBLOGIC. Three-tier client server architecture, using Java APPLETS and APPLICATIONS and accessing Oracle databases.
Total Redesign of Departmental Website (Intranet). Use of HTML and graphical design using Paintshop Pro and Visual Reality 2.
January 1994 - June 1996
Rollout of new Operating System release to multiple Sequent Servers
Complete responsibility for network interfacing project, including network design, router configuration, hardware ordering and installation, problem diagnosis, using TCP/IP and DECNET protocols.
Development of Shell script application to manage and report on disk space.
Thorough documentation of projects using HTML.
June 1991 - January 1994
Installation, Maintenance and Support of Operating System Software (MVS/ESA) on large IBM mainframes (9021, 3090)
Integration of Third-party software into Operating System
Thorough documentation of projects using WORDS ONLINE, an hypertext repository.
Assembly Language Programming (IBM/370).
January 1990 - May 1991
Key Activities: Similar to Reuters (above) providing services to Company Clients.
May 1988 - January 1990
Key Activities: Similar to Reuters (above)
January 1987 - April 1998
Disaster Recovery Planning
IBM Mainframe Security Project
Editing "Data Centre Profile", a standards and procedures document, some sections authored by myself.
Problem and Change Management Project
October 1983 - December 1986
Engineering Program Development in FORTRAN.
October 1977 - September 1983
Engineering Program Development in FORTRAN.
July 1973 - August 1974
Development of programs (high level languages and assembler) in support of the company's hardware products
Electronic Hardware diagnosis.