Bespoke Software Development

Software applications built for quality

Software applications should be properly designed, especially in the age of agentic coding. Here's how I make that happen.

Software Design & Development

I have been a software developer for 30 years. For 20 of those, I have worked independently or as a contractor, providing development services to other software houses as well as directly to clients.

I have built a variety of systems in that time, from complex analysis tools designed to work over billions of rows of data to inventory management systems with portfolio generation built in. 

During my career, I've provided solutions and consultancy for companies from small wine wholesalers and other software companies, right up to larger clients like Tesco, Standard Life, and Sky.

I am equally comfortable as sole developer on complex engagements, as a technical lead within a larger team, or as a developer in a senior position providing additional resource and mentoring for junior developers on projects.

The services I offer include:

  • Systems Analysis & Architecture Review

    Before you can get to what you need, you need to know what you already have. I can provide a detailed analysis of your existing system(s), how they fit together, how maintainable they are, and how they measure up against your actual requirements.

  • Software Development Assistance

    I can provide additional resource as a sub-contractor; I work best independently or as part of small teams where I can deliver visible value.

  • Technical Consultancy

    I can provide advice and guidance on what technologies are appropriate to meet your business needs, how those technologies can be most appropriately used to meet them, and how solutions should be implemented.

  • Mentoring

    If you have more junior developers, I can help them understand the importance of software design, how to identify and resolve trade-offs when making technical decisions, and how to implement systems in a way that considers future needs as well as current requirements.

  • Agentic Workflows

    These days, most developers build with agentic AI; it's difficult not to, given the productivity gains on offer. But simply asking Claude Code (other agents are available) to write code for you isn't a workflow, and is unlikely to get you what you want. I have a strict, spec-based workflow that I can share with your team; it might not be as quick as other methods, but you end up with a fully documented system that has a full spec for every piece of functionality written. While adopting this way of working I have also learned many of the pitfalls that await the unwary when working in this manner; specifically the types of assumptions that an AI agent may make, and how to avoid them.

A screenshot of Visual Studio 2026

Technologies and Platforms

I use Microsoft .NET as an everyday tool, and am familiar with everything from Windows Forms, MVC, and Web Forms, right through to Blazor and Razor Pages.

I also have considerable expertise in database design, and have used both SQL Server and PostgreSQL as backing stores. I've used everything from direct queries and calling Stored Procedures in VB6 through to ADO.NET and Entity Framework to connect to databases; I also have some experience with MongoDB.

I have been hands-on with the Microsoft stack since .NET 1.1 (and before that with Visual Basic 6). I have deep working knowledge of OOP, design patterns, and SOLID principles applied in production systems, gained from experience and backed by understanding.