
Principal Software Engineer
Sonos, Inc. · Full-time
Aug 2021 - Present
• 3 yrs 10 mos
Principal Software Engineer
Platina Systems Corporation · Full-time
Feb 2016 - Aug 2021
• 5 yrs 7 mosMaintained and upstreamed modifications to Linux kernel. Developed system applications in
Golang. Developed Linux kernel features. Maintained coreboot port. Maintained u-boot port.
Developed build and release systems.
• Created goes-boot application which provides a GRUB-syntax replacement written in Golang which uses the Linux kernel kexec() syscall to run the user selected kernel.
• Maintained and enhanced goes-bmc application which provides control and status monitor functions on an attached ARM BMC (baseband management controller).
• Wrote device drivers to communicate between Linux hosts connected by I2C bus
• Migrated Platina from modified Linux kernel to standard kernel with dkms module support
• Introduced the use of Debian packaging to distribute Platina Software
• Added ACPI table support to coreboot for Platina's MK1 platform
• Integrated and maintained coreboot bootloader for x86 platforms
• Integrated and maintained u-boot bootloader for arm platforms
• Built and maintained release and distribution tools
• Built and maintained build verification and test in Jenkins, integrated with GitHub

Member of Technical Staff
Meraki, Inc.
Apr 2010 - Feb 2016
• 5 yrs 11 mosLinux kernel, low-level expert, and generalist, primary developer of several successful Meraki products. Took hardware prototypes from various Asian ODMs and integrated them into Meraki’s Cloud Managed architecture. Worked to evolve the firmware architecture.
• Performed bring up of two of Meraki’s most popular 802.11n Access Points, the MR12 and MR16 (MIPS based)
• Ported Meraki system to PowerPC and developed support for the Meraki MR24 (first 3x3 802.11n AP)
• Developed the software for the first two Meraki Ethernet switches, the MS22 (Gigabit Ethernet) and MS42 (10Gigabit Ethernet)
• Introduced the first use of NAND storage in Meraki products
• Introduced the first use of PWM (for tricolor LEDs) in Meraki products
• Maintained Linux kernel port which supported most all Meraki products from a single kernel source tree
• Designed hardware interface to support Bluetooth SoC in Meraki products
• Developed “brickless” firmware update procedure for NOR FLASH
• Performed bring up of the first ARM Cortex A9 processor used at Meraki
• Developed technique for upgrading safely using the Linux kernel as a bootstrap and the kexec() system call, fixing many kexec() kernel bugs
• Implemented code review and continuous integration server with Gerrit and Jenkins
• Implemented static analysis via Coverity
• Maintained compilers and tool chains and other aspects of build system

Member Technical Staff
Ayr Networks
May 2001 - Jan 2005
• 3 yrs 9 mosCharged with achieving “stretch” goal of support Cisco C7200 router. Developed Linux MIPS kernel port and ported to all AYR-supported platforms. Implemented bus drivers for PCI, PCMCIA, and Hypertransport bus bridges. Achieved compatibility with Cisco implementations by writing drivers for flash file systems and creating interface layers between standard and Cisco drivers, including those for IDE and Ethernet.
• Developed robust hot-plug PCI subsystem
• Achieved SMP support on SiByte 4-way MIPS processor
• Very stable MIPS platform - we could even self-host our build systems on embedded hardware