—Services

Seven areas of
engineering work

Each description below states the purpose of the service, the scope it typically covers, and the deliverables that can result from it. Actual scope is agreed per project; nothing here promises a specific outcome.

Abstract architectural surfaces with fine grid lines and blue light traces representing layered digital systems
01

Custom software development

To support a specific operational process with an application designed for it, where configuring an off-the-shelf product would distort the process or leave essential parts unsupported.

Typical scope

Requirements analysis and process mapping, data modelling, application architecture, implementation of business logic and user interfaces, automated testing, and release into a working environment. Scope is agreed in increments, each of which produces functionality that can be reviewed in use.

Possible deliverables

  • Written requirements and a documented data model
  • Source code in a repository owned by the client
  • Automated test suite covering business rules
  • Deployed application in the agreed environments
  • Architecture notes and handover documentation
02

Web application development

To provide browser-based access to a system for defined groups of users — staff, customers or partners — with roles, permissions and workflows implemented explicitly.

Typical scope

Interface architecture and component structure, responsive and accessible layouts, authentication and authorisation, form and validation behaviour, state management against a documented API, and performance work on list, search and reporting views.

Possible deliverables

  • Responsive web interface across mobile, tablet and desktop
  • Role and permission model implemented in the interface and on the server
  • Reusable component structure and styling system
  • Accessibility and cross-browser review notes
  • Build and deployment configuration
03

Backend development and API integration

To hold business logic, data and integrations in a service layer that multiple clients can use consistently and that can be tested independently of any interface.

Typical scope

API design and documentation, database schema and migrations, authentication, background and scheduled processing, third-party integrations, error handling and logging, and the handling of partial failure through retries and idempotent operations.

Possible deliverables

  • Documented API with a stable contract
  • Database schema with versioned migrations
  • Integration adapters with retry and failure handling
  • Structured logging and diagnostic endpoints
  • Integration and contract tests
04

Cloud infrastructure and deployment

To run software in environments that can be recreated, reviewed and changed safely, rather than configured manually and remembered informally.

Typical scope

Environment design, infrastructure defined in configuration, container or serverless packaging, continuous integration and deployment pipelines, secret management, monitoring and alerting, backup and restore procedures.

Possible deliverables

  • Infrastructure configuration under version control
  • Automated build, test and deployment pipeline
  • Separate environments with documented promotion steps
  • Monitoring, alerting and log aggregation setup
  • Backup, restore and rollback procedures
05

Software modernization

To make an existing system changeable again — reducing the risk of each modification — without interrupting the operations that depend on it.

Typical scope

Assessment of the current codebase and infrastructure, identification of high-risk and high-change areas, characterisation tests around existing behaviour, staged runtime and dependency upgrades, extraction of modules behind interfaces, and incremental migration of functionality.

Possible deliverables

  • Written assessment of the current system and its risks
  • Prioritised, sequenced modernization plan
  • Tests covering existing behaviour before it is changed
  • Upgraded runtimes, frameworks and dependencies
  • Restructured modules with documented boundaries
06

Quality assurance and testing

To establish evidence that the system behaves as specified, and to make regressions visible before they reach production.

Typical scope

Test strategy suited to the system, unit and integration tests for business rules and boundaries, end-to-end coverage of critical paths, test data management, execution in the continuous integration pipeline, and a defect process in which issues are reproduced before they are fixed.

Possible deliverables

  • Documented test strategy
  • Automated test suites running on every change
  • End-to-end coverage of critical user paths
  • Defect reports with reproduction steps
  • Pipeline reporting of test results
07

Technical maintenance and support

To keep a delivered system secure, current and operational, and to continue developing it at an agreed pace after the initial release.

Typical scope

Dependency and security updates, monitoring review, corrective fixes, performance investigation, small feature increments, and periodic review of infrastructure cost and configuration. Working arrangements and priorities are agreed in advance.

Possible deliverables

  • Scheduled dependency and security updates
  • Issue triage with agreed prioritisation
  • Corrective fixes released through the standard pipeline
  • Monitoring and incident notes
  • Regular written status reports

08How services combine

Most engagements use several of these together

A new platform usually combines custom development, web application work, backend and API development, cloud deployment and quality assurance, followed by maintenance. Work on an existing system usually starts with modernization and testing before new functionality is added. Services can also be provided individually where a specific gap needs to be filled.

Server racks with blue indicator lights lining a clean data centre aisle