How I Do Things

Every web developer and designer has their own way of working, but not all approaches are created equal. This page explains my methods and philosophy, how I approach SEO, design, and development differently from many others in the industry, and why I think it leads to better results for my clients.

Web Development for Agencies

I work primarily with design, branding and marketing agencies who need development support: whether that’s building sites from Figma files, taking over projects from developers who’ve disappeared, or handling the technical work their team doesn’t have capacity for. I understand both sides of the process: the design intent and the technical implementation. That means fewer compromises and less back-and-forth.

Implementing Designs Faithfully

The details that designers care about, such as consistent spacing, proper font rendering, and transitions that feel right, are the same details I pay attention to. You shouldn’t need to send a long list of visual fixes after every handover.

I also know when to push back. If something in the design will cause technical problems, I’ll flag it early and suggest solutions rather than either building it broken or quietly changing it.

Inherited and Rescue Projects

Websites accumulate complexity over time. Requirements change, new features get added, different people contribute. Eventually you end up with something that works but nobody fully understands anymore.

I specialise in stepping into these situations. I’ll dig into the codebase, understand how it’s structured, and figure out what needs attention. I actually enjoy this process – every project teaches me something about how different developers solve problems, which makes me better at my own work.

If you’ve got clients whose websites need work but the history is unclear, I can help. I’ll assess the situation, give you a straight answer about the options, and handle it from there.

Platform Flexibility

WordPress, Shopify, custom code, legacy platforms, page builders – I’ve worked with most things and I’m comfortable picking up new systems when needed. I don’t have a strong opinion about which platform is “best” because it depends entirely on the project.
This flexibility is useful for agencies because your clients’ needs vary. You shouldn’t have to find a new developer every time you encounter a different technology.

Modern Techniques

I stay current with development techniques, but I’m pragmatic about adopting them. New isn’t automatically better – it has to solve a real problem or provide a genuine improvement.

That said, there’s a lot of genuinely useful modern tooling. CSS has evolved significantly: container queries, :has(), and subgrid handle things that were painful or impossible a few years ago. Image formats like AVIF and WebP deliver better quality at smaller sizes. Browser APIs for performance, lazy loading, and animations have matured to the point where you often don’t need external libraries anymore.
I use these when they make sense.

A site built today should take advantage of what’s available today, not be stuck with approaches from five years ago just because they’re familiar. I still see a lot of sites built with jQuery, float layouts, and CSS practices from the early 2010s. They function, but they’re carrying unnecessary weight and complexity, and are harder to maintain and extend, compared to what’s achievable with modern approaches.

Keep It Simple

There’s a tendency in development to overcomplicate things, often because complex solutions feel more impressive. I see developers installing five plugins to accomplish something that could be done with a few lines of code, or building elaborate custom systems when a simple, well-established approach would be more reliable.

Before starting any development work, I briefly consider the different approaches available and the pros and cons of each, then choose the simplest one that does the job properly. The result is websites that work better, load faster, and don’t break when someone needs to make changes later.

Built for Handover

I write code with the assumption that someone else will need to work with it later – whether that’s another developer, your in-house team, or me in two years when I’ve forgotten the details.

This means clear structure, sensible naming, and comments where things aren’t obvious. No clever tricks that require explanation. No dependencies on my specific way of doing things.

When the project ends or someone else takes over, they should be able to understand what’s there and make changes without starting from scratch.

Performance and Accessibility

I build performance in from the start rather than fixing it later. Efficient code, appropriate image formats, lightweight plugins, sensible architecture. This means sites that load quickly without needing extensive optimisation work after the fact.

I also build with accessibility in mind – proper heading structure, keyboard navigation, screen reader compatibility, sufficient colour contrast. These aren’t difficult to get right if you think about them from the beginning, but they’re often ignored entirely.

Looking for development that’s simple and efficient?

Let’s chat about your needs.

    Web Design

    I love well-designed websites that look polished and professional. But if making something look pretty means it becomes confusing or difficult to use, you’ve missed the point entirely. Good design should make things easier, not harder – and surprisingly often, that’s where many designers and developers get it wrong.

    When Design Gets in the Way

    I come across so many websites that are clearly designed to impress other designers rather than help actual users. They’ve got all the trendy elements – parallax scrolling, massive text, hidden menus, artistic layouts, animated cursors – but try to find a phone number or figure out what the company actually does, and you’re stuck.

    An example of a website which says "WE CAN FIX ANY PROBLEM FAST" but doesn't explain what the business actually does

    Artistic but unhelpful – what do they actually do?

    A mockup of a plumbing website with a descriptive title "24/7 Emergency Plumbing in Putney & South West London"

    Designed for customers who need a plumber right now.

    It’s particularly frustrating because the people who struggle most with these sites (older users, less tech-savvy visitors) are often the ones with money to spend. I always try to look at my websites from the perspective of users, and build something that looks good but is still easy to use.

    Lack of Polish

    More commonly, I encounter websites that do their job but don’t make a great impression visually. They’re functional enough, but lack the design polish that makes visitors feel confident about the business. Often it’s a case of prioritising getting something online over getting the visual details right, which is understandable, but doesn’t help with sales.

    How I Approach Design

    My approach is straightforward: make things look good without sacrificing usability. I pay attention to the details that matter, such as proper spacing, readable fonts, and clear navigation that doesn’t leave people guessing. I test sites on actual devices to make sure they work properly on phones and tablets, not just when you resize a browser window.

    And I always think about your actual users: if your customers are mostly over 50, for example, trendy design choices that confuse them aren’t helping your business. The goal is a site that looks professional, works smoothly, and helps visitors take action.

    Ready for design that works for your customers?

    Let’s chat about your needs.

      SEO

      Search engine optimisation (SEO) is about getting more visitors to your website from Google and other search engines. It can deliver massive returns for businesses, but most owners I meet have either avoided it completely or tried it and been let down. Here’s why that usually happens, and how I approach it differently.

      Missing the Fundamentals

      Many websites I see have had loads of technical SEO work done, but Google still doesn’t understand what the business actually does. The site might be missing key information like the business location, service names, or even enough content for Google to work with.

      I always start here, making sure your website clearly communicates the fundamentals before touching any technical optimisations.

      Focusing on Technical Tweaks First

      There’s hundreds of small technical improvements that can be made to any website, such as writing meta descriptions, adding alt text to images, and fixing schema markup.

      Automated SEO tools love these because they’re easy to spot and list. Many SEO professionals lead with these fixes because they look impressive on a proposal. But for most small businesses getting a handful of search visitors each month, a 10-20% improvement from these tweaks might mean one extra visitor. That’s not moving the needle.

      I often advise clients that their money may be better spent on improving their content and messaging first, then worrying about the technical details once there’s actually something worth optimising.

      Mockup of a plumbing website with a user-friendly and SEO-friendly layout

      Some of the most important but often overlooked components of an SEO-friendly and user-friendly home page.

      Misconceptions and Trends

      In my opinion, the SEO field is full of misconceptions and trend-chasing that wastes time and money. New techniques spread through the community faster than they can be properly tested – one person claims success, others copy it, and suddenly it’s “best practice” whether it works or not.

      The measurement problem

      When traffic increases, it’s easy to credit whatever change was made recently. But maybe it was seasonal demand, or a competitor’s site broke, or Google just needed time to understand the content better. With SEO results taking weeks or months to appear, separating cause from coincidence is nearly impossible.

      The wrong solutions

      Strategies designed for massive e-commerce sites get applied to local service businesses where they make no sense. Algorithm updates send people into panic mode, making hasty changes that often backfire. Meanwhile, fundamental issues get ignored because fixing them isn’t as exciting as chasing the latest trend.

      How I Approach SEO

      How do I handle all this uncertainty? I stick to what we know works. The fundamentals of SEO haven’t changed much over the years – Google wants to show relevant, helpful content to users. I keep informed about new techniques but approach them sceptically, especially if they sound too clever or promise quick results.

      I also consider the cost-benefit for each client: there’s no point recommending work that costs more than it’s likely to return.

      Looking for SEO without the snake oil?

      Let’s discuss your project.