Gavin A Hayes
gavin@computoid.com | computoid.com | github.com/G4Vi | metacpan.org/author/GAHAYES
Skills
System Programming: Cross-platform and embedded development in C, C++, and Rust
WebAssembly: Porting existing software, integration, tooling
Full-stack Web Development: Typescript/Javascript, Perl, PostgreSQL, HTML+CSS, Fastify, React
Developer Tooling: Build systems, debugging, reverse engineering, CI/CD
Technical Writing and Communication: tutorials, reference material, changelogs, blog posts, bug reports, presenting at conferences, sync and async communication and collaboration with developers, end users, and other stakeholders
Experience
Dylibso - Senior Software Engineer (Remote)
May 2023 - August 2025
- Built an instrumenting recompiler for adding observability to existing WebAssembly modules using Binaryen. Co-hosted Wasm Observability Workshop
- Developed the cross-language Extism framework for building with WebAssembly. Worked on C++, Python, C, and Perl support. Presented Extism Perl SDK at The Perl & Raku Conference (TPRC) 2024
- Developed XTP Processor, a queue and processing system (Rust, PostgreSQL, Typescript) to test and validate uploaded WebAssembly modules conformed to an interface.
- Added C++ support and improved Python support to OpenAPI-like schema bindings generator (XTP bindgen), to ease WebAssembly plugin development.
- Built full-stack OAuth client and server implementations for mcp.run to enable secure integration between AI applications and external tools/services via the Model Context Protocol (MCP). Performed production operations including deployments, database migration troubleshooting and manual fixes, log monitoring, and system observability with Datadog.
TestVonics - a Raptor Scientific Company - Lead Software Engineer (Peterborough, NH)
May 2017 - May 2023, interned summers 2014-2016 and winter 2016
- Built a touchscreen handheld remote for an Air Data Test Set using C, C++, Qt, and Debian linux on a BeagleBone.
- Upgrades and Maintenance to a Win32 MFC based Air Data Test Set and Calibrator, including migration from VC++6 and Windows XP to VS2017 and Windows 10 IoT Enterprise, addition of Quick Leak Test, STEP function, and addition of several safety features and QoL improvements.
O2X Human Performance - Web Developer (Remote, Contract)
May - September 2018
- Repaired and extended assessment application. AWS Elastic Beanstalk Node.js, Zapier, Typeform
Open Source Software Development
- Media HTTP File Server (2018 - PRESENT) - Built an event based HTTP media server and web app for streaming media via the browser or other applications using Perl, C, JS, and WASM. github.com/G4Vi/MHFS
- Actually Portable Perl (2022 - PRESENT) - Ported Perl to the Cosmopolitan Libc, created single-file self-contained builds of Perl that run on six operating systems with the same binary, created a toolkit for creating binary releases of Perl applications. computoid.com/posts/Perl-is-Actually-Portable.html computoid.com/APPerl/ Talk at TPRC 2024
- Cosmopolitan Libc (2022 - PRESENT) - Contributed various bug fixes and improvements to the Cosmopolitan Libc. github.com/jart/cosmopolitan/pulls?q=is:pr+author:G4Vi
- psx_screen_dumper / screen_data_reader (2021-2022) - Built a pair of applications to exfiltrate the BIOS or save game data from a PlayStation via video by using OpenCV via python github.com/G4Vi/psx_screen_dumper github.com/G4Vi/screen_data_reader/
- mkpsxiso (2021-2022) - Improve CDDA pregap handling for bit-perfect unpacking and repacking of CD images. Add extracting CDDA as FLAC (instead of raw PCM) with repacking support to save disk space.
- tonyhax (2021) - Found a buffer overflow and developed MIPS shellcode to exploit a save game feature in a PlayStation game. github.com/socram8888/tonyhax/pull/62
- GIF Encoding (2021) - Added transparency support to a GIF encoder and ported the GIF encoder to Perl. github.com/lecram/gifenc/pulls?q=is%3Apr+author%3AG4Vi, github.com/G4Vi/gifenc, metacpan.org/pod/Image::GIF::Encoder::PP
- dr_flac (2020-2022) - Fixed infinite loop bug and removed unaligned 32-bit loads from metadata parsing in popular FLAC decoding library. github.com/mackron/dr_libs/pulls?q=is:pr+author:G4Vi
Formal Education
Worcester Polytechnic Institute, Worcester, MA - BS in Computer Science
August 2013 - May 2017
Collaborated to make a new version of Bomblab in Python and C, a computer based x86 ASM reverse engineering assignment for senior year MQP project.