Software Support & Maintenance

Software needs ongoing care. We provide it.

Ongoing Support is a maintenance and development arrangement for live software systems. We handle security patches, dependency updates, bug fixes, performance monitoring, and regular feature additions so your application stays healthy and keeps pace with your business.

Business requirements change. Security vulnerabilities get discovered. Frameworks release updates. Third-party APIs evolve or, occasionally, disappear. A system that was current and secure two years ago is quietly accumulating risk today. The question is not whether your software needs ongoing attention. It is whether that attention is planned or reactive. We provide the planned kind.


What maintenance actually involves

The work breaks down into four categories. Understanding them helps explain why "it's finished, we don't need to touch it" is not a viable long-term position.

Corrective

Fixing bugs. Every application has them, no matter how thorough the testing. Some are discovered the week after launch. Others lurk for years before a specific combination of inputs brings them to the surface. Corrective maintenance keeps the system working as intended.

Adaptive

Keeping the system compatible with its environment. PHP releases a new version. A payment provider updates their API. A browser drops support for a feature you rely on. Adaptive maintenance ensures your application continues to work as the technology landscape shifts around it.

Perfective

Adding features and improving what exists as your business changes. A new product line needs tracking. A workflow that made sense two years ago no longer matches how your team operates. Perfective maintenance keeps the software aligned with the business it serves.

Preventive

Refactoring code, improving test coverage, and addressing technical debt before it becomes a problem. This is the maintenance you never see the results of directly, because the result is the absence of the crisis that would have happened without it.

Most businesses think of maintenance as "fixing things when they break." That is only one quarter of the picture. The other three quarters are what keep the system healthy, current, and useful as your business evolves.


What happens without it

We have seen this pattern enough times to describe it with confidence.

Year one: Everything seems fine. The system works. Small things occasionally need attention, but they get worked around. Dependencies fall one version behind, then two. A security patch gets missed. Nobody notices.

Year three: The framework is two major versions behind. Upgrading is no longer a simple update; it is a project in itself. Several dependencies have known vulnerabilities. The PHP version is approaching end-of-life. You are now facing an expensive crossroads: invest significantly in catching up, or start talking about a rebuild.

The irony is that the cost of ongoing maintenance is a fraction of the cost of the catch-up work. Regular, planned attention keeps a system in a state where updates are small, manageable, and affordable. Neglect turns them into projects. Our software maintenance strategy page explores this in depth.


How we work

We offer two models, because not every system needs the same level of attention. The right choice depends on how actively your application is evolving and how critical it is to daily operations.

Pay-as-you-go

For stable systems that need occasional fixes or updates. You contact us when something needs doing, we scope and quote it, and we do the work. No ongoing commitment. This suits applications that are mature, well-tested, and not changing frequently.

The trade-off is response time. Pay-as-you-go work is scheduled alongside other projects. If your system goes down on a Friday afternoon, you are in the queue, not at the front of it.

Monthly retainer

For systems that need regular attention, ongoing feature development, or priority response for critical issues. A retainer gives you a defined number of hours each month, guaranteed availability, and the confidence that your system is being actively looked after.

Most of our long-term clients are on retainers. It is the model that works best when software is central to your operations and needs to evolve alongside your business.


What a retainer includes

Retainers are not just "hours we hold for you." They include a set of ongoing responsibilities that keep your application secure, current, and reliable.

  • Security patches Framework and dependency security updates applied promptly. When a vulnerability is disclosed, your system gets patched before it becomes a problem.
  • Dependency updates Regular updates to keep your application on supported versions of its framework, language, and third-party packages. Small, frequent updates instead of large, risky ones.
  • Performance monitoring We keep an eye on response times, error rates, and resource usage. Slowdowns and issues are caught early, often before your team notices them.
  • Bug fixes When something breaks, it gets fixed. Retainer clients do not need to wait for a quote and approval cycle. We fix it and report back.
  • Feature hours A defined number of development hours each month for new features, improvements, and adjustments. Your application keeps pace with your business without needing a separate project engagement every time something changes.
  • Priority response Critical issues get same-day attention. Your system processes orders, manages customers, or runs operations. When it needs urgent help, you are at the front of the queue.

Who this is for

Ongoing support suits anyone with a live application that their business depends on. Specifically:

You have a Laravel application we built. We already know the system intimately. Continued support is the natural next step after a build, and the most efficient way to keep things running well.
You have a system we inherited through a software takeover. After the audit and initial stabilisation, ongoing maintenance keeps the system healthy and gives you a clear path for improvements.
You have a Laravel application built by another agency. If the code is in reasonable shape (or if we have brought it up to standard), we are happy to take on ongoing maintenance. We will audit it first and be honest about what we find.
You need your application to evolve but not enough to justify a full project. A few features a month, occasional adjustments, and the peace of mind that someone is actively watching the technical health of your system.

The long view

We are still maintaining systems we built in 2008. Not because the clients are locked in, but because the relationship works. They have a team that knows their system inside out, responds quickly, and cares about the quality of what runs under their name.

Software that gets regular attention does not age the same way as software that gets ignored. It stays current, stays secure, and continues to serve the business year after year. The clients who have been with us the longest spend the least on maintenance per year, because the ongoing investment prevents the expensive catch-up work that neglected systems inevitably require.

That is the real value of a long-term support relationship. Not just fixing things when they break, but keeping them from breaking in the first place.


Keep your software healthy

Whether we built it or you are bringing us an existing system, we will look after it properly. Tell us what you have and we will recommend the right support arrangement.

Talk to us about your system →
Graphic Swish