IdeaSquares Website (2014)
A responsive website rewrite for an early stage startup.
- The existing "spaghetti code" codebase was ported to Lavavel, reusing code wherever possible.
- The front-end was reengineered to be responsive.
- A staging environment was setup, a new Capistrano based deployment process was implemented, and the new codebase was deployed to the live production server with zero downtime.
- The server configuration and app structure was documented, and development handed off.
HTML5 Showcase App (2013)
An experimental hybrid web app to demonstrate the capabilities of HTML5.
- A series of minigames were created using HTML5 technologies such as Canvas, Touch Events, and the Device Orientation Api.
- The project was used as an opportunity to conduct experiments into the boundaries of the HTML5 platform, and in particular rendering performance.
- Performance was tested on physical mobile devices.
- A performant animation framework for view-transitions was developed.
- The final app was wrapped using PhoneGap for iOS and Android at both phone and tablet sizes.
HP Top Value App (2013)
A responsive web app for HP's sales team.
- I worked as part of a team of three to develop the app. Git and Trello were used to coordinate development.
- The app was built as a single page web app using Backbone.js with a RESTful API backend.
- AppCache and Local Storage were used to enable the app to work offline.
- View code was shared between mobile and desktop where possible.
- The app was deployed as a responsive web app, and tested on Android, iOS, Windows Phone, and Desktop Web (down to IE9) platforms.
The app was very well received by the client:
"The app has been a huge success and has become a global benchmark for HP by seeing this rolled out across EMEA and beyond." - Daniel Kiaie, Account Manager, HP
Always Be Cycling Website (2011)
Informational website and booking system for a local cycling charity.
This project for a local cycling charity involved creating an entire web presence from scratch, including visual design and layout, photography, content creation, WYSIWYG page editing, and a course booking system.
Visually, the focus was on having a clean, bike-orientated design, and on making it easy for visitors to navigate around the site, especially to the booking section. The site also features an admin area which provides a simple interface from which my client can post news, edit pages, and manage course bookings. It runs on my own PHP based CMS, with the course booking module developed specifically for the project.
GhostEdit WYSIWYG Editor (2010)
It takes interface cues from Microsoft’s Ribbon UI, which is both simple to navigate, and familiar to users. In addition to this, it tries to make editing actions intuitive and discoverable (e.g. placing the remove link button right next to the link), and to do as much as possible automatically (e.g. if no text is selected when ‘bold’ is pressed, then current word will be bolded).
GhostEdit was particularly challenging from a technical point of view, due to the incredibly buggy nature of browsers’ contenteditable implementations. This necessitated the overriding of browser default actions when the ‘enter’ and ‘backspace’ keys are pressed, among other things. Adding to the complexity was the fact that older versions of IE have a completely different range implementation.
Tony Coll Website (2009)
My first paid web development project. It involved fixing the previously IE-only CSS to standard conformant code which would work cross-browser, design and layout changes, and content updates. The site is now showing it's age, but still renders accurately in the latest browsers.
Employment & Experience
Web Developer, Goram & Vincent (summer 2015)
Brought in to finish off a project after their previous developer left the company, I worked at G & V for 2 months in their office on Park Street.
- Took over a large (30k LoC), well-written but complex codebase.
- Implemented PDF rendering logic, and updated integration with Magento store.
- Setup a staging environment and automated deployment.
- Added documentation and prepared the codebase for the next developer.
Web Development Intern, IdeaSquares (summer 2014)
Hired for the summer period to refactor an unstructed and increasingly difficult to maintain code base, and to update the functionality of the website to meet new business requirements.
- Ported existing "spaghetti code" code base to the Laravel framework.
- Implemented new front-end designs.
- Carried out general website maintenance and updates
- Advised on development plan and technology choices.
- Worked remotely, communicating regularly via email and skype.
Mobile Web Developer, Mubaloo (most of 2013)
My first proper job, I worked as part of Mubaloo's Web Team for 8 months between university courses. Mubaloo are an award winning agency who specialise in iOS, Android and Mobile Web apps.
- Gained experience of the browsers (and WebViews) of on all major mobile platofrms including iOS, Android, and Windows Phone.
- Participated in client meetings, helping to interpret requirements from and explain technical decisions to our generally non-technical points of contact.
- Helped out with scoping/quoting, UX design, and device testing.
- Pushed for and helped facilitate a company wide transition from SVN to Git.
Senate Representative, University of Bristol (2014/15)
After running on a manifesto advocating open and collborative governance, I was elected as the faculty level representative for the 2.5k+ undergraduate students in the Faculty of Science.
- Attended (and participated in) meetings of Senate, the university's highest academic body.
- Served on various committees, including the Student Partnership and Representation Group, Standing Committee of Student Council, and the Lecture Capture Working Group.
- Chaired Faculty Student Staff Liason Committee meetings.
- Facilitated communication between Course Reps and the Student's Union.
- And most importantly, ensured that student voices were heard.