Maintenance & Scaling
Ongoing patching, monitoring, performance work and support — so a launched product stays secure, fast and available.
Launch is the start of a system's cost, not the end of it. Dependencies develop vulnerabilities, traffic patterns change, data grows until a query that was instant becomes a timeout, and certificates expire on a Sunday. Unmaintained software does not stay still — it degrades.
Who this is for
Companies with a live product and no dedicated operations capacity. Teams whose original developers have moved on. Products that were fine at launch and now struggle at current volume. Anyone discovering outages from customers.
Problems we solve
- Unpatched vulnerabilities. Dependencies with known CVEs left in production because updating feels risky.
- Degrading performance. Queries that were fast at ten thousand rows and are not at ten million.
- Undetected outages. Downtime discovered through a customer email.
- Unverified backups. Backups running for years with no restore ever attempted.
- Expiring certificates. Renewals that depend on somebody remembering.
- Nobody on call. No defined path when something breaks outside office hours.
What we build
- Scheduled dependency and security patching, tested before it reaches production
- Uptime, error rate and performance monitoring with alerting that reaches a person
- Log aggregation, so investigating an incident does not start with SSH
- Regular backup restore verification
- Performance review: slow query analysis, indexing, caching and profiling
- Capacity planning ahead of known growth or seasonal peaks
- A defined support path with agreed response expectations
How we work
We start with monitoring, because you cannot maintain what you cannot see. Patching runs on a schedule through the same CI pipeline as any other change, so updates are tested rather than applied hopefully. Performance work follows measurement — profiling first, optimisation second, since intuition about bottlenecks is usually wrong. Scope and response expectations are agreed rather than open-ended.
Technologies we use
Uptime and error monitoring, log aggregation, database slow query analysis, automated dependency scanning through GitHub Actions, and the same containerised deployment pipeline used for feature work.
Business benefits
- Security patches applied before vulnerabilities are exploited
- Problems detected on a dashboard rather than in your inbox
- Performance maintained as data and traffic grow
- Backups proven to restore, not merely proven to run
- A known route to help when something breaks
Where it pays off
- Live products without an internal operations team
- Systems whose original developers are unavailable
- Applications slowing down as data volume grows
- Products approaching a seasonal or campaign peak
- Software that has gone unpatched long enough to be a risk
Common questions
What does a maintenance agreement cover?
Typically: security and dependency patching, monitoring and alert response, backup verification, periodic performance review, and a defined response time for incidents. Feature work is scoped separately so maintenance does not quietly become development.
Can you maintain something you did not build?
Yes. We begin with an audit and by adding monitoring, which establishes the real state of the system before we take responsibility for it.
What happens when something breaks at 2am?
That depends on the agreed level, and we would rather set it explicitly than imply round-the-clock cover we have not scoped. Alerting, escalation and response expectations are defined in writing.
Have a live product nobody is actively looking after? Monitoring is the first thing worth adding.