About us

An engineering company that measures itself by what happens after launch.

PENCILTIP LTD builds custom software, web applications, integrations, and the infrastructure that supports them. Our attention is on the long middle of a product's life — the years in which it must be changed, extended, and kept running.

Focus

What we concentrate on

We work on systems where correctness and continuity matter more than novelty: operational tools, data-handling services, customer-facing web applications, and the connections between platforms an organisation already depends on.

Engagements usually begin with an existing situation rather than a blank page — a process held together by spreadsheets, a legacy application nobody wants to touch, or two systems that were never designed to exchange data. We start by understanding what is actually in place before proposing what should replace it.

We take on work we can do well. Where a request sits outside our practice, we say so plainly instead of stretching a description to fit.

Code editor on a laptop next to a notebook containing a hand-drawn system diagram and a blue pencil
Reading the existing system before drawing the new one.

Engineering principles

Principles we work to

  1. 01

    Clarity over cleverness

    Code is read far more often than it is written. We optimise for the next reader, not for brevity.

  2. 02

    Small, reversible steps

    Changes are shipped in increments that can be reviewed, verified, and rolled back individually.

  3. 03

    Explicit boundaries

    Modules and services have stated responsibilities; hidden coupling is treated as a defect.

  4. 04

    Tests where they pay

    Coverage is concentrated on domain rules, integrations, and journeys that must not break.

  5. 05

    Written decisions

    Choices that are expensive to reverse are recorded with their context and trade-offs.

  6. 06

    Honest estimates

    Uncertainty is named rather than padded away, and scope is renegotiated when reality changes.

Pencil-drawn layered architecture diagram on grid paper showing devices, services, storage, and monitoring components with blue annotation marks

Delivery philosophy

Draw it, agree it, then build it

Before implementation we produce a sketch of the intended structure: the data model, the module boundaries, and the points where the system touches something outside itself. It is deliberately cheap to redraw, which is the point — objections are far less costly on paper than in production.

Delivery then proceeds in increments that each produce something usable. We prefer a narrow slice working end to end over several half-finished layers, because a working slice can be reviewed by the people who will rely on it.

Definition of done includes tests, deployment configuration, and documentation. A feature that only runs on a developer's machine is not finished.

Collaboration

How we work with client teams

We integrate with the tools a client already uses rather than imposing our own: your repository host, your issue tracker, your review conventions where they exist. Access, environments, and ownership of accounts are agreed at the start.

Communication is written by default and synchronous when a decision genuinely needs discussion. Every meeting that changes scope produces a written summary; anything not written down is treated as not agreed.

Where an in-house team is involved, we work to leave them more capable than we found them: reviews are explanatory, patterns are documented, and knowledge is not concentrated in a single person.

Tidy engineering workspace with dual monitors displaying dashboards and code, a whiteboard with faint diagrams, and daylight from a nearby window
Shared context beats individual heroics.

Maintainability

Our commitment to maintainable software

You own the code

Source, infrastructure definitions, and documentation live in your repositories from the first commit.

Standard technology

We prefer widely supported languages, frameworks, and services so that hiring and support remain possible.

Readable structure

Naming follows the language of the business, and folder structure reflects the domain rather than the framework.

Automated checks

Formatting, linting, type checking, and tests run on every change so quality is enforced by the pipeline.

Documented operations

Environment setup, deployment, and recovery steps are written down and kept next to the code.

Planned upkeep

Dependency updates and refactoring are scheduled work items, not emergencies.

Company details

PENCILTIP LTD

martincolem95@gmail.com

penciltipgroup.com