Jerry W. Rice

http://www.sw-for-hire.com/

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.

·         Designed and implemented a prototype multi-channel embedded SCADA data collection controller using the DNP3 network protocol.  Utilizes the 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.

·         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).

·         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. 

 

Technical Skills

Software Methods

Rational UML, OOP, IEEE, Schlaer Mellor

Languages

C++, C, Java, Javascript, PHP, Python, Perl, Ada, Pascal, Visual Basic, and Assembly Language for Intel 80x86 and Motorola 680x0 microprocessors.

Operating Systems

Linux, Unix, Windows CE/2000/XP, VxWorks, other RTOSes

Processor Hardware

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

Databases

MySQL, MS-SQL, Oracle

Web Technologies

Apache server, Lucene search engine, Xerces XML parser, Firefox

Data Formats

XML,IEEE,E5

Project Tools

Microsoft Project, SourceSafe, Rational Rose, ClearCase.

Publishing – Text

Excel, Word, Visio, FrameMaker, Acrobat

Publishing – Web

FrontPage, Web-Express, Flash


 


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

Degree program specialized in software project management, software and product design and development, along with a variety of other general computer engineering related subject areas.

 

 

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.

 

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  tool-chain under Linux 2.6.  Later ported this product to Windows XP.

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

 

Mattson Technology, Inc Fremont, CA          Feb 2003 to present

Software Development Engineer/Lead: 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.

Technologies used: VxWorks, Tornado/SNIFF IDE, Gnu C, Microsoft Visual Studio 6 and 2005, TrollTech QT Gui development tool-kit, Windows Word, Excel.

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                  Mar 2000 to Feb 2003

Senior Network 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         July 1999 to Feb 2000

Senior Communications Software Developer: Ported and enhanced 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                   Dec 1998 to July 1999

Application Programmer: Developed 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               May 1998 to Mar 1999

Network Software Development: Enhanced/modified 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   May 1998 to Jan 1999

Network Automation Engineering: 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                May 1997 to Apr 1998

Object-Oriented C++ Network Library Development: 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   May 1996 to Apr 1997

Object-Oriented C++ Network Development: 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            Aug 1995 to May 1996

Object-Oriented C++ Development: 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           Mar 1994 to Sept 1994 and Jan 1995 to Aug 1995

Network Protocol Converter Development: 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         Oct 1994 to Jan 1995

Network Protocol Development: 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                   May 1994 to Aug 1994

Network Protocol Development: 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               May 1990 to Apr 1991, Oct 1991 to Mar 1992, and Sept 1992 to Mar 1994

Network Protocol Development: 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         Mar 1992 to Aug 1992

NOVELL LAN System Development: 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                        Apr 1991 to Oct 1991

MS-Windows 3.x Database Toolkit Development: 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                             Feb 1990 to May 1990

OS/2 1.3 Local Area Network Application Design: 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            Jan 1990 to Feb 1990, May 1987 to Sept 1987, and Sept 1984 to May 1985

Semiconductor Fabrication Equipment Real-Time Software Development: 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      Oct 1987 to Jan 1990

Real-Time Simulation and Diagnostics Software development: 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                     May 1985 to May 1987

Supervisory Control and Data Acquisition Systems Software Development: 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                   Mar 1984 to Oct 1984

CAD Network Conversion and Porting Systems Programmer: responsible for converting the CalmaNet communications system from the proprietary CALMA developed language to C, and to port it from the VAX to the Apollo, Data General, and PC environments. Involved heavy use of the C programming language.

Intersil Systems, Sunnyvale CA                           Sept 1983 to Mar 1984

IBM-PC Compatible Hardware Diagnostics Software Development: responsible for development of a package of hardware diagnostics for an IBM-PC compatible clone system that Intersil was manufacturing. Involved factory, field, and customer diagnostics, with a full-screen oriented GUI. Written in assembly language and C, involved many low-level device handling routines.

International Bureau of SW Test,  Inc,  Sunnyvale, CA      June 1983 to Sept 1983

IBM-PC GUI Software Test Suite System Design and Implementation: responsible for design and development of an automated software test suite for an IBM Graphics Toolkit product that ran on the IBM-PC. Was project lead for a team of six application programmers. Software was developed in Pascal and assembly language.

Memorex,  Inc,  Santa Clara, CA                                           Sept 1982 to June 1983

High Performance Disk System Remote Diagnostics System Development: responsible for  design  and development of a remote diagnostics system for am IBM mainframe compatible high performance disk system. Used the Kaypro portable and Convergent Technologies B20 as the development and target platforms. The system used a Hayes Smartmodem for its communications, and the software was developed in Pascal and assembly.