Laravel & PHP7
I have expert knowledge in Laravel and take pride in writing fast, object-oriented, modern PHP. I’ve used Laravel to build SaaS apps and bespoke business systems; to provide RESTful APIs and to integrate with third-party services; to model complex datasets and to provide individual microservices. I’m passionate about elegant and well-tested software solutions and make extensive use of automated testing throughout the development process.
Ruby on Rails
For several years I worked with Ruby on Rails for web applications. Typically projects involved MySQL and Postgres via ActiveRecord or MongoDB via Mongoid. Other Rails apps have involved using RabbitMQ and Sneakers as a messaging backend in a microservices architecture, as well as complex authentication using Devise, JWTs and OAuth. I’ve plenty of experience with RSpec for testing.
Static Sites & JAMStack
I’m a big fan of Statamic for client projects. It is a modern, powerful and flexible CMS which rivals WordPress in ease-of-use. It’s well suited for use with modular design systems or component libraries or CSS and markup structured with BEM.
I’ve built and maintained numerous WordPress and WooCommerce sites (including bespoke themes, plugins and API integrations). I’ve helped site owners scale popular sites to cope with large volumes of traffic with performance enhancements, infrastructure and caching (including Varnish). I’m a fan of Bedrock and Sage as these bring more modern development practices to the WordPress ecosystem.
I’ve worked on multiple Drupal projects, from straightforward sites to more complex builds including performant, complex filtering and remote datasources accessed via HTTP APIs and integrated using the Entity API. I’m well-versed in common tools within the Drupal ecosystem such as Panels, Views and Features.
I care deeply about web standards, semantics, accessibility and performance and have been building mobile-friendly, responsive websites for many years. I’ve worked with frameworks such as Bootstrap and Tailwind CSS but I’m highly proficient with CSS3, Sass and LESS (I’m a fan of the BEM methodology).
I’m a confident Linux sysadmin and have worked extensively with cloud providers such as AWS, DigitalOcean and Linode to provide scaleable infrastructure, from single VPS deployments to load-balanced instances with VPCs, network policies, VPNs / bastion hosts and multiple managed services.
Provisioning & management
I manage servers using Terraform for provisioning and Puppet for configuration management and am very confident administrating Linux infrastruture with command line tools. I’ve worked extensively with Apache, Nginx, Varnish and haproxy.
I adopted Docker early as a development platform and am currently running containerised Laravel, Rails, WordPress and Drupal applications in production. Containers are automatically built using Gitlab CI pipelines, with releases based on tagged Git commits.
Developer Tooling, CI & CD
Like most developers I’m passionate about efficiency and appreciate tools that enhance my workflow. I’m highly experienced with Git and have worked with Github, Gitlab and Bitbucket.