PETER C. THOMPSON
peter@cruzware.com
(831) 419-0468 (mobile)
JOB OBJECTIVE
Work in
the mobile standards industry developing
new specifications or enhancing existing specifications.
SUMMARY OF EXPERIENCE
Over twenty-four years experience in international standards, designing and
implementing graphical user interfaces, real-time systems, and Windows and
UNIX applications. I have successfully worked on international standards
committees, and helped produced a global Data Synchronization and Device
Management Standard - SyncML. I have developed user interfaces for Windows,
semiconductor equipment, machine controls, and arcade video games.
SOFTWARE ENGINEERING HIGHLIGHTS
Hands on software development experience on:
- STANDARDS: OMA, SyncML, IrMC
- LANGUAGES: Java, C, C++ (Microsoft, gcc, and Borland ),
Objective-C, Assembly, and Visual Basic
- GRAPHICAL USER INTERFACES: MS-Windows NT, 98, & 95,
NeXTStep, MFC, Zinc, & zApp
- FIRMWARE DEVELOPMENT: 80x86, 68000, 6052
- OPERATING SYSTEMS: MS-DOS, UNIX (Linux, HP-UX, SunOS, OpenStep
& NeXTStep)
PROFESSIONAL EXPERIENCE
Staff Engineer
Qualcomm Incorporated, San Diego
February 2004 to Present
OMA participant, representing Qualcomm.
Elected chair of the OMA DM working group. Presented DM to various groups
within Qualcomm. Worked with groups within Qualcomm to introduce technology
into OMA. Contributed to further technical development of the
OMA DM (SyncML) specifications.
Mobile Standards Consultant
January 2003 to January 2004
Work 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 phone.
Implement accessor to Timeport T1088 smart 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 / Software Engineer
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. Training in Relational Databases.
PUBLICATIONS
Co-author of "SyncML: Synchronizing and Managing Your Mobile Data",
published September 2002.
References available upon request.