PETER C. THOMPSON

    peter@cruzware.com
    (831) 419-0468 (mobile)

JOB OBJECTIVE

Interesting and exciting work where I can use my knowledge of the mobile telephone industry, embedded systems, user interface programming, and management skills.

SUMMARY OF EXPERIENCE

Experience in international mobile telephone standards, designing and implementing graphical user interfaces, real-time systems, and Windows and MacOSX applications. I have chaired international standards committees, and helped produced a global Data Synchronization as well as a Device Management Standard - OMA DS and OMA DM. I have written applications for Windows and MacOSX. I have also programmed for semiconductor quality assurance equipment, robotics machine controls, and arcade video games.

SOFTWARE ENGINEERING HIGHLIGHTS

Hands on software development experience on:

PROFESSIONAL EXPERIENCE

Staff Engineer Qualcomm Incorporated, San Diego

February 2004 to Present
Standards Engineer to OMA
Chaired and contributed to the OMA Device Management working group. Lead technical contributor to OMA DM v1.2 and v1.3. Technical liaison between OMA and Qualcomm - introducing Qualcomm technology into standards, and presenting standards work to groups within Qualcomm.

Mobile Standards Consultant

January 2003 to January 2004
Worked with companies to improve their working knowledge of international mobile standards such as the Open Mobile Association (OMA), 3GPP, and IrDA.
Create proposals for introduction of new technology to OMA.

Senior Software Development Engineer Starfish Software, Scotts Valley

December 1999 to December 2002
Chairman of SyncML Technical Committee - representing Starfish and Motorola.
Lead technical development of the SyncML specifications.
Co-authored book:  "SyncML: Synchronizing and Managing Your Mobile Data" , published September 2002.

October 1997 to December 1999
Senior Software Engineer.
Design, document and implement next generation of PIM.
Implement accessor to Schedule+ for TrueSync.
Implement accessor to Timeport P7389 and T1088 phone.

Contract Software Engineer

Self-Employed Part-time
April 1993 to September 1997
Design and implement a real-time storage scope under NeXTStep for recording motion and velocity from a servo motor controller.
Design and implement a terminal for communication with a servo motor controller.
Port servo terminal to Windows NT.
Design and implement a device driver for NeXTStep to communicate with an ISA-based servo motor controller.
Design and implement objective-C wrapper for networking functions.

Member of Technical Staff Filoli Information Systems, Co., Palo Alto

February 1996 to April 1993
Design and implement windows as a member of a large team on an object-oriented distributed database project on NeXTStep.
Improve workflow automation tools.
Monitor performance of application, work with other engineers to improve the speed of processing.
Design and implement objects for an automated test program.

Senior Software Engineer Triton Technology Inc., Watsonville

April 1995 to February 1996
Design and implement a series of cross-platform plotter classes for real-time data display.
Design and implement a real-time graphic display, for monitoring ship under Windows 3.1.
Modify existing software to convert old data and perform real-time display of the data.
Design and implement a pipeline tracking, along with real-time image display under Windows 3.1.
Design and implement a cross-platform C++ class for communicating with a wide variety of printers.

Staff Engineer Galil Motion Control Inc., Sunnyvale

June 1991 to April 1995
Design and implement a variety of new tools in C++. Improve existing Motor tuning tools.
Design and implement C++ tool for selecting motors, amplifiers, and controller.
Design and implement C++ translator for MS-DOS and MS-Windows, converting Autocad DXF output to motion output.
Design and implement C translator for MS-DOS, converting HP Plotter output to motion output.
Design and implement Visual Basic tool to help a novice user set up, tune and debug a motion system.
Design and implement Windows NT Driver.
Design and implement several different VBXs, such as storage scope and 3D motion.

Software Project Leader Nanometrics Inc., Sunnyvale

February 1989 to June 1991
Lead a team of 5 software developers. Bring in Unix workstations for group software development. Design, implement and train source control in group software development.
Redesign and implement a Scanning Electron Microscope for semiconductor wafers.
Convert existing Scanning Electron Microscope software to run in Protected Mode on MS-DOS.
Design and implement a network of 10 Unix (HP/Apollo) workstations, complete with UUCP connection.
Design object oriented Scanning Electron Microscope - hardware as well as software.
Design object oriented data collection station.
Implement new version of Automatic Thin Film Measurement tool.
Improve SECS-II interface in Scanning Electron Microscope.

Sr. Software Engineer / Lead Programmer SiScan Inc., Campbell

November 1986 to February 1989
Design and implement new sub-systems for a Confocal Laser Microscope for semiconductor wafers.
Design and implement embedded user interface, using both text and graphics.
Design and implement linewidth measurement routine.
Improve graphics routines - increase speed, and add functionality.
Implement SECS-II interface.
Design and implement in-house tools based on Sunview.

Sr. Software Engineer / Lead Software Engineer FMC Corp, Ordnance Division, San Jose

April 1985 to November 1986
Member of team working on experimental tank crew station. Design and implement graphics system to use live video and touch screen. Lead team into finished product.
Improve 8086 based multi-tasking operating system.
Design and implement 8 line serial I/O to extend the operating system.
Design and implement a graphics system based on GKS to run on a multi-tasking operating system.
Design and Lead: voice recognition, voice synthesis, and an image processing system.

Video Game Designer Atari Games Corp., Milpitas

August 1982 to April 1985
Develop games for arcade video game. Work closely with hardware, graphics, and especially marketing personnel to bring a video game to production.
Design, implement and ship a 68000 based arcade video game (Packrat).
Design and implement diagnostics for the 68000 based video game.
Extend a Forth-based development workstation to work with a T-11 processor.

EDUCATION

BS, Electrical Engineering, Computer Science, University of California, Berkeley - 1982
Project Management training.
Object-oriented training - C++, Objective-C.
Training in SQL and Relational Databases.

PUBLICATIONS

Co-author of "SyncML: Synchronizing and Managing Your Mobile Data", published September 2002.

References available upon request.