James Waples

Experienced Rust developer

Edinburgh, Scotland

Hi, I'm James, a Rust, electronics and CNC enthusiast. My work revolves around the wonderful Rust programming language, gladly using it both professionally, personally and in open source to write high quality code for web, Linux (embedded and desktop), microcontrollers and realtime systems.

I've been programming for about 20 years since I was 10, beginning with 8 bit assembler, Visual Basic and C. I started my professional career at 18 with PHP web development, then moved towards the JavaScript/Typescript ecosystem for a while. I discovered Rust about 5 years ago and am now working in it fulltime.

I'm motivated by engaging software problems, challenging optimisations, interesting performance debugging and making a polished product for people to use. I strongly believe we work best in a team, each of us adding to something greater than the sum of parts.

I also have a good interest in electronics. It was a quick discovery after computers and has become a long running hobby, most recently developing a Rust EtherCAT controller for microcontrollers.

Melding electronics and programming lead me to discover the expensive yet fascinating world of DIY CNC machines, myself having built at least 5 of improving capabilities (and heft) over time, with a parallel dream of building motion control software one day. Stepping into the garage to work on/with the machine with one's hands is a great escape from the keyboard.

Top skills

Professional

Used every day, strong knowledge

  • Rust
  • Github (reviews, PRs, etc)
  • Linux (SSH, CLI, systemd, etc)
  • Docker

Proficient

Used often, good knowledge

  • CircleCI
  • PostgreSQL
  • Rust no_std development
  • EtherCAT
  • KiCAD PCB design

Familiar

Used a little, reasonable knowledge

  • CAN networking
  • Battery management
  • Bitbake
  • Kubernetes
  • Linux realtime tuning

Previous

Used a while ago but could be picked up again quickly

  • AWS (ECS, RDS, EC2)
  • Google Cloud Platform
  • Typescript
  • SASS
  • Node.js

Open source projects

Work history