Who Am I?

I am a firmware engineer based in the San Francisco Bay Area currently working at Davis Instruments. I have nine years of professional experience contributing to embedded products at all stages of the product life cycle, from sketching out diagrams on the whiteboard to flashing boards on the factory floor.

I’m not a full-stack developer, but you might say I’m a full-stack debugger - I’m not afraid to diagnose problems at any layer, from the hardware all the way up to the backend server. I may have never written an Android application, but that’s never stopped me from sending patches to the mobile application team.

I am something of a developer tools geek - I am just as comfortable scripting APIs as I am plumbing through Makefiles or automating the debugger. I try to understand the tools at my disposal to the fullest and when appropriate, I’m not above building my own tools.

My history

I grew up hacking on Python scripts through high school, mostly writing simple CGI scripts (back when shared hosting was the standard).

In college, I studied EECS at UC Berkeley, where I picked up a bit of EE and a lot of CS. After about a semester, I joined CalSol, the solar vehicle team because someone promised there would be cookies. I ended up spending most of my time at CalSol, where I:

  • Built a telemetry system, a couple of times.
  • Soldered a few boards, plus a few square meters of solar array.
  • Raced a solar car across 1600 miles on solar power alone.
  • Helped design the architecture for the electrical system of the next car.

My days of sanding shell molds and holding up the array are now behind me, but I still keep tabs on the solar car racing community and CalSol.

After graduating, I worked at Keysight Technologies (formerly known as Agilent, formerly known as Hewlett-Packard) in the High-Frequency Measurements group for four years. While there, I primarily worked on the UXG series of signal generators.

I currently work at Davis Instruments (now part of AEM), where I develop weather-related products. In my time at Davis, I’ve:

  • Written a partial network stack for the WeatherLink Live, including an mDNS responder and DHCP client.
  • Put together Web Bluetooth tools to test device BLE functionality in advance of the mobile application team developing the official mobile app.
  • Handled all of the firmware for AirLink - a WiFi particulate matter sensor - from concept prototype to initial board bring-up to production programming tools.
  • Built streaming packet-capture functionality into firmware to allow real-time analysis with Wireshark
  • Written the weather radio management and data processing code for the WeatherLink Console on a custom AOSP platform.