Work Experience

2020–Current
Apple Senior Software Engineer
  • All phases of full stack development, including project proposals, application deployment, and creating analytics dashboards to understand user behavior.
  • Documented and advocated for best practices, including designing reusable components, and building wrapper classes and mixins to solve UI challenges site-wide.
  • Mentored new developers, to share knowledge and promote best practices.
  • Developed GUI applications for pre-silicon emulation and debugging, utilizing datasets larger than 1TB.
2007–2020
Control Z, Inc. Senior Software Developer
  • Developed embedded software in C and C++ to be intuitive, performant, reliable, and safe. Applications include large-scale LED installations, fitness devices, and controlling a high voltage heating element.
  • Developed applications to accelerate workflows, including firmware simulation, and empowering designers to construct UI more efficiently.
  • Used gdb and Ozone to debug code running on Nordic NRF, STM32, and FreeRTOS.
  • Implemented text and graphics rendering layers on embedded systems, with compression to fit large character sets and UTF-8 strings.
  • Designed and implemented realtime maps for an embedded fitness device, with GPS tracking, rotation, scaling, and custom bitmap compression for increased performance.
  • Prototyping, UI design, and UX advocate for a popular fitness tracker.
  • Component selection, PCB design, and engineering of hardware installations, including an all-weather 500-watt LED sign.
  • Developed a live coding framework, virtual machine, and network architecture for an embedded platform, enabling rapid iteration and experimentation on-site.
  • Developed configuration interfaces, enabling non-programmers to modify software behavior and appearance.
  • Solved graphical and motion design challenges using OpenGL and WebGL, enabling visual experiences with millions of sprites, at 4K resolution.
  • Developed algorithms for realtime analysis of motion, audio, and touch-based gesture recognition.
  • iPhone and iPad development, including a best-selling multi-touch musical instrument on the App Store.
  • Developed CMS applications, using various databases, front-end frameworks, and asset processing tools.
2006–2007
Second Story Interactive Studios Interactive Developer
  • Developed interactive media experiences to be responsive, engaging, and performant.
  • Collaborated with designers to create fresh user interfaces and graphical effects.
  • Built a configurable website framework, allowing designers to modify and perfect the visual design, without learning a programming language.
  • Managed large data sets, and built custom APIs to search and retrieve assets.
2005–2006
Freelance Web Developer
  • Designed and built a website for a regional newspaper, including an events calendar, and maps to nearby distributors.
  • Developed a CMS using Ruby on Rails and MySQL.
2002–2005
Mentor Graphics Data Integrity Developer
  • Developed an automated pipeline for collecting data and user requests, and updating staging and production databases.
  • Curated a standardized dataset of major cities around the world.
1997–2002
Freelance Audio Engineer
  • Developed a web-based composition tool for extracting pleasant sounds from audio input, and synthesizing new beats and musical phrases.
  • Developed lightweight applications for processing audio, and custom DSP effects.
  • Music composition, sound design, and audio mastering for full-length and short films.

Education

1997
  • University of California at Davis Bachelor of Arts: Music

Skills

  • Code architecture
  • Code review
  • Compression
  • Configuration driven development
  • Debugging
  • Graphics
  • Hardware prototyping
  • Human-centric interfaces
  • Live-coding
  • Mentoring
  • Motion design
  • PCB design
  • Project planning
  • Refactoring
  • Simulators
  • Software prototyping
  • Soldering and assembly
  • UI Development
  • Unit testing

Technologies

  • Arduino
  • Autodesk EAGLE
  • ARM
  • Bootstrap
  • C
  • C++
  • CSS
  • Django
  • Docker
  • ESP32
  • FreeRTOS
  • Git
  • GLSL
  • HTML
  • iOS
  • JavaScript
  • Jira
  • KiCad
  • Linux
  • MySQL
  • Node.js
  • Objective-C
  • OpenGL
  • OpenSCAD
  • PixiJS
  • Python
  • React
  • Redux
  • Sass
  • Three.js
  • TypeScript
  • WebGL
  • Webpack
  • Xcode

Speaking Engagements

2019
2018
2018

Interviews

2020
2019