About Me

  • UNIX programmer since 1982
  • Linux programmer since 1994 - Helped get a Linux distro "out the door"
  • UNIX/Linux device drivers, file systems, tools, applications
  • Embedded Linux BSPs, device drivers, etc.
  • ARM, PPC, X86, FPGA (Microblaze and other IP cores)
  • Reviewed books on Yocto development

Why do I do this?

I got my start in writing low-level software when I built my first system from parts (not boards) and then modified it with circuits I designed, wire-wrapped, and wrote code for - as a US Navy ET.

Along the way, I've used my leadership skills as a team leader and small group manager, and continue to use my home office systems as sandboxes for new operating systems, to implement and test new networking protocols, and to continue to develop embedded software for various processors.

What do I do when I'm not writing code? I am an avid fountain pen collector and amateur mechanical watchmaker.

Resumes and Curriculum Vitae

Available in several formats:

My resume may exist on other sites, but this page always has the most recent and up-to-date info.

References are available upon request.


(Click here to see my lab.)

My lab is equipped with:

  • Workstation Linux: Centos, Ubuntu
  • Embedded Linux (Yocto, Buildroot, other) on ARM and Intel boards
  • Windows 10 and 8
  • Mac OS X 10.x

Office Equipment and Server

The systems in my lab are networked via 10/100/1000Base-T and/or Wi-Fi 802.11b/g/n, and are connected to the internet via fiber optic (70/35).

The web/email/network server - you're reading this on it right now - is running on Centos 7 (SELinux policies, fail2ban, etc.) using data on a 16TB RAID-5 NAS (some data backed up to a second 6TB RAID NAS).The server and RAID systems are resident on a wall shelf visible on pictures of the lab.

The lab is equipped with networked tools (scanners, printers, WAPs, etc), handheld computers, embedded development boards, and test equipment.