Curriculum Vitae
I am a web developer based in London, UK. My experience primarily lies with the use of Django (a Python web framework) as well as a wide-range of other tools.
My interest is being a full-stack developer; being involved in everything from the overall direction of a project, to design, user experience, and the actual implementation. I have extensive experience with Django (5 years), and am currently involved with some open-source projects based on it. I am also comfortable building complex interfaces in the front-end using modern JavaScript tools such as Knockout and Backbone.
I have a keen interest in graphic design, and I'm passionate about crafting great experiences for end-users. These influences all of my decisions as I work on a project, be they technical or aesthetic, and I'm always on the lookout for new ideas that can help better shape projects.
Open Source
- Django Extra Views - Extra class-based views for Django.
- Django Oscar - Domain-driven E-commerce for Django.
Tools and Technologies
- Back-end: Apache Solr, Celery, Django, Haystack, Python, South, Tastypie
- Design & UX: Adobe Fireworks, Adobe Photoshop, Mockingbird, Pen + Paper
- Front-end: backbone.js, CoffeeScript, HTML + CSS, JavaScript, jQuery, Knockout JS, Sass + LESS
- Server Configuration: Gunicorn, Nginx, uWSGI
- Tools: Git, ssh
Employment History
Tangent Labs
Developer (September 2011 - Present)
As part of a large development team, I have primarily been responsible for the development of new e-commerce projects using Tangent's open source framework, Oscar, as well as maintaining a number of legacy Django websites for our clients.
The biggest project was Tata Landmark, an e-commerce site with approximately 10 million products at launch (mostly books). I led the development of the search and navigation functionality for the site.
Most recently I designed and built an WYSIWYG email campaign editor, using a combination of CoffeeScript, jQuery and require.js. I also built an image asset library using Knockout.js and Backbone.js as part of the same overall project. These are currently in use by the Labour Party.
Tools and Technologies: Apache Solr, backbone.js, Celery, CoffeeScript, Django, Git, Haystack, HTML + CSS, JavaScript, jQuery, Knockout JS, Nginx, Python, Sass + LESS, South, Tastypie
teamup
Lead Developer (September 2010 - March 2011)
The first full-time developer for a new sports-based startup company. Responsible for turning the original prototype into a fully functional website, taking care of everything from front-end design to server-side coding (Python/Django) and server administration.
The work required heavy use of Google Maps, which was tightly integrated into various parts of the user experience. I made use of Knockout.js, which communicated with a RESTful web service written with Django using Tastypie.
Tools and Technologies: Adobe Fireworks, Django, Git, HTML + CSS, JavaScript, jQuery, Knockout JS, Mockingbird, Nginx, Python, South, Tastypie
Titan Entertainment Group
Web Developer (March 2007 - August 2010)
Part of a small team of developers responsible for developing and maintaining the company's websites, primarily focusing on the commercial website for Forbidden Planet. I led the development effort in migrating our older Java-based websites to Python and Django, as well as maintaing a smaller site based on Ruby on Rails.
I also investigated product recommendation algorithms based on K-Means Clustering with the aim of providing customer-specific product recommendations in the future.
Tools and Technologies: Adobe Fireworks, Adobe Photoshop, Apache Solr, Celery, Django, Git, HTML + CSS, JavaScript, jQuery, Nginx, Python
Education
- MEng. Computer Science (2.1) - University of Warwick, 2002–2006
- A-Levels: Maths (A), Further Maths (B), Physics (A)