Git, Subversion, CVS, IBM Configuration Management Version Control (CMVC)
Emerging technologies, TDD and development environments, systems administration and agile development practices.
Projects
The key projects I have worked on over the past few years are detailed below.
http://www.edinburgh-flats.com Worked as the lead developer to produce a self-catering advertisement service for flats in Edinburgh, Scotland.
Wrote a content management system which has been widely deployed to a number of websites.
Developed an extranet for a fish vaccination company based in Scotland and Norway (Lofoten). They are responsible for vaccinating millions of fish in both countries. The datastructure and business logic was fairly complex.
Document management and collaboration system utilising the DITA XML standard for technical writers.
Development of an internal video publishing platform, utilising Amazon web services. (CMS integrated with the open source video platform Panda.)
Developed a Project Management tool for Tyco Fire Suppression and Building products. An example of a project where TDD and good communication of requirements resulted in a stable production application developed in a short timeframe.
Developed a fund management (investment portfolio) tool which was customised for bespoke applications for Prudential, Norwich Union and Scottish Widows banking institutions. Prudential Link
http://www.nopesport.com - a community site for orienteering. This has grown from a little bit of fun to a very popular high traffic portal website. We have a thriving forum and a group of reporters which work with to cover the goings on.
http://www.oentries.com - an online event entry service which I run. Essentially a web application which all the challenges which occur in this domain.
Currently run a technology consulting business that provides web application development and design services.
(January 2007 - October 2009) Lead Developer - Iformis Ltd
I worked on a number of diverse projects and lead a team of 4 developers. The job was also client facing and I attended meetings to communicate complex ideas in a simple manner.
(December 2003 - December 2006) Web Programmer - Mercurytide Ltd
Began as a junior developer and progressed into a System Architect role.
(October 2002 - May 2003) Computing Lab Demonstrator - Edinburgh University
This position involved tutoring first year students with their programming assignments. I would talk to students about their programming problems and help them to solve them. I tried to make the students work for the solution rather than just telling them the line of code which would solve their particular problem.
(June 2002 - October 2002) Software Engineer - IBM
This mainly involved java programming in a websphere environment. I learnt a lot about working as a software developer, in terms of realistically estimating how long things are going to take and not giving unrealistic timescales. I learnt about tools such as ant, javascript, css, AIX, apache and Windows Server Edition with RAID configuration was also used. I also learnt some valuable system admin skills.
I gained a few industry contacts from this which lead to an exciting final year project at university with an opening to do a PhD at the end of it. I decided to give this a miss and move into Industry rather than staying in academia.
(November 2001 - June 2003) Computer Assistant - Edinburgh University
This involved the manning of a microlab and was a 'classic' IT role. I would deal with people and their technology problems and questions. I also maintained a small library and video hire service. Sometimes the job was very quiet so this allowed me to program university coursework.
(May 1999 - October 1999) Assistant Computing Manager, Highland '99 - Scottish Orienteering Association
This job involved helping to coordinate the computing for a multiday orienteering event for 4000 competitors. I was in charge of developing and
maintaining the website. Another memorable part of the job was working with the event management software and developing it further
as it was in the early stages of development and we unearthed a number of bugs when scaling it to work with 4000 people.
This position involved stacking shelves in the fresh section of a small Safeway in Inverness. It was a part-time position which enabled me to buy my first snowboard.