Service line · Software Maintenance & Support

Systems that keep working
after launch day

Support is not a phone number that answers eventually. It is a defined response target, a patching rhythm, tested restores and an improvement backlog that moves every fortnight. We take on software we wrote and software we inherited.

0
Availability on platforms we operate
0
Median response to a severity-one ticket
0
Interval between dependency and patch reviews
0
Systems under an active support agreement

01What the support arrangement covers

A maintenance agreement describes four things: response speed, patching frequency, what we monitor and how much improvement work is included monthly. Everything else is quoted separately.

  • Incident triage and severity classification
  • Defect rectification against agreed targets
  • Framework and dependency patching
  • Security advisory monitoring and response
  • Uptime, error rate and latency monitoring
  • Backup verification and restore drills
  • Certificate and credential renewal
  • Fortnightly improvement releases
  • Quarterly service review with reporting
Situations we inherit

What prompts a support conversation

Most arrangements begin with a specific event — an outage, a departed developer, or a security notice nobody can act on.

An outage with no runbook

A service stopped overnight and nobody in the business knows where it is hosted, which account pays for it, or how to restart it. The immediate work is recovery; the durable work is writing the runbook that should have existed.

The developer who built it has left

An internal tool is business-critical and its author is no longer available. We start by establishing what is actually running in production rather than trusting the repository.

A security advisory nobody can act on

A notice arrives about a library deep in the dependency tree. Nobody knows whether the system is affected. We assess exposure, test the upgrade in staging and report in writing.

Performance has slowly degraded

A system that was fast two years ago now takes eleven seconds to open a job list. The usual causes are unindexed growth and report queries against live tables. Both are measurable first.

Backups exist but have never been restored

A scheduled backup has reported success for years and no one has attempted a restore. We treat that as untested, run a drill into an isolated environment and record the recovery time.

How we approach it

From first contact to steady state

Taking on an unfamiliar system carries risk for both sides. The first six weeks are structured to reduce it: stabilise before improving.

01

Assessment

A short review of the application, its hosting environment, dependencies and data. The output names the risks we can see and those we cannot yet see.

02

Stabilisation

Before enhancements we close the obvious gaps: monitoring that alerts someone, backups restored at least once, credentials in a managed store, access restricted to named accounts. Two to four weeks.

03

Documentation

As we work we record how the system is deployed, where it runs and how failures present themselves. That documentation is what makes the arrangement transferable.

04

Backlog and cadence

Improvements sit in one prioritised backlog owned by a named person on your side. Releases go out fortnightly with release notes; emergency fixes follow the severity process.

05

Review and reporting

Quarterly we report on availability, incident volume, resolution times, patch status and open risks. The review is where we raise anything structural, including requests better handled as a project.

Representative engagement

A support arrangement in practice

The client is described by sector only.

Maintenance planner reviewing a weekly job schedule on a laptop in a depot office
Support · Utilities & Field Services

Taking on a platform after the vendor withdrew

A WA utilities maintenance provider ran a scheduling and job capture platform whose original developer had ceased trading. Nobody held the deployment credentials, the database had never been restored from backup, and a monthly report failed silently whenever a nightly job overran. We began with a four-week stabilisation: monitoring and alerting, a restore drill into an isolated environment, credential custody transferred to the client and access restricted to named accounts.

LaravelMySQLAWSTerraformGrafana
11 s → 1.4 s
Job list load time
0
Unplanned outages in 12 months
38 min
Measured restore time

Read the full case →

Agreement tiers

Three levels of cover

Tiers differ by response target, coverage hours and included improvement allocation. All include monitoring, patching and the quarterly review.

FromA$1,450 / mo

Essentials

Business hours cover for a single non-critical system.

  • Response within one business day
  • Monthly patch window
  • Monitoring and alerting
  • Four hours improvement work per month
  • Quarterly service review
FromA$6,800 / mo

Priority

Extended hours for operations running outside AWST business hours.

  • Severity-one response within 15 minutes
  • Coverage to 20:00 AWST, seven days
  • Dependency scanning and advisory response
  • Forty hours improvement work per month
  • Quarterly architecture review

Indicative, exclude GST and exclude cloud consumption, billed by your provider into your own account. Fees assume one production application with staging; additional applications are quoted individually. The initial term is six months, then month to month with one month's notice.

Engineering detail

How the discipline is actually applied

Support quality is mostly a matter of cadence. These are the practices we follow on every agreement.

Patch cadence

Framework and library updates are reviewed fortnightly and applied in a window agreed with you. Security patches follow the vendor advisory and are tested in staging first.

Dependency scanning

Automated scans run on every commit and weekly against the deployed state. Findings are triaged by exploitability rather than severity label, so the list you receive is actionable.

Restore drills

Backups are restored into an isolated environment on a schedule, with elapsed time and data currency recorded. A backup never restored is treated as unproven.

Change advisory

Every production change is recorded with its purpose, rollback step and blast radius. Changes carrying data or downtime risk are scheduled with you in advance.

Observability

Error rates, response times, queue depth and integration freshness sit on a dashboard you can open at any time. Each alert names the runbook section that applies.

Common questions

Before you sign a support agreement

Will you support software you did not build?

Yes, subject to an assessment. We establish that the system is maintainable — a deployed environment, identifiable source and no licensing obstacle. Where it cannot be supported safely, we say so.

How quickly do you respond?

Severity-one incidents are acknowledged within the target for your tier, typically fifteen to thirty minutes during coverage hours. Lower severities are acknowledged within one business day.

What counts as an incident versus a change?

An incident is something that has stopped working; a change is something you would like to work differently. We classify at triage, because the distinction determines whether it draws on the included allocation.

What happens if the system needs replacing?

We tell you when maintenance has become poor value. If the cost of keeping a platform running approaches the cost of rebuilding it, that appears in the quarterly review with figures, and you decide.

Find out what your system actually needs

A short assessment gives you a written view of risks, patch status and recovery readiness before you commit to anything.

Get a Quote