Sophie Shanahan-Kluth

I'm Sophie, a thirty-something, 6'2″ web developer with ADHD based in Wiltshire.

A graduate of Web Design from UWE in Bristol, I like drinking coffee, listening to music, art, fantasy writing, roleplay gaming, and knitting. Amongst other things. Mostly in that order. ... and cats. I really like cats.

I am process-oriented and love nothing more than ensuring that there is a rigorous process in place. A great communicator, I am excellent at communicating technical problems and solutions to wide audiences of varying skill levels. I thrive on consistency and predictability, and love to get my teeth stuck into complex development issues, whether that's converting client requirements into tasks for others to perform or doing the development work myself. I pride myself on being able to turn my hand to nearly any issue or task, even if it's outside of my comfort zone.

My aim is to leave a positive legacy. Whether that's by mentoring people, improving code, sharing ideas, supporting folks, documenting and formalising processes, or advocating for changes that will benefit the whole team, I strive to leave things better than how I found them. We're all in this together.

Contact information #

You can get in touch by email at sophie@iamsophie.sk.

General overview #

I am a full-stack, Drupal-centric developer. I've been working as a tech lead for a number of years, spearheading large development projects as well as managing the ongoing maintenance of projects for a range of clients. I have experience with...

  • Leading complex development projects, and supporting with technical and architectural decision-making.
  • Building backlogs for retainers and projects; working directly with clients, product owners and the development team to ensure tickets are ready for work and of the highest quality.
  • Web accessibility standards and making websites compliant with WCAG guidelines; advocating for and ensuring that accessibility requirements to be considered from inception of new features.
  • Systems administration, including the set up of sites on remote servers and hosting platforms, configuring installations, and deployments to multiple environments.
  • Working to coding standards, receiving/performing code reviews, and enforcing standards across teams, through code review and the use of automated tools.
  • Continuous integration, mainly with Github Actions, and implementing scalable, reusable workflows that can be used across projects, clients and tech stacks.
  • Working with hosting platforms such as Acquia, Upsun/Platform.sh, Pantheon, AWS, and completely custom server setups.
  • Direct mentorship of developers at all levels in a team environment, plus line management of developers, supporting with their personal and career growth.
  • Feeding into company-level decisions by supporting and collaborating technical and delivery leadership directly.
  • Presenting ideas to people of all skills levels, with a focus on explaining complex technical work in simple terms.
  • Writing project documentation for a range of audiences, including clients, project managers and owners, test engineers, and other developers.
  • Contribution to open-source software initiatives (Drupal core and contrib modules), including maintenance of my own open-source modules on Drupal.org:

Specific technologies I have experience with include:

  • Development and maintenance of Drupal 6-11 websites; creating new features, adding complex integrations, onboarding to other peoples' codebases, migration between versions, ongoing maintenance.
  • PHP and MySQL, mainly through Drupal but with good working knowledge of Symfony and related technologies.
  • JavaScript development, used mainly within the Drupal framework, but with good working knowledge of React and Typescript.
  • Headless Drupal builds, mainly React, but also static-site builds using Svelte.
  • Acquia, Pantheon and Upsun/Platform.sh hosting, administration, and build/deploy pipelines.
  • Writing PHPUnit tests within the Drupal framework.
  • Git-based workflows and technologies, using Github, Gitlab and Bitbucket, with a strong emphasis on collaborative work and peer review, and continuous integration using their pipeline tools.
  • Using front-end build tools including Gulp, PatternLab and npm, both picking up projects and adding build tools to existing projects.

Work #

Access Digital (now GAIN) - January 2022 to present #

Website

Working as a tech lead, I worked alongside the Head of Delivery and project managers, heading up a squad of developers across multiple clients, including (but not limited to):

Across these projects, I worked directly with the delivery team to ensure the continuous delivery of high-quality, consistent work. I was often the first point-of-contact for clients, and fostered excellent relationships with all the clients I worked with.

To support the delivery of work I worked to update and streamline the release processes across the business. This included:

  • Standardisation of a release process, across both development and delivery, and implementing feedback from key stakeholders including Head of Delivery and Head of QA.
  • Implementation and roll out of a set of composable (reusable) Github Actions, to support consistent deployment processes.
  • Updates to several codebases to ensure the release and deployment processes were in line with the agreed standard.
  • Support for other tech leads to roll the changes out to sites/codebases that I was not involved in.

Since 2025 I acted as a line manager for a number of developers, supporting them in 1:1s and assisting with performance reviews, including goal/objective setting.

Focusrite-Novation - June 2019 to December 2021 #

Working as a lead developer. In my time here, I worked on many of the company's sites and systems, bridging gaps between teams and trying to provide internal value as much as customer-facing value.

I led the team working on the main brand websites, focusrite.com and novationmusic.com.

View a summary of my work at Focusrite.
  • As part of an agile team, I worked closely with product owners from across the business to deliver iterative improvements in sprint cycles, while managing larger projects that spanned multiple sprints.
  • Worked closely with the Scrum master to write team documentation, lead sprint ceremonies, demo work to business-wide stakeholders, plan work into sprint cycles, and plan a regular release cadence.
  • Oversaw the migration of the hosting platform from a dedicated host to Acquia, and implemented Github Actions to automate deployments to the development environment.
  • Led the build of a Magento store, intended to serve all of the Focusrite group of brands, integrating with a third-party system for stock levels and pricing.
  • Championed coding standards and added code scanning tools to automate code review tasks.
  • Pushed for clarity around the roles and responsibilities of people in an ever-growing team, and took part in cross-department strategy days.
  • Used my knowledge of the company roadmap to make recommendations for improvements that would help to achieve goals in the future.

I also took part in a number of extra-curricular groups, including:

  • The Diversity & Inclusion initiative
  • The accessibility steering group / accessibility D&I initiative
  • Mental Health First Aider and Wellbeing group

Microserve (now Investis Digital) - May 2014 to May 2019 #

Working as a senior Drupal developer. In my time here, I worked on several large Drupal projects, including:

View a summary of my work at Microserve.
  • Headless Drupal work, using one Drupal site for content and a separate website to serve the content and images.
  • Implementation of checkouts using Drupal Commerce:
    • Integration with external systems for stock management.
    • Creation of custom products on the fly, based on user-provided criteria.
    • Single-page checkout flows.
    • Integration with external CRMs to store customer and order data.
    • Fulfilment using the Commerce Shipping module, modifiying it to work per-item in cart.
    • Complex Ajax functionality, requesting live data from external systems and updating cart data based on user criteria.
  • Complex front-end work, restructuring themes and templates, working with ES6 JavaScript.
  • Implementation of a continuous deployment workflow, maintaining a Jenkins server and scripts to run automated deployments.
  • Migration from Bitbucket to GitLab for all projects, including associated training of other staff members and integration with the CD workflow.
  • Pioneering the use of Docker, creating easy-start scripts in Bash that allowed any developer to pick up the work, and then helping to migrate to Docksal.
  • Using Scrum and Agile working methods, building sprints and working on regular releases for clients.
  • Introducing #thanks and #animals channels to the company Slack and starting regular brown-bag lunch sessions for people to catch up and relax, to help boost morale.
  • Advocating for a consistent project experience, unifying and standardising the company's toolset, greatly reducing the time-to-developing for developers joining a project.
  • Setting up remote servers and providing documentation for their handover.

Circle Interactive - July 2011 to May 2014 #

Website

I started at Circle for my placement year between July 2011 and September 2012. During my final year of uni (Sept 2012 - May 2013), I worked at Circle while studying, during holidays and once every other week when my timetable allowed. I was hired straight out of university, starting full time as soon as my exams finished at the end of May 2013.

View a summary of my work at Circle Interactive.
  • Creating themes for Drupal 6 and 7 sites, both from provided PSDs and based on client suggestions of “liked sites”.
  • Working directly with clients through our support system and also through direct contact on email and telephone.
  • Creating custom modules, including: a rewritten support system for our intranet; dynamic data retrieval from a client’s server to show course schedules; working with geolocation on an Apache server; updating a cookie control module to work with Drupal 5, 6 and 7 for distribution to our clients; and updating a half-written module to perform a proximity search on CiviCRM data.
  • Writing documentation for clients and colleagues on how to use existing Drupal modules/CiviCRM extensions, custom modules created for a purpose, and documentation for theming.
  • Using existing modules to create complex functionality on sites, particularly using views, content access and internationalisation/translation.
  • Estimating work needed and time required for projects, and advising on what technologies could be used to solve problems.

Study #

BSc(hons) in Web Design #

Studied at UWE Bristol from September 2009 to July 2013, graduating with a first class degree.

My final year project was Fontastica, a font finder. Using Google's font API, the site provided random combinations of fonts in header-body format and allowed users to rate them ("I like this!" or "This sucks!"). Its purpose was to give designers ideas for type combinations on websites, assuming that it's either difficult to come up with a good combination, or they stick to the same old thing.

It was built using CodeIgniter between October 2012 and April 2013. The accompanying report was written throughout the year alongside the project work.

Other modules included:

  • Final year: a digital media project (Fontastica), interaction design, consultancy project (working with Bristol Women’s Voice), advanced topics in web development (creating a RESTful API system)
  • Third year: placement at Circle Interactive
  • Second year: human-computer interaction, information architecture, web design principles
  • First year: information design, media technologies (basic knowledge of Flash and ActionScript 3.0 programming)

Accolades #

Other #

  • Mental Health First Aider - accredited through MHFA England (Oct 2020)
  • Helped to organise Drupal Camp Bristol in 2017, liaising with sponsors and handling the sponsorship money

What I can bring to the table #

My key drivers are: honesty, openness, and a commitment to betterment.

I've been working with the web since I was 13, and am a firm believer in making things simple and easy to use, both for the end user and for any developer who will take up work after me. I'm keen to broaden my horizons and learn new things, rather than stagnating in a single place.

I work best with people who are driven and details-oriented, and thrive when given a lot of work to do and a deadline. I enjoy taking the time to get stuck into a project, understanding the objectives and seeing the project through to the end. I don't like leaving tasks half-finished, although I do get bored if a project drags on needlessly.

I'm a huge believer in laying solid foundations for future work: unless strictly necessary I don't cut corners during development if I can help it. It feels like a disservice to a team of developers to build technical debt in, and I will strive to build things correctly the first time around. If I can't, I do my best to document (through tickets in a backlog, or in a Wiki or equivalent) the things that will need improving. I don't just code for me, I code for a team, and they are at the forefront of my mind, always.

I enjoy learning and sharing new knowledge with others. In previous roles I have acted as a mentor, helping to teach students and junior devs how to assess priorities, discover solutions, and ultimately complete their own work in a thorough, timely manner. My emphasis is on teaching people to be strong independent learners, with keen attention to detail and a desire to achieve the best.

Oh ... and I really like writing documentation! I know that sounds weird, but I think it’s important to make it as easy as possible for others to pick up systems. I get frustrated when documentation isn’t provided, so I do my best to provide it for others. I have pushed for the adoption of documentation systems across several teams, including Confluence, Notion and various company-built intranets and wikis.

I love to focus on health - not only my health but that of my colleagues and friends. Maintaining a healthy mind and body is a really important thing for anyone to do, so I push for all of my colleagues to keep an eye on their work-life balance and offer support wherever I can. As a qualified Mental Health First Aider, I try to look out for signs of mental fatigue in my colleagues, offering support and advice wherever I can.

Feedback on my self and my behaviours is important to me, and I actively encourage people to let me know if I can improve myself. I've spent the last few years learning to take feedback at face value rather than personally. It's been a hard road of learning that not everyone else feels the same way, but that's one of the many things I'm learning!

References #

References available on request.