I have been coding as a hobby for more than twenty years and professionally for six. I have several years of embedded experience on multiple platforms. I am currently not actively seeking employment. If you wish to contact me anyway, please send an email to


Bachelors of Science from University of California Los Angeles

Work Experience

Software Engineer at Facebook, Inc. (2015-Present) Senior Software Engineer at KIXEYE, Inc. (2013-2014) Embedded Software Engineer at Vulcan Wireless, Inc. (2012-2012) Software Engineer at ViaSat, Inc. (2007-2012) Software Developer for Robotics at UCLA (2007-2008)

Technical Skills


DSOrganize Organizer Suite for Nintendo DS
A software package written in C that runs on the Nintendo DS, taking advantage of the ARM9 and ARM7 processors as well as supporting all of the hardware peripherals (touch, sound, microphone, wifi, dual screens). This includes a complete media player, an organizer suite, a ground up implementation of a web browser that can successfully render websites using HTML, HTTPS, CSS, images and cookies and other significant accomplishments. My role in the project was that of designer, software developer, system tester and release manager. I also ran a database backend that allowed users to install additional free applications via WiFi.

SQLDisplay Visual SQL Query Manager for Nintendo DS
A program written in C that allows a MySQL database dump to be loaded and queries executed against the resulting data.

libdragon Toolchain and Development Libraries for the Nintendo 64
A custom-rolled version of gcc and newlib targetted towards the MIPS R4300 processor inside the Nintendo 64 as well as an open source system library written in C to aid in homebrew development. My role in the project is the project lead, lead maintainer of the repository as well as the developer responsible for low level drivers enabling users to use controllers, memory packs, rumble packs and most significantly interface with the hardware 2D and 3D rasterizing hardware for image generation. I have also coded several tools for manipulating data to create a toolchain that lets users compile working executable code for use on the Nintendo 64 on Windows and Linux.

DragonMedia Player for the Nintendo Wii
A media player written in C++ that runs on the Nintendo Wii which allows users to play back music from external devices connected to the Wii system or through Samba shares on a wireless network. My role in the project is designer, software developer, system tester and release manager.

YoungMX Media Player for Windows XP
A media player written in Visual Basic 6.0 that allows for library management and sharing as well as playback of media files located on a computer running Windows XP. I also run an update backend that allows users to in-place upgrade software, skins or plugins by one click install.

Hardware Nopaste Service for Xilinx Format Schematics
A web site written in PHP that allows hardware developers to upload schematic files generated with Xilinx's toolset. The schematic files are rendered via the web site and displayed as an image for other users to view and interact with. My role in this project included reverse engineering the schematic format, writing a rendering engine and coding the site backend to allow for storage of uploaded schematics in MySQL.