Hello, I'm Dane. Software Engineer at Delphi Measurement.

I build toolsfor people whobuild software

Embedded systems and the tooling around them: measurement hardware, deploy systems, native UI, agent infrastructure. Mostly Rust and Go, close to the metal, with an unreasonable interest in the failure cases.

  • RUST
  • GO
  • TYPESCRIPT
  • PYTHON
  • MCP
  • NATIVE UI
  • CLI
  • AGENTS

Selected work

8 projects

Experience

  • Software Engineer at Delphi Measurement

    Aug 2024 to Present
    • Own the hardware and software stack behind measurement products, from firmware on the device to the cloud services and the apps people use to operate them.
    • Cut system cost by roughly an order of magnitude by replacing proprietary hardware with custom embedded platforms.
    • Built an offline-first platform for tracking remote mobile assets, designed so the product keeps working where there is no network at all.
    • Work across the whole stack in production: Rust firmware on Raspberry Pi gateways, Go services on Postgres, and React and React Native front ends.
    • Reimplemented a Windows-only device driver as a portable Rust crate, bringing hardware that was locked to a single platform to Linux and macOS.
    • Built a reusable embedded Linux platform in Rust with signed over-the-air updates and automatic rollback, now the foundation under several products.
  • Software Developer at Earthletica

    Jan 2023 to Present
  • FUSE Program at Massachusetts Institute of Technology

    Jan 2023 to Feb 2023
  • Full Stack Developer at Psyop Capital

    Sep 2022 to Dec 2022
  • Winter Intern at Swyftx

    Jun 2022 to Jul 2022

Affiliations

  • QUT
  • MIT
  • UQCS
  • Griffith Eng

About

By day I own the hardware and software stack behind measurement products. Embedded Linux and Rust on the device, Go in the cloud, and the occasional reverse-engineered protocol to make proprietary hardware speak to something open. Replacing bought-in hardware with platforms built for the job took about an order of magnitude out of the cost.

The rest of what I build is the layer underneath other people's products: deploy tooling for clusters on machines you own, native UI driven from Rust, and infrastructure that makes a coding agent's context something you choose rather than something you hope for.

The common thread is failure modes. Most tools are pleasant when everything works and useless at three in the morning when they do not, so I spend most of my time on the second case: what the error says, whether the state is recoverable, and whether the tool told you the truth about what it did.