Freelance CI/CD and developer experience engineer

I spent a stretch on a bank's Developer Experience team, which is a good way to learn that most pipeline problems are really organisational problems wearing a YAML costume.

Scope

What I take on

Pipeline design and repair

Azure DevOps, GitHub Actions and Jenkins. Builds that are fast enough that people stop working around them, and releases that are dull enough to do on a Friday.

Release and change automation

Automated releases with change tickets generated as a side effect, so change management stops being a manual tax on every deploy.

Dependency and compliance toil

RenovateBot for dependency updates and OpsLevel for service ownership and compliance reporting — the work that otherwise turns into a nagging Slack channel.

Self-hosted runners

When hosted CI gets expensive or too restrictive, moving to self-hosted runners under configuration management, with the cost and control that brings back.

Method

How it runs

  1. 01

    Measure the thing people complain about

    Usually the complaint is "CI is slow", and usually the real cost is somewhere nobody has timed. Find it before rewriting anything.

  2. 02

    Automate the boring gate, not the judgement

    Scanning, dependency bumps, ticket creation and compliance evidence should be automatic. Whether to ship on a given day should stay a human decision.

  3. 03

    Reduce the number of things to remember

    The measure of developer experience is how much a developer has to hold in their head to release safely. Lower is better, and it is a real deliverable.

Evidence

Where this has been done before

  • Knab — Developer Experience Automated compliance reporting and dependency updates with OpsLevel and RenovateBot, cutting technical debt and the cognitive load carried by product teams.
  • Knab — pipelines Owned and optimised the Azure DevOps pipeline estate, and designed an automated release mechanism with auto-generated change tickets for a regulated environment.
  • 3D Hubs Moved CI/CD off a hosted service onto self-hosted Jenkins managed by Puppet, lowering build costs, and wrote a custom GitHub Action bot in TypeScript that automated the deployment workflow end to end.

Fit

Probably worth a conversation if

  • Releases are a ceremony, and everyone dreads them.
  • Your build times have quietly doubled and nobody owns the pipeline.
  • Dependency updates and compliance evidence are done by hand, or not at all.
  • You want a platform or DevEx function set up without hiring a whole team for it.

Contact

Tell me what is actually broken

The contact details live on the front page. If I am not the right person for this, I will say so.