Personal Statement
Full-stack senior Drupal developer with a keen eye for system architecture, specialising in Drupal but fluent with many other platforms and frameworks. I bring 16 years of experience: a decade with reputable digital agencies, followed by long-term contracts for leading Drupal agencies since 2019. I adapt quickly to new environments and maintain strong working relationships with clients and colleagues, supported by a genuine enthusiasm for the work that shows in my results. Excellent communication underpins my skill set - using my extensive knowledge of back and front-end technologies, I architect elegant technical solutions, mentor teammates and provide connectivity across the product development lifecycle. My standards are high - I produce quality, rigorously tested features that 90%+ of the time get QA-passed on the first round.
Key Skills
My career has been heavily full-stack (with a lean towards back-end) and largely Drupal-focused: planning, scoping, and building sites and bespoke features for high-profile clients. I am not exclusively Drupal-led - I've developed extensively with other CMSs and platforms and possess a wealth of experience integrating back-end and front-end APIs. I commonly architect and work on component-driven builds, i.e. atomic design patterns, leveraging Pattern Lab or Storybook. My key skills are as follows:
Server-side
- CMS Platforms – Drupal versions 6-11 (including Opigno, LocalGov), Magento 1 & 2, Wordpress, MODX, Shopify
- PHP frameworks – Symfony, Laravel, Zend and other MVC frameworks
- API integrations and platform migrations
Client-side
- HTML5, Twig, Blade – well-formed, semantic, accessible, well tested. I'm a stickler for adhering to UX best-practices (i.e. "don't make me think")
- CSS, pre-processors & frameworks, component-led architectures – favourably SCSS using BEM within ITCSS
- Javascript – build systems, Typescript, UI frameworks (Alpine.js, Vue.js, KnockoutJS), Angular, d3.js and similar data visualisation libraries, to name but a few
- Design systems – Storybook, Patternlab
Additional
- Version Control – Git (git-flow feature branching methodology preferably), SVN
- DevOps & server administration – Acquia Cloud, virtualized local environments, UNIX server administration, CI, composer, Drush, WP-CLI. Very confident working with CLIs
- Extensive experience working within agile and waterfall project management environments
Experience
I have been trusted to deliver Drupal projects and complex Wordpress builds for TPX Impact on multiple occasions, such as the Holocaust Educational Trust's "Lessons from Auschwitz" (see project below) and a bespoke API integration between Kinship's Wordpress website, Zoom and Salesforce to provide registration and session hosting for webinars. Most recently I have been heavily involved in the LocalGov Drupal build for Renfrewshire Council: architecting the design system implementation, standing in the project lead, along with building back-end features and an API integration.
A 'ground-up' rebuild of Optimus' Learning Management System 'The School Training Company', I was solely responsible for planning the architecture, producing feature estimates, and development on a full-stack basis. Based on Drupal Opigno, I elegantly customised and extended the system while giving due consideration to future upgradeability. The budget was set in concrete, so flex for re-scoping and accurate estimate ranges were essential in delivering a well-considered, stable LMS 'core' to be expanded upon in later phases. Due to my risk-based estimate strategy, our continual communication and feature refinement, and my thorough interrogation of features prior to QA, the site came in on budget and no features overran - all this while maintaining the level of quality and UX consideration I always aim to provide.
A leading UK Drupal agency, I have formed a great relationship with CTI Digital that has seen me working for several contract terms. My roles have leaned towards a back-end focus, but I've also built many components within their proprietary component-driven theme framework. I have contributed features for major clients such as the Greater London Authority (see project below), the NHS, De Vere Hotels, and The Chartered Society of Physiotherapy. Most recently I owned the D9 to D10 upgrade process for several of CTI's clients' more complex sites. My reputation with CTI has been founded on my communication skills coupled with well-tested feature development that requires little to no bugfixes after QA testing.
I worked with Goram & Vincent to deliver commerce functionality for Dyson's international infrastructure. Each store regularly turns over tens of millions in revenue per year and are based on a shared modular Magento 2 codebase methodology. I mentored several junior and middleweight developers throughout the contract term, as well as writing technical specs and informed estimates for features such as migrations and API integrations. I played a pivotal role in reimplementing the "One Step Checkout" experience globally, providing an adept knowledge of KnockoutJS whilst imparting this knowledge to the wider development team. In addition, I led the development of the customer account implementation, which was rolled out to all Dyson sites worldwide.
Nomensa is a renowned strategic UX agency. I'm extremely proud to have led a permanent shift, not just by setting an example of excellent communication between development and UX / design, but also pioneering their component-based development approach going forwards.
My role saw me working heavily with Drupal 8 (see The Welsh Government project below), forming the architecture for a clean, scalable front-end for the Royal College of Anaesthetists course portfolio management system (Laravel). I mentored other developers, provided project estimates and plans, and was constantly involved in UX, design and devops decisions.
Torchbox was a leading Drupal agency before shifting focus to their proprietary python CMS (Wagtail). My role was developing on a full-stack basis with a weighting towards the back-end: planning and creating bespoke functionality for clients such as the Donkey Sanctuary and Independent Age charities.
Projects
Representing CTI Digital and working for the Greater London Authority, the Mayor of London government website and intranet sites were built on Drupal 9 and contained within a single codebase architecture. The theme architecture is component-driven (i.e. made use of atomic design methodologies), allowing us to share components and their derivatives across the sites. Internal and client communication was excellent and presenting client demos was a joy - I received wonderful feedback throughout.
As one might expect, the site relies heavily on use of groups and workflows to provide tailored authoring experiences for the client's multitude of groups and departments. I built custom Feeds implementations that provided map-driven content and syndicated external content. My position in the team was pivotal in delivering a bespoke content type construction kit, tailored for ease of use by site administrators. This involved creating an intuitive multistep form flow that produced a content type with fields that could be mapped and populated by Feeds, then automatically added to the site search index.
While my role covered largely back-end concerns, I had a hand in producing several complex front-end components, leveraging alpine.js to create truly encapsulated UI component behaviours. A keen eye for accessibility was essential throughout the build - I employed best accessibility practices during development rather than to wait for issues to be raised in QA.
I worked with Manifesto (now TPX Impact) to build a learning management system (LMS) and CRM for the Holocaust Educational Trust's 'Lessons from Auschwitz' course for GCSE students. Both applications were built with Drupal 8 within a single multisite instance.
I was solely responsible for building the CRM and integration to the LMS, as well as being heavily involved with customising Drupal Opigno LMS features to suit the client's business case. By working closely and communicating effectively with the client and Manifesto team, I planned and built features according to very custom (and somewhat fluid) requirements, in order to produce complete features by the strict deadlines set. I made use of custom entities (and their relationships) and workflows with transition handlers (leveraging 'state machine' module) to create a bespoke user CRM experience to serve the LMS, based on a bare-bones Drupal 8 install. I left a strong, lasting impression with the Manifesto production team and had a fantastic rapport with the client.
The Welsh Government Drupal sites are among those I’m most proud to have been involved with. I worked tirelessly to provision a component-led core theme architecture with modern tooling and Pattern Lab integration. This allowed us to distribute all theme elements with style overrides across the multiple builds. I onboarded and led other developers, introducing them to the new methodology along with best practices for implementation, while working on a full-stack development basis throughout.
My initiative proved to be a groundbreaking step for the agency and shifted their methodology towards reusable, component-led workflows. It also demonstrated how efficiently projects can progress when UX, design and development teams collaborate effectively and continuously tweak the agile workflow in a positive feedback loop.