Tracks sheep locations with radio time-of-arrival and triangulation.
Wraps microcontroller register-level control in an idomatic Rust abstraction library.
Quickly switch between two network gateways from the system tray.
Computer vision research to track cattle movement. Submitted to the IVCNZ computer vision conference.
Designed and implemented graphical user interfaces with Qt and in the browser using jQuery, d3.js, Angular, and Vue. Mobile-friendly website styling with CSS and Bootstrap.
Developed RESTful APIs with Node.js and Python, using PostgreSQL, Sqlite and Mongo databases. Used different authorization schemes and designed database schemas.
Understand the basic search and sorting algorithms, complexity and data structures (COSC122). Competed in several programming competitions, placing 4th in the 2016 ACM ICPC competition.
Proficient Haskell programmer. Leverage functional design to improve code readability and using event-driven libraries such as ReactiveX.
Used many build automation tools such as CMake. Performed automated software deployment and configuration with Ansible. Management of VPS instances from AWS and Digital Ocean.
Daily user of Linux desktop and UNIX shell commands. Experienced at systemd service configuration and software package creation.
Set up the network for the university gaming club LAN events. Host my personal website, email and projects on a VPS. Familiar with network protocols from all layers of the OSI model.
Authored around 30 technical reports during my Engineering degree. Team lead of industry-backed honours project. Answered 12 questions on Stack Overflow.
Modified Ansible to work with embedded devices. Implemented an event-based WebSocket API in Lua.
Modernised Node.js codebase, automated build script.
Computer engineering focuses on programming low-level embedded devices and high-performance software.