You are on page 1of 2

Pearce J.

Barry
pearce@thebarrys.net 512-589-6969

Objective
To work in a development position within a growing tech company, where I can channel my passion for development and success into meaningful contributions and thoughtful direction.

Technical Skills
Programming Languages:

C and C++ assembly (x86, PPC, ARM, MIPS) GNU (gcc/g++, gmake/make) embedded (Code Warrior, Code Composer, MULTI, IAR) Microsoft (Visual Studio, nmake, masm)

scripting (shell, Python, Perl, Tcl) other (JavaScript, HTML) revision control (subversion, git, CVS, Perforce, Vault) debugging (gdb, kdb, ddb, Valgrind, dynamic probes, DTrace, IDE-based) profiling (oprofile, cprof, gprof, Vtune) Microsoft (Windows, DOS)

Toolsets:

Operating Systems:

Unix/*nix (Linux, FreeBSD, Solaris, AIX) embedded/RTOS (ThreadX, XOS, MQX, MiCOS)

Additional Items:

Excellent communication: I work very well within a group and with other groups (hardware, QA, support, manufacturing, etc.). Self-motivated problem-solver: I enjoy diving into challenges (new hardware bringup, software design, etc) and continue to work well under pressure. An eye towards the business: making suggestions regarding things we might do to benefit the company while providing my best work for the company.

Experience
NetApp (acquired Cache IQ) Software Developer (November 2012 current) Cache IQ Software Developer (July 2010 November 2012) Provide FreeBSD (kernel drivers/OS) development/porting for a dual-socketed, multi-core Intel Nehalembased server, including platform/device-drivers, the network stack, libraries, and application work. Make Linux and Python additions/modification, and utilize the Fulcrum Microsystems API (adding features and fixing bugs as necessary) for an off-the-shelf 10GbE switch product we customize for our use. TippingPoint/3COM Software Developer (March 2010 July 2010) Maintained 'SYN proxy' code in the IPS engine for mitigating DDOS attacks. Storspeed Software Developer (January 2009 March 2010) Provide Linux (kernel drivers/OS) and XOS (RTOS) development/porting/maintenance for a 32-thread XLR Network Processor (NP) based system and a custom 10GbE switch. Created custom tools to measure different aspects of performance of an XLR-based system. Fulfill Linux requests (i.e. create/modify kernel drivers and OS/Applications) and utilize Fulcrum Microsystems API, adding features and fixing bugs as necessary, for the 10GbE switch product.

Uplogix Software Developer (December 2007 January 2009) Provided all Linux kernel driver and OS development/porting/maintenance for several existing custom hardware platforms and new custom hardware platforms (all x86-based). Developed/maintained embedded software for HCS08 processors. Interfaced regularly with hardware, QA, manufacturing, and support teams. BreakingPoint Systems Software Developer (June 2006 December 2007) Implemented/maintained applications which controlled and monitored high speed Ethernet traffic generation engines (up to 40Gbs of traffic per second). Provided Linux kernel driver development/modification for use on complex, custom hardware. Wore different hats as-needed, including reporting system health and tweaking the boot process. Mirage Networks Software Developer (July 2005 June 2006) Key provider of system installation and general Linux OS (boot processes, runtime, services, performance, KDB) support. Maintained custom and stock kernel drivers, including modifications to the 2.6 kernel. Interface with support and sales to resolve field issues/requests. Hubbell Building Automation Software/Firmware Developer (March 2003 July 2005) Created and supported firmware for custom Coldfire-based touch-screen GUI device and multiple LonWorks-based devices (embedded Neuron processors). Supported firmware for an HC12-based device and a MSP430 device. Intimately involved in custom hardware review, bring-up, and troubleshooting processes. Investigated then-emerging Zigbee wireless offerings from chip manufacturers. Developed and documented test software and procedures for production use. Utilized ThreadX (with PegX GUI package) built with Multi 2000 IDE, MiCOS built with Codewarrior and IAR IDEs, and Neuron C built with NodeBuilder IDE. Surgient Networks Software/Firmware Developer (June 2001 March 2003) Created, modified, and supported ThreadX firmware, Linux applications/OS (port proxying, packet sniffer, boot process, system setup) and drivers (enet, i2c, ecc, serial, ide, custom), and customization of Phoenix BIOS. Designed and implemented software for PPC and Pentium PPC processors, and including Serverworks x86 and Marvell chipsets. HP (Tandem Division) Test Engineer IV (Nov 1997 June 2001) Designed and implemented firmware and test software for Motorola 68k and Power PC-based boards, containing PCI, SCSI, VME, Ethernet, ServerNet (network protocol currently proprietary to HP), proprietary ASICs/bridges, flash storage devices, and fiber signal technologies. Hobbyist/Miscellaneous (1997 present) created a cross-platform GUI application using Python and WxWidgets to drive configuration and execution of a embedded device on the network. created a simple packet inspector which would dissect incoming packets and insert particular packet info into a MongoDB database for later analysis/correlation. performed driver work for a Linux kernel to support wifi, aufs, and GPIOs and I2C-based ADC device access on a Freescale i.MX platform, also created 'server' application to accept-and-respond-to requests/commands from the network regarding GPIO and ADC data. worked closely with a HW designer to bring up and exercise custom board (Marvell PXA processor, display, touch screen, radio, SD card, ), with exercising SW tests accessible to mfg via bootloader menu. worked closely with a HW designer to bring up and exercise custom boards (Philips LPC and Chipcon devices) communicating over a 2.4 GHz RF link, wrote SW to support a firmware update over the RF link. created a Visual C++ 6.0 (using MFC) application to pull data over USB from a device which reported data/errors/etc. coming from both sides of a serial port connection.

Education
Bachelor of Science in Computer Science, University of Texas at Austin (1998)