Services

Web application and SaaS support

Real users, a growing database, queues and migrations. We keep the application healthy and ship updates without downtime.

Timelinemonthly

What's included

  • Error and metric monitoring
  • Background job and queue watch
  • Safe schema migrations
  • Dependency updates and patches
  • Logging and incident forensics
  • Zero-downtime deployment
  • Slow query optimisation

A website has visitors; an application has users with accounts and data. That difference matters more than it sounds. When a site fails, it stops loading. When an application fails, it can keep running and quietly corrupt data at the same time. So supporting an application isn't only about whether the service is up — it's about whether it is behaving correctly.

Applications also change over time on their own, with nobody touching the code. The database grows, and a query that was instant against a thousand rows brings the server down at a million. A background queue accumulates until it overflows. A partner API deprecates the version you depend on. None of this is a sudden disaster; it's predictable degradation, visible well in advance — provided somebody is watching.

How we work

  1. Observability first. Before anything else we set up error tracking, metrics and log aggregation. Without it, investigating any incident becomes guesswork based on user complaints.
  2. Watch the background. Queues and schedulers go under monitoring. A job that stopped running usually raises no errors at all — it simply doesn't happen, which is the most insidious failure mode there is.
  3. Dependency updates. We update libraries on a schedule and track advisories. An application carries an order of magnitude more dependencies than a website, and much of the risk lives there.
  4. Schema migrations. Database changes are reversible and rehearsed on a copy first. Lost data cannot be restored with an apology.
  5. Zero-downtime deploys. We set up deployment so an update doesn't throw working users out of their session mid-action.
  6. Performance work. We track slow queries and creeping response times, and fix them before users start noticing.

What you get

An application whose problems you learn about before they arrive in your support inbox. Incidents are investigated from logs and metrics rather than from a user's recollection. Degradation shows up on a graph weeks before it becomes an outage.

If the product has a mobile client, that brings its own cycle of problems — stores, certificates, OS versions. That's mobile app support, usually taken alongside the server side. If you only need monitoring rather than full maintenance, see server monitoring setup.

Timeline

Onboarding takes a week or more: we need to understand the architecture, stand up observability, and find the bottlenecks. Then it's month to month. For applications with paying users we generally recommend round-the-clock cover — an overnight outage in a SaaS product means a morning spent working through a support queue and watching churn.

A typical scenario

Suppose a service runs an hourly background job that sends notifications. One day it stops running because the disk filled with logs. The application itself is entirely healthy: the interface loads, data saves, no errors appear anywhere. Users simply stop receiving email and gradually conclude the service is ignoring them. Background job monitoring catches that silence within the first hour, because it watches for successful completion rather than for the presence of errors.

FAQ

How does application support differ from website support?
In how deeply you have to watch. For a site, knowing it loads is enough. For an application you need visibility into errors, response times, queue depth and background jobs — it can break in ways that look completely fine from outside.
What does it cost?
Applications rarely fit the entry plan. Pricing follows the architecture, the number of integrations and how fast you need incident response. We quote after reviewing the project.
We have no logging or monitoring at all. Is that a problem?
It's the first thing we fix. Without observability every incident is investigated through user anecdotes, and the root cause usually never gets found. Setup takes a few days and pays for itself at the first outage.
The app got slow but we didn't change the code. Why?
Usually the database grew. A query missing an index is invisible at small volumes and becomes the dominant bottleneck at large ones. We locate those from metrics and fix them surgically, without a rewrite.
How do you update the application without stopping it?
Staged rollout and reversible migrations: backward-compatible changes first, then the switch, then cleanup. Users don't lose their session, and a rollback stays possible at every step.
Will you take on an application built by another team?
Yes, after an audit. We need to understand the architecture, the state of dependencies, and whether tests exist. An application is more involved than a site, so onboarding takes longer — typically one to two weeks.
Do you build new features or only fix things?
Both. Smaller work fits within the monthly hour allowance; larger features are scoped separately as projects with their own timelines.
Other services