Duane Strong (831) 247-0201 duanes@strongenging.com www.strongenging.com

Duane Strong 4414 Ranchero Drive Soquel, CA. 95073

(831) 247-0201 (831) 536-1712 Fax duanes@strongenging.com


Specialized areas of experience:

Embedded systems. Hardware/software integration. Software architecture. Object oriented design. UML. Design patterns. C, C++, and assembly languages. Linux kernel/application, POSIX, Win32, ThreadX, VelOSity, LynxOS, MicroC/OSII operating systems. Device drivers. Graphics drivers. Board support packages. Eclipse, Gnu tools, Visual C++, Green Hills tools. Sockets, TCP/IP, UDP, HTTP, USB, I2C, SPI, RS-232/485, I2S, MIDI and audio technologies. Flash memory technologies. Intel x86, Freescale Power PC/ColdFire, ARC, Microchip PIC, Atmel AVR. Subversion, CVS, Perforce, SourceSafe, PVCS. Logic Analyzers, scopes, etc. Basic digital hardware design.


Education:

B.A. degree in Computer Science. University of California, Santa Cruz. Graduated with highest honors.

A.S. degree in Electronics Technology. Cabrillo College. Graduated with honors.

Completed 1 year of graduate study in Computer Engineering at the University of California, Santa Cruz.


Certification:

Certified by the IEEE Computer Society as a Certified Software Development Professional. For more information on the IEEE CSDP certification see http://computer.org/certification. IEEE member since 1996. Currently Vice-chair of the IEEE Consultants' Network of Silicon Valley.


Work Experience:

Consulting Software Engineer May 2003 to present


SiPort Inc. - 3255-7 Scott Blvd. - Santa Clara CA - www.siport.com

Software architect/developer for an HD Radio ASIC based on dual ARC cores. Wrote device drivers for USB device controller, IR remote interface, real time clock interface, keypad and rotary encoder controllers. Wrote a messaging protocol layer for SPI and RS232. Wrote drivers and application code for an Atmel ATMega micro controller. Implemented a nightly build automation system in perl and shell scripts. Implemented an automated SQA test system in C++ and Expect.


LynuxWorks Inc. - 4855 Embedded Way - San José CA - www.lynuxworks.com

Software developer for LynxOS-SE RTOS integration into Eclipse. Worked with third party companies to aid integration of LynxOS debugging tools into Eclipse environments. Implemented an automated SQA test system in Java and Expect.


Terayon Communications Inc. - 4988 Great America Pkwy - Santa Clara CA. - www.terayon.com

Software architect/developer for an MPEG video over IP controller project based on a dual PowerPC 7447A processor using Linux 2.6 and uboot. Performed board bring up and wrote linux drivers for IDE, I2C real time clock, and custom FPGA devices. Created a root file system and system upgrade facility. Wrote various u-boot extensions. Handled merging of linux and u-boot updates using Perforce. Implemented a nightly build automation system in perl and shell scripts.


Time-O-Matic Inc. - 1015 Maple St. - Danville IL. - www.watchfiresigns.com

Software architect/developer for an LED sign project based on ColdFire 5282 and 5484 processors using Green Hills MULT C++ and VelOSity. Wrote socket classes and web server classes for TCP/IP and UDP communications.


Viasys Healthcare Inc. - 22705 Savi Ranch Pkwy. - Yorba Linda CA. - www.viasyshealthcare.com

Software architect/developer for a medical respiratory ventilator project based on ColdFire 5272 and 5474 processors using Green Hills MULT C++, ThreadX, and PEG graphics. Wrote OS extensions and device drivers for serial communications, video, touch screen, printer, flash, and other devices. Wrote an Xmodem communications package. Helped to generate coding conventions and other internal development standards. Modeled packages in UML.


Project Specifics Inc. - 300 Park Wy. - Santa Cruz, CA.

Software architect/developer for an unmanned aerial vehicle project based on satellite communications. Utilized GPS and NMEA protocols, navigational mathematics, and various communication protocols. Generated coding conventions and maintained the cvs source control system. Modeled the system in UML using Enterprise Architect.

Linux systems programmer. Kernel modifications and driver development in an embedded Linux environment using PC-104 hardware. Wrote a driver for a synchronous serial interface card.

Linux application programmer using C++ and Pthreads.

Microchip PIC developer for an antenna positioning system in C based on RS485 communications protocol.


E-mu / Creative ATC - 1600 Green Hills Road - Scotts Valley, CA. - www.emu.com

July 1997 to April 2003

Senior engineer. Project lead and main software architect for the sound module group. Architected and helped to implement a family of next generation ROM playback MIDI synthesizers using C++ in an embedded environment based on Freescale ColdFire processors, Microchip PIC processors, and E-mu proprietary ASICs. Managed a team of 6 developers, generated schedules and specifications, architected most components and implemented many.

Software technology lead. Responsible for promoting new technologies such as the UML, design patterns, and Java. Mandated to promote code sharing throughout the various business units of Emu and the Creative Advanced Technology Center. Participated in most code reviews. Maintained the source control system. Maintained the software development web site documenting coding, source control, and design standards. Handled all software tool evaluation and licenses. Maintained the library of software books. Organized conference attendances.


Metagraphics Software Corporation - 6 Sleepy Hollow - Carmel Valley, CA.

December 1987 to May 1997

Senior software engineer. Designed and implemented a Windows based multimedia tool kit for sprite animation, flc and avi file playback, jpeg, gif, bmp, and pcx import, and wav file playback with real time wave mixing in C++ and assembly. Primary designer of an advanced graphics programming tool kit for DOS, 286 and 386 DOS extenders, implemented major components, entirely in assembly language. Designed and implemented a GUI based font editing system in C. Designed and implemented a pcx graphics file tool kit. Designed and implemented a GUI based font import utility in C and C++. Team member for implementation of graphics device drivers for a UNIX X-Window system. Wrote and illustrated manuals for the font editing system and PCX file tool kit, and major components of the graphics programming tool kit manual. Wrote example programs in C and Pascal.


Mountain Computer Inc. - 360 El Pueblo Rd. - Scotts Valley, CA.

January 1984 to November 1987

Design engineer. Software project manager for a high speed diskette duplication device. Designed and implemented disk format analysis software in C and 8086 assembly language. Hardware designer for an 8088 single board controller and host computer communication software for a diskette certifier. Wrote low level device drivers for QIC-80 tape drives.


Cabrillo Community College - 6500 Soquel Drive - Aptos, CA. - www.cabrillo.edu

January 1983 to December 1983

Electronics technology instructor. Instructor for classes on digital hardware troubleshooting and basic electronics.