Back End PHP and JavaScript Developer London £425/day Years of experience: 15+ Latest contract: Senior Developer, Communications Agency

I have been working on web applications since 2000, and have been using PHP and MySQL continuously since 2004. I am expert in object-oriented programming, and have built my own system architectures and frameworks. I have also worked extensively with packaged frameworks including 2, Zend Framework 1 and CodeIgniter. I am SC cleared for Government work as of April 2015.

Main Skills (expert): PHP, LAMP, Symfony 2, Behat, PHPUnit, PHPSpec, Zend, CodeIgniter, MySql, Apache, Subversion, Git, Javascript, Jquery, Ajax, HTML, CSS, Ruby, HAML, Secondary skills (experience limited or some years ago): Rails, Sinatra, Wordpress, Concrete 5, Python, Perl, Java, Linux Administration, Nginx, Moodle, AngularJS

Contracts History

August 2015 – Present Senior Web developer Comunications Agency

I worked on a corporate course administration system based on Moodle. I developed new plugins for administering users, wrote new code for importing users and generated management information reports. I wrote unit tested code whenever practical.

PHP5, Moodle, PhpUnit, MySQL, Solr

May 2003 – present System Architect/Applications Developer Government Body

An interactive site developed by a journalist and a sociologist, which promotes a model of political typology. I took over as programmer of the site in 2003, and entirely re-wrote it in object-oriented PHP (it was originally in Perl). I improved the framework to make it maintainable and more efficient. I developed a new product in Flash (a certificate which users can order online, pay for by credit card and load in the browser). I produced new graphics using Fireworks, and improved the interactive graphics using GD.

At the beginning of 2015 I re-engineered the entire site using Ruby/Sinatra, with a full suite of Cucumber tests and served on Nginx. I replaced the original Flash certificate product with a generated pdf available for the user to download.

PHP5, GD, Facebook, MySQL, seo, google adsense, amazon associates, Ruby, Rspec, Cucumber, Sinatra, Nginx, ImageMagick, prawn

February – June 2015 Web developer Government Body

I worked on two projects here.

One was an alpha for a new system for administering detention centres. It consisted of a web dashboard and an API endpoint for updating the data. Updates were displayed live in the dashboard without the need to refresh the page (using websockets). The server was built in NodeJs with Jade templating and tested with Mocha and Behat.

The other was the Registered Traveller programme. This is a public facing website and a caseworking system for internal use. Technologies included Scala, Mongodb and Cucumber. I was involved in writing automated tests for the public facing pages using Cucumber/Capybara/, and in extending the unit tests using Scalatest.

NodeJs, Jade, Mocha, SocketsIo, Scala, Play Framework, Cucumber, Selenium, Capybara, Ruby, Behat, Mongodb, Docker, Jenkins

July - December 2014 PHP developer Social Networking Site

Social-networking startup themed around sport.

I worked on a number of bugfixes and new features including integrating profile information from Twitter, generating Opengraph data for Facebook sharing, and designing and testing API endpoints using Behat.

During my time at the company, we applied many database optimisations, and simplified and de-coupled a large but confused codebase. We extended the test coverage from almost nothing to a full testing suite for the back end.

All new code had to be properly covered by functional tests, so writing feature files to add to the regression tests was fully integrated into the development process.

PHP5.4, MySQL, Mongdb, , Behat, PhpUnit, unit testing, TDD, BDD, Agile, Git, Json, API, Javascript, Nginx, Oauth, Twitter, Facebook Opengraph http://www.sportlobster.com

December 2013 - April 2014 PHP developer Leading Telecommunications Company

UK's leading budget consumer Telecoms Company.

I worked in a small team developing a new web service (“Welcome Centre”) to support websites and apps for new company subscribers. We built a fully unit-tested architecture for consuming customers existing web services and exposing a single interface for the various front ends to consume. We built the system on Symfony 2 and used Behat and PHPSpec to refine the tech spec and test the code.

All code was fully unit-tested and functionally tested using Behat. Writing Behat tests was considered the developer’s responsibility, and commits which were not properly covered by tests were not allowed past code review.

PHP5.3 , Symfony Framework 2, Behat, PhpSpec, unit testing, TDD, BDD, Agile, design patterns, Git, Json, Bamboo Their client, an online gambling company, required an iframe for their Youtube channel homepage. The iframe contains a mini-web application showcasing their Youtube videos. The videos are organised by featured player, TV show, Poker tournament, popularity and upload time. We also built a CMS for the client’s use.