Lyndon Purcell

Senior Software Engineer · Developer Tooling & DX

I work upstream. I'd rather remove a problem than solve it, and most of my best work has been in static analysis, language tooling, and developer experience: the quiet kind that clears friction for the people around me.

Go · Python · TypeScript.

  • Most bad developer experience, bugs included, is bad abstraction: too much indirection, or the wrong concepts entirely, until the problem is harder to reason about than it needs to be.

    Example: React.

  • The best fix removes the whole class of problems.

    Example: A static analyser beats a hundred review comments.

  • If the simple version works, the clever version is a liability.

    Example: This site is plain HTML on a CDN. It used to be a Go server, and that was the wrong call.

  • Small, sharp tools you control.

    Example: I work in Neovim and the terminal, tools I can see all the way through and tune to my own quirks.

  • Keep a deterministic layer you control under anything non-deterministic.

    Example: AI-written code goes through the same analysers as mine.

Pathify Jan 2025 – Present

Senior Software Engineer · Integrations · Remote

Built and own Pathify's developer-tooling suite for its in-house config language: Preheat (a static analyser), Splash (a language server), and Stir (a formatter), taking a tooling-less DSL to IDE-grade tooling. Adopted across the whole engineering team; teammates called it "a game changer."

Also led user provisioning, Pathify's most complex integration, and maintain the team's CI/CD pipelines and deployments.

OK200 Software & Apps Sep 2022 – Dec 2024

Software Engineer · Melbourne, Australia

Shipped backend and frontend across more than a dozen SaaS products: APIs, AWS infrastructure, and async task processing.

Australian Bureau of Statistics Jan 2022 – Jul 2023

Operations Analyst · Geelong, Australia

Data analysis, database maintenance, and automation scripting.

Stem · Coaching SaaS Go · SvelteKit · Flutter · Postgres

Solo-built · In development

A multi-tenant Go API with per-tenant query isolation, JWT auth with rotating refresh tokens, and Stripe Connect payments. Built end-to-end with a SvelteKit web app and Flutter mobile.