
Kernel developer
Pocatello, Idaho Area

Kernel developer
Pocatello, Idaho Area
Kernel programmer with good experience writing device drivers for all kinds of devices: Ethernet, PCI, SBus, serial, video, USB. Strong knowledge of layer 2 protocols (Ethernet, FDDI, Token Ring, 802.1d spanning tree, etc). Good knowledge of layer 3 and up (IP, TCP, UDP, HTTP, FTP, SSL). Interested in applications that need to run close to the bare metal.
linux kernel, freebsd kernel, openbsd kernel, network device drivers
(Non-Profit; 5001-10,000 employees; Computer & Network Security industry)
October 2006 — Present (1 year 8 months)
Having fun working for the National SCADA Test Bed assessing the security of control systems for asset owners and software vendors.
(Non-Profit; 11-50 employees; Computer & Network Security industry)
January 1998 — Present (10 years 5 months)
Wrote an IP filtering Ethernet bridge capable of running on multiple architectures with many common Ethernet devices. The bridge includes most features found in commercial devices: 802.1D spanning tree, inspection ports, and both Layer 2 and Layer 3 filtering. Wrote device drivers for many different types of devices: IDE disk controller, PCI/SBus Ethernet cards, hardware cryptography devices, multiport RS-232 controllers, audio devices, etc. Wrote a PPP Over Ethernet translator.
(Privately Held; 11-50 employees; Computer & Network Security industry)
September 2003 — October 2006 (3 years 2 months)
Wrote zero-copy packet capture kernel code portable to FreeBSD and Linux. Added support for IP/TCP/UDP hardware checksum offloading. Added support for various hardware devices including USB and Ethernet chips. Helped maintain codebase in all stages of life cycle.
(Educational Institution; Computer & Network Security industry)
July 2001 — September 2003 (2 years 3 months)
Developed device drivers for hardware cryptography accelerators including development and integration of the public cryptography framework into OpenBSD and OpenSSL. Performed exhaustive measurement of framework performance. Ensured that cryptographic drivers worked on all architecures (i386, SPARC, MacPPC, and Alpha). Integrated OpenBSD/sparc64 port starting with NetBSD/sparc64 work and developed graphic console, PCI host bridge, keyboard, serial and other drivers for this port.
(Privately Held; 11-50 employees; Computer & Network Security industry)
December 1999 — July 2001 (1 year 8 months)
Wrote hardware drivers and other code for a firewall product, including drivers for two PCI cryptography accelerators and support for accessing the systems management bus for environmental and state monitoring of deployed machines. Wrote kernel support code for a propietary hot standby protocol. Maintained branched source tree including merging vendor supplied patches and fixes along with local changes. Assisted with documentation for operations department and worked with that department on deployment and problem reports.
(Information Technology and Services industry)
September 1997 — July 1999 (1 year 11 months)
Developed database backed SNMP-aware scripts for network monitoring, management, and diagnosis of campus ATM/Ethernet network.
(Privately Held; Computer Networking industry)
November 1994 — February 1997 (2 years 4 months)
Managed UNIX based email services, include installation of UNIX systems and services, network monitoring and configuration, systems programming for customer/administrator use, security analysis, and resource planning. Wrote utilities for system accounting and demand-based load balancing.
BS, Computer Science, 1991 — 1999
Amateur Radio operator (callsign AI4JW)
Virginia Citizens Defense League (VCDL), National Rifle Association (NRA), Piedmont NRA Instructors, American Radio Relay League (ARRL)
3rd Place -- FISTS Fall 2005 CW (Morse code) Sprint (QRP)