Jerry W. Rice

 (revised June 2010)

Summary of Experience

Senior level professional with over thirty years experience in software engineering, design, project management, technical writing, research, training, team development, problem solving, planning, and successful execution of product development and support activities.  Have for the past two decades engaged as an independent consultant assisting various Bay Area high-tech corporate organizations succeed in their engineering and product development related activities.

Recent Projects:

·         Systems Software Development consultant for a Fiber-optic and Giga-bit copper network monitoring equipment supplier.  Development of a programmatic remote access configuration library under Windows, Ubuntu Linux, and embedded Linux.

·         Systems Factory Automation software development consultant for a major new solar panel manufacturer in the South Bay area.  Developed automation software for a custom over-head gantry and conveyor system for processing glass solar collectors.  Development is in C#, VB, and C++.

·         Systems Software Development consultant for a small product engineering group in the North Bay area.  Developed an asynchronous communications library for connecting a new occupational exercise strength testing machine containing an embedded microcontroller to a HID display panel computer that runs Ubuntu Linux.  Development was in Gnu C (gcc).

·         Systems Software Consultant for a startup that is bringing to market an innovative web-based graphical front-end which automates the ordering, fabrication, and rapid prototyping of machine parts for engineering development houses world-wide.  The system uses various web-services and runs on a Linux back-end server.  Leverages WxWidgets, OpenGL, Mesa and other open-source packages for efficient 2D mechanical CAD processing.  Development was in C/C++.

·         Systems Engineer for a wireless navigation and communications wearable computer system.  Project funded by the US Govt Future Weapons Systems program.  Development environment was RHEL 5.3 Linux, QT 3 & QT 4, Gnu C and C++ tool-chain.

·         Senior software engineer on a project to re-engineer a real-time image capture system that sorts moving articles on a high-speed conveyer into various categories.  Replaced a legacy PC controller with a new dual core rack mounted (U2) Corvalent industrial PC, a new video framegrabber (DALSA X64 Xcelera-CL4), two new DALSA S3 Spyder line scan cameras, and the TenAsys Intime Windows co-resident RTOS.  The GUI is based upon Windows Embedded XP Standard.  Development in C and C++.

·         Enhancement and debug of a firmware driver for an RS-422 based remote geo-mechanical drilling probe used in the mining and construction industries, using .Net on Windows XP.  C and C# development.

·         Integrated a commercial SECS/GEM protocol library into an Eagle Test mix-signal multi-mode chip tester.  Development in MFC C and C++.

·         Setup an IIS web-server and Apache server; familiar with Apache module development, HTTP clients.

·         Designed and implemented a prototype multi-channel embedded SCADA data collection controller using the DNP3 network protocol.  Utilizes the Debian Linux SSL secure sockets layer network protocol.  Software is written in the C programming language, and uses the ‘pthreads’ library with the standard Gnu tool-set.  C language development.

·         Participated in the development of ground support telemetry software for the CNOFS Ionospheric forecasting satellite, to be launched in May of 2008.  Targeted for the Sun Solaris environment using the C programming language.

·         Led and participated in the rapid development and fielding of a High-Temperature Thermal Processing module for a state-of-the-art wafer processing system.   Managed a team of four developers in migrating source code from an existing product, while engineering a substantial body of new software to accommodate a third-part cluster tool environment.   VxWorks 5.5 and Windows 2000/XP are the primary operating systems, while various other proprietary embedded micro-controllers are also integrated for the required sub-system controls (pressure, rotation, etc).  GUI based upon QT 3.x.  C and C++ development.

·         Successfully designed and implemented an industry standard network protocol library on an embedded ARM9 single board computer for the semiconductor and FPD manufacturing industry.  This is a SEMI E37/E4/E5 protocol stack.  Utilizes Linux 2.6 and a Gnu tool-chain with a C compiler/linker development set.

·         Proof of concept evaluation to determine if Lucene search engine was capable of  hosting a web-based patent search engine.

·         Participated in the design and implementation of a wearable computer system with a mapping-navigation feature.  This was the prototype implementation of the US government’s LandWarrior system.  Utilizes an ARM9, P4, and several embedded microcontrollers, with support for 802.11 wireless video, range-finding, and VOIP.   Development environments were MS Visual C++ for Windows 2000 and Windows CE.

Technical Skills

Software Tools

Rational UML, OOP, IEEE, Schlaer Mellor, Trolltech QT cross-platform GUI, WxWidgets, XML

Languages

C++, C#, C, .Net, Java, Javascript, Python, Perl, Ada, Pascal, VB, and Assembly Language for Intel 80x86 and Motorola 680x0 microprocessors.

Operating Systems

Debian/RedHat Linux, Unix, Windows CE/2000/XP/Vista, TenAsys InTime, VxWorks, & various RTOSes

Processor Hardware

Pentium, Itanium, ARM, M680x0, Z80xx, XScale, VAX, PDP-11

Databases & Web

MySQL, MS-SQL, Oracle, Apache server, HTTP, IIS, Lucene search engine, Xerces XML parser

Project Tools

Microsoft Project, SourceSafe, Rational Rose, ClearCase.

 


Patents:

 

Education:

 

No. 864492 filed on 2001-05-23 - Role-based IP multicast addressing in a wireless LAN.  No. 866097 filed on 2001-05-23 - Multicast wireless ad hoc packet routing.

BS. Degree – Information Systems Management, University of San Francisco, San Francisco, California, 1986

Other professional-development oriented course-work at Stanford University, San Jose State University, and University of New Mexico.

Recent Experience

Jan 2003 to
present

FABNexus, Inc, Los Altos, CA
Provide custom data networking and embedded control software products and consulting services to high-tech companies, many in the semiconductor process industry.

 

Network Monitoring Equipment Software Engineering:

June 2010 until present have consulted as a software development engineer on a a Fiber-optic and Giga-bit copper network monitor device.  Development is in C/C++ under Ubuntu Linux and Microsoft Windows on the client side, and embedded Linux (2.6.18) C on the equipment side.  Developing a remote client access capability for programatically configuring the monitoring device when incorporated into a larger infrastructure monitoring system.

Solar Collector Factory Automation Software Engineering:

March 2010 until present have consulted as a software development engineer on a factory automation software development project using Windows in the .Net environment.  Utilizes advanced features such as .Net reflection and remote object access across a LAN network connecting processing and inspection tools in the factory.  Hardware interconnects are primarily DeviceNet.  Developed automation software for a custom over-head gantry and conveyor system for processing glass solar collectors.  Development is in C#, VB, and C++.

Systems Software Engineering:

Jan through Feb 2010 consulted for a small product engineering group in the North Bay area.  Developed an asynchronous communications library for connecting a new occupational exercise strength testing machine containing an embedded microcontroller to a HID display panel computer that runs Ubuntu Linux.  Development was in Gnu C (gcc).

WLAN Navigation / Communications Wearable Computer Eng:

March 2009 through September 2009 consulted as a Systems Engineer for a wireless navigation and communications wearable computer system.  Project funded by the US Govt Future Weapons Systems program.  Development in C and C++.

Vision Capture and Control System Development: 

From August 2008 through the present have been the lead software engineer redesigning a food sorting system that requires a new vision capture and camera interface, as well as a real-time co-processor replacement.  Using the TenAsys InTime RTOS (Windows resident) kernel to replace an obsolete DSP PCI co-processor adapter. The PC system was upgraded from NT to Windows Embedded XP.  C and C++ development.

Remote Instrument Sensor Control System Development: 

From December 2008 until present have enhanced and debugged a firmware driver for an RS-422 based remote geo-mechanical drilling probe used in the mining and construction industries.  Involves protocol debugging, event handling, and interfacing to a Windows managed-code application.  C and C# development.

Semiconductor Factory Automation Interface Development:

From November 2007 through June 2008 integrated a SEMI-compliant E30 interface using TCP/IP HSMS (E37) link and a commercial off-the-shelf library package.  This is for a Eagle Test mixed-signal tester system running Windows XP.  MFC C and C++ development.

Software Product Design/Development:

From January 2004 through September 2006 engineered and developed a SEMI-compliant E37 TCP/IP-based networking system software product in C that is targeted to an Embedded Technologies ARM9 SBC, running Linux 2.6.  Used the Gnu  C tool-chain under Linux 2.6.  Later ported this product to Windows XP.

Software Development Engineer/Lead at Mattson Technology:

Responsible for developing and managing a real-time embedded high-temperature model-based thermal processing module.  Led a four person software development team, as the lead architect and senior programmer.  While the team lead, participated in the coding and debugging of substantial portions of the overall software system.  Used VxWorks, Tornado/SNIFF IDE, Gnu C, Microsoft Visual Studio 6 and 2005, TrollTech QT Gui development tool-kit, Windows Word, Excel.

 

 

Past Experience

Aug 1982 to
Jan 2003

Integral Software Consulting Services, Inc, Los Altos, CA
Provide data networking and real-time embedded control software products and consulting services to high-tech companies, in a variety of industries.

Senior Consultant: responsible for providing software design and development services to the following client companies:

 

PemStar Pacific, Inc. Mt. View, CA  - From Mar 2000 to Feb 2003 consulted as a Senior Netword Software Engineer responsible for developing a Windows 2000-based wearable (micro-miniature) navigation and mapping  system that utilizes an IEEE 802.11 WLAN and GPS receiver.  The network uses TCP/IP data and VOIP messaging, to provide total connectivity for combat soldiers in the field.  Specifically  responsible for Windows system architectural design, network messaging protocols, and some critical database features.

ThermaWave Corporation, Fremont, CA – From July 1999 to Feb 2000 consulted as a Senior Communications Software Developer responsible for porting and enhancing a GW Associates based SEMI GEM (E30) communications sub-system for the OPTI-PROBE metrology tool.  Also developed a C++ COM-based component to control an ASYST SMIF wafer handling sub-system.  C++ language development under Windows NT in a PC environment.  Architecture involves COM and ACTIVEX objects in a distributed environment.

Gap Incorporated, San Bruno, CA – From Dec 1998 to July 1999 consulted as an Application Programmer to develop Visual Basic applications to specification for the purchasing/planning department of this large multi-national corporation.  Used Microsoft Office 97 under Windows NT to create business objects according to requirements defined by analyst.

Genus Corporation, Sunnyvale CA – From May 1998 to Mar 1999 consulted as a

Network Software Developer to enhance/modify a GW Associates based communications sub-system for the LYNX2 wafer processing cluster tool.  C language development under MS Windows in a PC environment.  This is a legacy high-volume product that required feature updates specified by Korean customer.

 

Candescent Technology Corp, San Jose CA – From May 1998 to Jan 1999

consulted as a Network Automation Engineering and was responsible for analysis and factory automation evaluation planning of FPD processing tools for a new flat panel display manufacturing facility.  Evaluated and performed requirements analysis relating to industry specific communication interfaces on numerous processing tools.

GW Associates, Inc, Sunnyvale CA – From May 1997 to Apr 1998 consulted as an Object-Oriented C++ Network Library Developer and was responsible for analysis and initiated porting of a SECS-1 and SECS-2 communications driver written for WindRiver VxWorks to the VRTX embedded kernel environment.  Participated in a week-long SPECTRA DEVELOPMENT class at Mentor Graphics on the VRTX embedded development environment.  Also developed an object-oriented C++ library for the NT-based GWGEM (GEM/SECS) network tool-kit.

Ultracision Automation, Inc, Santa Clara CA  - From May 1996 to Apr 1997 consulted as an Object-Oriented C++ Network Developer as was responsible for development of a reusable C++ GEM/SECS network class library, utilizing MFC and the GWGEM tool-kit.  Is to be used for a bare-wafer inspection and wafer sorting multi-robot automation instrument.  Development environment and target platform is MS-Windows NT in MicroSoft Visual C++ and integrated IDE toolkit.   Rational ROSE case tool is being used as a design and documentation workbench.  Using SourceSafe as the source code control environment.

Tencor Instruments, Inc, Mt. View CA  - From Aug 1995 to May 1996 consulted as an Object-Oriented C++ Developer and was responsible for the development, integration, and test of a GW based SECS/GEM communications sub-system on the Tencor AIT 8000 Patterned Wafer Inspection instrument.  All work was done under MS-Windows NT in MicroSoft Visual C++, using MFC and integrated IDE toolkit.  Used SourceSafe as the source code control environment.

Applied Materials, Inc, Santa Clara CA  - From Mar 1994 to Sept 1994 and again from Jan 1995 to Aug 1995 consulted as a Network Protocol Converter Developer responsible for utilizing the GWGEM network toolkit product to develop an embedded OS/2 based communications protocol converter.  This sub-system is Applied Material’s GEM/SECS product offering for their non-MCC product line.  Developed code in C and C++ using IBM's CSET tool.  Uses the Radisys VME plug-in 486 PC card.  Uses the Applied 5000/5500/5200 legacy systems as back-end SECS data generators.

Tencor Instruments, Inc, Mt. View CA – From Oct 1994 to Jan 1995 consulted as a Network Protocol Developer responsible for development, integration, and test of a network library SECS/GEM subsystem on the Tencor P-20 family of wafer profiling instruments.  All work was done in MicroSoft Visual C++, using MFC and integrated IDE toolkit.  Used PVCS as the source code control environment.

ElectroGlas, Inc, Santa Clara CA  - From May 1994 to Aug 1994 consulted as a

Network Protocol Developer responsible for definition and generation of a SECS/GEM (TCP/IP) network interface specification for a legacy (80x86 based controller) prober product that was targeted for retrofit with a GW Associates based interface.  Participated in the specification and design, preparing in-house staff to proceed with the implementation.

GW Associates, Inc, Sunnyvale CA – From May 1990 to Apr 1991 and from Oct 1991 to Mar 1992 and from Sept 1992 to Mar 1994 consulted as a Network Protocol Developer responsible for developing several operating system device drivers and a systems software packages (GWGEM, SDR SECS I & SECS II drivers). These are sold to the semiconductor fabrication industry. These products implement the SEMI standard SECS I & II protocol, as well as the GEM standard communication protocols for semiconductor manufacturing facility automation networks. Ported a multiple process communications server system from UNIX to Ms-Windows 3.1.  The device drivers were for the following operating systems: MS-Windows 3.1, OS/2 1.3, DOS 5.0, and ATT UNIX System V (Version 4.0). Also converted a DOS terminate-and-stay-resident utility from Lattice C to Microsoft C,  and developed a remote-computer based embedded debugger.   Worked at the firmware level with various models of the Emulex and IBM Artic PC based communication adapters.

J. Frank Associates, Inc, Palo Alto CA – From Mar 1992 to Aug 1992 consulted as a NOVELL LAN System Developer responsible for Ported a LAN based TCP/IP-to-SAA APPC Gateway product from OS/2 1.3 to the Novell NetWare 386 version 3.11 operating system. Involved about 10000 lines of C code, with a project team of five programmers. This is part of a product called NetWise RPC, which was one of the communications packages considered by the OSF standardization committee for distributed UNIX applications development.

Personafile, Inc, San Jose CA  - From Apr 1991 to Oct 1991 consulted as an

MS-Windows 3.x Database Toolkit Developer responsible for MS-Windows 3.x based database design and implementation. Used the Microsoft C6.0 Windows SDK to develop an integrated set of database access and utility support functions. This database was a derivative of a XEROX developed full-text retrieval system, based on the Fulcrum FULTEXT system. Involved heavy use of MS-Windows 3.x SDK development environment, CodeView for Windows (CVP), MS-Windows Performance Analyzer, Heap Walker, etc.

Identix, Inc, Sunnyvale CA  - From Feb 1990 to May 1990 consultant as an

OS/2 1.3 Local Area Network Application Designer responsible for Design and analysis of a local area network based fingerprint identification security system, leading to its conversion from an existing DOS based DESQVIEW implementation to an OS/2 1.3 solution. Developed a prototype of the new system using the OS/2 Extended Mode DB and OS/2 Communications Manager. Helped implement a library of OS/2 utility code to facilitate the use of the OS/2 DB SQL Engine from an existing body of converted DOS C routines. The bulk of the conversion effort was to be performed by the company's staff programmers, using the results of our initial analysis, design, and prototype task.

Applied Materials, Inc, San Jose CA  - From Jan 1990 to Feb 1990 and from May 1987 to Sept 1987 and from Sept 1984 to May 1985 consulted as a Semiconductor Fabrication Equipment Real-Time Software Developer responsible for development of embedded control software for fabrication equipment based on the Intel 80x86 and the Motorola 680x0 microprocessors, in C, Pascal, and assembly language.. The two major products that I worked on were the Applied 7810 Epitaxial Reactor, and the Applied 5000 Multi-Chamber Mainframe control system. For the 7810 I helped develop an embedded PC communications processor, used as a SECS-linked recipe file-server to the 7810 system. For the 5000, I developed the Gas Control Subsystem software, as well as the Magnet Control subsystem control software.

Singer Flight Simulators, Inc, Sunnyvale CA  - From Oct 1987 to Jan 1990 consulted as a Real-Time Simulation and Diagnostics Software developer  responsible for development of real-time Target Control simulation software for a high-performance advanced airborne multimode radar system. Involved simulation of airborne, sea-based, and ground target threats, as well as the real-world environmental issues (noise, clutter, clipping, etc. ...). Used the Ada programming language, as well as assembly language. Also developed substantial portions of a real-time hardware diagnostic and test environment for the proprietary computer hardware that implements the aforementioned radar flight simulation system.

Systems Control, Inc, Palo Alto CA  - From May 1985 to May 1987 consulted as a Supervisory Control and Data Acquisition (SCADA) Systems Software Developer responsible for development and modification of embedded microprocessor software for remote communications of data acquired in real-time. Client companies were electric power utilities and natural gas utilities. Microprocessor used was a Motorola 6809. Used a proprietary multitasking kernel written in assembly language, and programmed into EPROM. Used In-Circuit Emulator to debug firmware. Also developed a real-time communications diagnostic that ran on the VAX under VMS. This tester was used to verify or detect software bugs in the aforementioned microprocessor environment. Written in C and assembly language on the VAX.

GE Calma Company, Sunnyvale CA  - Software consultant from Mar 1984 to Oct 1984.  C development.

Intersil Systems, Sunnyvale CA  - Software consultant from Sept 1983 to Mar 1984.  C development.

International Bureau of SW Test,  Inc,  Sunnyvale, CA  - Software consultant from June 1983 to Sept 1983.  Pascal, C, and x86 assembler development.

Memorex,  Inc,  Santa Clara, CA – Software consultant from Sept 1982 to June 1983.  C development.

.