Freelance Web Developer

Hello! I'm a versatile and dependable web developer, with proficiencies across the entire web development stack.

As a remote developer, based in the UK, I'm well positioned to help clients anywhere in the world.

About my skills View my work

About Me


I've been working as a web developer for over 6 years, and have 8 years of programming experience in total. During this time I have worked on a wide variety of websites — from search engines to E-commerce offerings, as well as marketing and portfolio sites.

Primarily a developer, I enjoy the technical challenge of building and maintaining websites. I'm also comfortable designing modern web sites and user interfaces, and so enjoy working at the intersection of technology and art that the web represents.


I believe that websites should provide users a timely and intuitive way of accessing the information or service they are looking for.

I enjoy keeping up with advances in web development and seek to implement, where useful, such technologies through progressive enhancement, though always keeping in mind the principles that sites should be lean, accessible, well structured and consistent.

My code reflects these tenets also — I am a proponent of minimising cognitive load for developers returning to code I have worked on.


Front-End Development

  • HTML5, CSS3 (inc. Flexbox, Grid)
  • Responsive Web Design
  • JavaScript (inc. VueJS, jQuery)

Back-End Development

  • PHP (inc. Laravel)
  • WordPress (inc. WooCommerce)
  • MySQL, MongoDB


  • Linux / Apache / NGINX
  • Version control (Git, SVN)
  • Tooling (NPM, Gulp, SASS)


As part of a team distributed across the world, I work on the maintenance and development of this UK property search engine.

Projects have included:

  • Site speed optimisation to improve load time
  • Implementation of sold property price search
  • Sourcing and implementing local schools data to rental and sales property listings
  • Improving the accuracy of geographical search algorithms by refining the mathematical models used
  • Implementation of a single-click login system to the MyHome account area
  • Provision of automated PDF report generation for agent statistics
  • Improvements in text matching for agent search results
  • Integration of site with social channels
Screenshot of

Design and build of a responsive, content-managed site for this confectioner to advertise their products. The content management backend allows the client to effortlessly keep the site up to date with their latest offerings and news. An E-commerce area enables the client to sell their book, with potential to add further online products in future. screenshots on a desktop monitor, tablet and phone


An ongoing personal project to help facilitate the understanding of the wonders of space exploration. A bespoke API provides data on the current and future positions of the International Space Station (ISS), which is the consumed by the site to display real-time location data alongside the live onboard video provided by NASA, as well as to predict when the ISS will be visible in the skies above anywhere in the world.

Screenshot of Unearth.Space

Another personal project, this time to demonstrate client-side data sorting and searching, with data pulled hourly from the YouTube API. The number of records is a little on the high side for this demo, causing the page to be less snappy than ideal, though page size is managed by lazy-loading thumbnails only as required.

Screenshot of

Goodprint (company acquired)

Converting Photoshop comps to HTML and CSS for a redesign of this multi-language E-commerce printing company, working within a PHP MVC framework.

HomeContact (company acquired)

Backend build of “MoneyPiggy” — a web app enabling schools and clubs to take payment for membership and activities through their website, via a payment gateway.

MathsDoctor (company acquired)

Design and implementation of a tutor training site, automation of monthly reports, integration of SMS API to notify tutors of lesson bookings.


Or get in touch using the details below: