
Software Engineer at On-Site.com
San Francisco Bay Area

Software Engineer at On-Site.com
San Francisco Bay Area
I'm a software developer with varied experience and a lot of embedded and system software concentration. I like any kind of resource-constrained computing -- heavy optimization, embedded devices, unusual systems or hardware, and code-generation are all things I've enjoyed about different platforms. I'm relatively platform-agnostic, with significant professional experience on Win32, Linux 32- and 64-bit, PalmOS 4.x and 5.0, PocketPC, Windows Mobile 5.0 -- usually several at once. I've done a lot of cross-platform work, including desktop vs mobile.
I'm also fairly language-agnostic. I'm especially good in C/C++ and Ruby, but fundamentally I believe in the right tool for the right job, and most languages have a job they're really good for. For that matter, if your team only knows one particular language, you should probably use it, and I should use it if I'll be working with them.
I enjoy working with open-source software of various kinds, and have done a fair bit of it. My online portfolio has a few examples.
My interests include multimedia (image, video and some audio), systems software and resource-constrained software, handhelds and embedded computing. I enjoy OS and systems work, but I'm not currently looking for a device-driver-only position.
I like metaprogramming and automatically-generated code. I've built mini-languages, code postprocessors and mini-compilers, including two powerful code generators in commercial use (the rest have been for academic, open-source, or personal use). I'd happily do more code generation work, but I'm not sure where I'd look for job openings. I don't see it as a posted requirement for positions.
I have significant experience in C, C++, Perl, Python, Ruby (including Ruby on Rails), and several assembly languages. I have a little bit of experience in LISP, Vala, Java, and many, many other languages. What can I help you with?
C, C++, Ruby, handheld computing, multimedia, code generation, embedded
(Privately Held; Real Estate industry)
October 2009 — Present (2 months)
Ruby on Rails, JRuby, Java, JSP
(Public Company; 10,001 or more employees; Computer Software industry)
May 2007 — October 2009 (2 years 6 months)
Software engineer working with former PalmOS team on Linux-based platform.
(Privately Held; 11-50 employees; Computer Software industry)
February 2006 — April 2007 (1 year 3 months)
System software engineer, Tools engineer, Win32 and Linux
(Privately Held; 11-50 employees; Computer Software industry)
August 2005 — January 2006 (6 months)
Application software engineer, multimedia engineer, Win32 and PocketPC
(Privately Held; 11-50 employees; Computer Hardware industry)
June 2004 — July 2005 (1 year 2 months)
Application/Multimedia Software Engineer, Win32 and PalmOS
(Public Company; 1001-5000 employees; NVDA; Computer Hardware industry)
April 2003 — March 2004 (1 year )
Linux driver software engineer, ix86 and iTanium
(Public Company; 5001-10,000 employees; Computer Hardware industry)
March 2002 — April 2003 (1 year 2 months)
System software engineer, embedded Linux and some Win32
(Public Company; 1001-5000 employees; PALM; Computer Hardware industry)
March 2000 — March 2002 (2 years 1 month)
OS Software Engineer, PalmOS, MacOS 9, Win32
(Privately Held; 11-50 employees; Computer Hardware industry)
March 1999 — March 2000 (1 year 1 month)
System software engineer, Win32 and WinCE
(Public Company; 51-200 employees; Computer Software industry)
June 1998 — September 1998 (4 months)
Application Software Engineer, MacOS 9 and Win32