Kenneth R. Crudup – kenny@panix.com Use E-mail INSTEAD of calling (888) 454-8181 for fast responses! http://www.kennethcrudup.com/resumes UNIX SOFTWARE ENGINEER Last revision: April 2011 Offering Linux/Solaris/UNIX systems experience in the following areas: Applications/Utility/Kernel/Device/Embedded Systems development, User Applications, Porting, Operations, Communications, Networking, QA and Systems Admin Proficiencies All aspects of Unix (20 years) including, but not limited to: SunOS 4.1.X and Solaris 1 (13 years), Unix System V and Solaris 2.4 thru 8 (11 years), AIX (3 years), HP/UX (3 years), DG/UX (2 years), Linux (10 years), kernel and driver programming (12 years), applications development (17 years), and Embedded systems (6 years) Clearcase (8 years), SCCS (12 years), CVS (6 years), and Makefiles (12 years) Purify (3 years) and other build environments GDB (8 years), DBX (6 years), and other debugging environments ISA (10 years), PCI (6 years), VME (5 years) SCSI (8 years) and SBus (2 years) device and bus architectures C/C++ language (20 years), Java (2 years), Assembly language (20 years), Unix shell programming (18 years), threaded programming (7 years) and Perl (2 years) Networking (TCP/IP, LAN, Ethernet, IEEE 802.3) (14 years), Streams (3 years) and other peer-to-peer/IPC environments UFS (5 years), NFS (10 years), EXT-2 (4 years), ISO 9660 (4 years), and other filesystem environments and development. Systems Administration (18 years) Education BS, Electrical Engineering, Purdue University, 1988 Recent Work Experience Sony Ericsson Mobile Communications, San Diego/Redwood Shores, CA July 2009-Present Responsibilities: Developing BSP and Device Drivers for the Xperia Play Android-based handset using Qualcomm chipsets. Linux kernel, Android applications, JTAG, Input layer, WiFi and BT. Celio Corp, Salt Lake City, UT February 2009-June 2009 Responsibilities: Embedded developer for Linux and the Google Android OS. Wrote USB networking driver for Google G1 Android phone. Developed Java customer application on Android OS. Enhanced client's graphics-based application. Broadcom, Irvine, CA October 2008-January 2009 Responsibilities: Developing USB and SPI device-drivers for Broadcom's proprietary MIPS-based Linux kernels. ArtLogic, Pasadena, CA August 2008-October 2008 Responsibilities: Implementing Linux kernel drivers on a Freescale I.MX ARM processor for: several I2C-based devices, an SPI-driven device, and developing an input-layer for a keyboard device for real-time apps. WatchGuard Technologies, Seattle, WA December 2007-August 2008 Responsibilities: Kernel, device-driver and applications development for an Internet Security firm using embedded Linux on ARM, X86 and X86-64 chipsets. Netfilter modules, bootloader development, NAND flash drivers and Perforce source-code control were also the focus of my efforts. ONZ/VA, San Clemente, CA Feb 2007-December 2007 Responsibilities: Kernel, device-driver and applications development for this consulting firm. Subsets include embedded controllers, video and motion JPEG, USB host and device, WiFi (802.11) driver development, bootloader and JTAG, and ARM and PPC (PowerPC) architectures Village EDocs, Tustin, CA October 2006-May 2007 Responsibilities: Maintenance of and enhancements to a large-scale commercial fax service running on Solaris, including additional MySQL database support and fileserver modifications. IMS Associates, Anaheim, CA April 2006-April 2007 Responsibilities: Implementation, maintenance and development of embedded-Linux tools, applications and controls for qualification testing of In-Flight Entertainment (IFE) avionics systems for several aircraft types. These systems included Fibre-Channel and removable USB hard-disk drives, CDMA and GSM modems, AIT tape drives and DVD-recordable drives as standard equipment. I also enhanced the kernel and device-driver environment for these systems. Vetronix Corporation, Santa Barbara, CA June 2005-October 2005 Responsibilities: Implementation of an automobile CAN Bus (Controller Area Network) kernel driver for an XScale ARM embedded-Linux OEM diagnostic product. I was also responsible for the upkeep and development of the kernel, kernel modules, and a toolchain and filesystem for the embedded product. Western Digital Corportation, Lake Forest, CA May 2005-July 2005 Responsibilities: Enhancement of a Silicon Image SATA chip driver on an IOP321 Xscale ARM-based disk drive tester product running Nucleus RTOS. Ideal Industries, San Diego, CA May 2005-April 2006 Responsibilities: Implementation of a Qt-Embedded based GUI for an OEM cable-tester product on an embedded-Linux system running an Xscale ARM processor. Also responsible for the maintenance of the toolchain and filesystem, as well as the MMC/SD kernel driver and the Qtopia PIM framework. Visijet Corporation, Irvine, CA August 2004-January 2006 Responsibilities: Implementation of the embedded ARM Linux-based, Qt GUI provided touchscreen front-end controller for the "PulsaTome" medical device, from start (bootloader) to finish (Qt-based GUI and related utilities and serial communications protocols to the medical device's hardware. Thales Avionics, Irvine, CA August 2004-November 2004 Responsibilities: Implementation of the embedded ARM Linux-based kernel portion of their IPCU In-Flight Multimedia System avionics. This involved getting a 2.6 kernel up and running on custom hardware based on the TI OMAP processor. IO Interconnect, Santa Ana, CA June 2004-August 2004 Responsibilities: Getting their unreleased multimedia device, based on an embedded Intel-based architecture running Linux to market. I am the device and build lead, working with the GUI lead. Ixia Communications, Calabasas, CA September 2003-May 2004 Responsibilities: At Ixia I was the Senior Software Engineer for the “IxiSCSI” SCSI-over-IP testing product. This product was primarily software run on their proprietary testing hardware, an embedded system running Linux and using Power-PC CPUs EarthPC.com, San Juan Capistrano, CA August 2003-Present (Sporadic Contract Work) Responsibilities: At Earth I implemented and maintained several device drivers (networking, touchscreen, and LCD) for their “mARMalade” Sharp/ARM 720-based single-board computer running Linux. I was also responsible for creating and modifying their bootloader, kernel and flash file system for specific customer needs as required. I was responsible for moving their architectures to new kernels as they were released. Pacific Digital Corporation, Irvine, CA April 2002-September 2003 Responsibilities: At PDC I was the Senior Software Engineer responsible for all aspects of Linux. I wrote a kernel block-device driver for the ADMA (Advanced DMA) ATA host-adapter board and associated utilities. I wrote the firmware and application software for the PDC MemoryFrame digital picture-frame’s embedded Linux system