Robert Ramey
830 Cathedral Vista Lane
Santa Barbara, CA 93110

(805)569-3793
email:ramey@rrsd.com

Technical Summary

Hardware

IBM Compatible PCs, PIC microprocessor, Nintendo Gameboy

Operating Systems:

32/16 bit Windows/DLLS/COM, MSDOS, FreeBSD, Linux, Embedded Systems

Programming Languages:

Visual C/C++ with MFC, C/C++, GCC, Strong Boost experience, Visual Basic, Unix shell and utilities

Professional Experience

2011 Bosch ETAS Group, Santa Barbara, California

Develops and markets automobile test and diagnostic equipment.  Developed C++ server application with MSVC and Boost libraries.

2010 Nova Sensors, Solvang, California

Develops and markets visible and infrared camera electronics.  Developed C++ program with MSVC and MFC for configuration of FPGA programmed for these electronics.

2008 Analysts, Inc., Torrance, California

Furnishes diagnostic evaluations and maintenance solutions for industrial production machinery and for equipment used in power generation, HVAC, and mobile fleets. Principal industries served also include the marine, construction, mining, trucking, transit and aircraft industries. Developed a new version of their LEM Testing machine. Required

·         Design and construction of a custom circuit board with onboard PIC microprocessor.

·         Custom optical system for specimen illumination

·         Custom Firmware written in C to:

o        Control linear state with a stepper motor

o        Control an illuminator

o        Synchronize A/D conversion

o        Transfer data to PC Host using USB protocol

·         PC Host program writing C++ with MFC to

o        configure, calibrate and operate the LEM

o        run the test and retrieve results through USB port

o        Graph results

o        Perform statistical analysis using multi-variable linear regression.

o        Save/post results

2008 Greystone Digital Inc., Huntersville, North Carolina

Develops and markets special "Large Key" keyboards. We developed an updated version of their product with a USB interface. This include hardware design, firmware, and boot loading updated firmware through the USB interface. The product itself is now being manufactured in Taiwan.

2007 InfoGrip, Inc., Ventura, California

Develops and markets products using "Assistive Technology". Developed updated hardware for an updated version of the InfoGrip BAT. The original design consisted of microprocessor, EPROM, battery backed RAM, on two separate circuit boards (right and left handed). The original version took a man-year to program. Our modern version consists of a one chip solution which implements a USB interface, fits on "flipable" circuit board for right and left handed versions. This product required two man-months for all hardware and software development. Key technologies used are:

·         PIC microprocessor

·         CCS C compiler

·         USB implementation compatible with standard USB HID device class.

2007 Cadence (Israel), Tel Aviv, Israel.

Develops and manufactures software for Electronic Design Automation. This project consisted of developing a custom addition to the Boost Serialization Library to support portable binary archives. Cadence is a use of Boost libraries and uses this extension in one of its verification products.

·         C++ Templates on 6 different *nix platforms

·         Boost libraries

2007 Vetronix, Santa Barbara, California

Develops & manufactures embedded systems to serve the automotive service industry. This project was a telematics application. That is, it consists of modules with radio modems installed in vehicles which continuously connect to a central server via GPRS protocol. The central server can than monitor in real time the position and diagnostic status of all vehicles in the fleet. The major aspects of this project include:

·         USB Device drivers

·         Embedded system using Motorola 68331

·         C programming language Multi-Threaded application

·         Motorola G.18 and G.4 Radio modems for GPRS connection.

2006 Multi Probe, Santa Barbara, California

Develops & manufactures the world's highest resolution Atomic Force Prober (AFP). Wrote C++ code integrate Multi Probe's next generation hardware with the widest possible variety of application software including .Net languages, TCL/TK, Python and others. Tools used include:

·         USB Device drivers

·         Windows Driver Model (WDM)

·         Libraries provided by Cypress semi-conductor

·         SWIG - Simplified Wrapper and Interface Generator

·         Boost libraries

·         C++

·         C#

2005 Procore Technologies, Santa Barbara, California

Procore provides contractors with software and services that improve the efficiency of construction projects. Wrote code to embed Microsoft Project into the Procore website. This permits Procore to seamlessly integrate Project update and edit with other services that Procore offers. This used a combination of VBScript, ASP, MS Project Object model scripting.

2003-4 Boost.org.

Boost.org is an organization dedicated to providing peer reviewed C++ libraries that provides advanced features for C++ programmers. These libraries are distinguished by:

·         High quality - before being accepted as a boost library, candidates are subjected to an extremely rigorous peer review system to assure utility, correctness, and elegance of design.

·         Portability - all boost libraries are subject to testing on a variety of compilers and operating systems.

·         Correctness - exhaustive test cases for each library

·         Power - many boost libraries use advanced C++ features such as template meta-programming to make libraries more flexible and powerful.

·         Breadth - the code base in the boost libraries is extremely large and varied.

My submission - the Boost Serialization Library has been accepted into boost and should appear soon as part of the official boost release.

2002-3 Raytheon Corp., Electronic Warfare Division, Goleta, California

Design and implementation of test station software to test infrared sensors under conditions of extreme temperature and vibration. This application was written in Visual Basic and used, COM, captured Video, ADO database connectivity among other things.

2001 Reactive Sputtering, Inc., Santa Barbara, California

Implementation of Windows graphical User interface programs to control proper flow of gases in a sputtered coating system system. Used C++, MFC, ATL COM Objects, mult-threading, serial communication and STL.

2000 Digital Instruments, Santa Barbara, California

Design and implementation of a new GUI for the world's most powerful microscope. This was built with Microsoft VC++ with heavy reliance on MFC. It incorporates hundreds of thousands of lines of code used to operate the microscope hardware. Taught MFC courses for 15 programmers.

2000 WidgetLab, Santa Barbara, California

Design and implementation of a COM automation object to permit the reading and editing of data tags (song title, etc) on MP3 files from either Visual Basic or VBScript. This COM object can be embedded in web pages and automatically downloaded to the client system. It can then be invoked to edit the data tags embedded in MP3 files.

2000 Santa Barbara Software, Santa Barbara, California

Santa Barbara Software, LLC is partnered with Wavexpress, Inc to deliver rich content-movies, music, sports, news, computer games, software-over a digital broadcast signal direct to any DTV-enabled PC. Wrote the client side user interface application in VC++ with MFC. This consisted of a GUI control frame in which an instance of the Microsoft Internet Explorer COM object was embedded. COM interfaces where designed into the application so that javascript within html pages could invoke functions implemented by the application.

This application also used OLE DB and the Microsoft Jet database DLL to access a local data base used for transaction logging and other tasks.

1999 Origin Data, Santa Barbara, California

Design and implementation of programs to test and benchmark various searching algorithms. This was implemented using the STL templates from the C++ Standard Library.

1998 Vetronix Corporation, Santa Barbara, California

Design and implementation of Win 32 applications for uploading and manipulating data files captured by a hand held vehicle monitoring device to a PC via a serial port.

·         Data is uploaded to a directly connected PC or to a stand alone program via telephone line and modem. The Telephone line monitor application functions without operator interaction to save data to disk files. Up to four phone connections can be handled simultaneously.

·         File viewer application permits viewing, graphing, saving to disk, emailing files uploaded from the device, or selected from Windows file explorer or from on WEB page links.

·         The file viewer was integrated into WEB pages via Microsoft Explorer Internet Component Download service. Web pages can include special HTML tags which cause Internet Explorer to determine whether the latest version of the application is installed on the users machine. If not, and security settings permit it, the application is automatically downloaded, and configured for the users environment. Henceforth, web pages could contain links to these types of data files on any server on the WEB.

·         All national language dependent resources are held in separate DLLS which permits switching between languages while the program is in operation. The program starts with the language specified by the current user in the Windows 95 settings. Languages implemented were English, Japanese and Spanish.

·         When directly connected to a hand held vehicle monitor this application can graph vehicle operating parameters in real time. Real time data can be captured to disk files for later use.

·         Applications operate under Win 3.1 via Win32s.

·         These applications are being deployed by American and Japanese Honda Divisions and Toyota Corp.

Demo Available

1997 Engelhard Corporation (now Telaire), , Santa Barbara, California

Design and implementation of a program to control a telemetry "black box" through a serial port. This program downloaded and stored and accumulated data such as temperature, relative humidity, CO2 concentration etc, and graphed the results. Also implemented real time graphing of data. This product is part of a sensor/telemetry package sold by Engelhard. Used an off the shelf graphing OCX and Visual Basic.
Demo Available

1997 Dega Technology, San Luis Obispo, California

Development of a specialized browser for a CDROM database to be sold to companies in the chemical industry. Used Visual Basic to tie together OCX graphing control and Jet Database Engine queries. The database itself was prepared/maintained with Microsoft Access.
Demo Available

1996 Connected Systems, Santa Barbara, California

Adaptation of General Software BIOS for an embedded PC designed to host DOS Telephony applications. Required implementation of pseudo drivers to emulate non existent hardware in order to make the platform totally PC compatible while requiring the absolute minimum of hardware. Written in Microsoft Macro Assembler.

1996 Vetronix, Santa Barbara, California

Programming of a special purpose file editor which builds configuration files to be downloaded into a hand held microprocessor driven automobile diagnostic device. This is a Windows Application written with Borland C++ 4.52. This program consists of about 6000 lines of C++ code which makes heavy use of the Borland OWL library. It was delivered in about 10 weeks.

1995 McCann-Eriksson, San Francisco

Programming and implementation of a WWW site for the online registration of magazine subscriptions. Web surfers through the Hewlett-Packard web site can learn about and subscribe to the new HP Magazine "networked!" through this site. This applications gathers and validates the data from the user, and downloads on demand to the subscription fulfillment company. This applications was written in PERL 4 and runs on an Linux server.
Demo Available

1995 Interactive Visions, Santa Barbara, California

Development of a database application for the World Wide Web. This takes information exported from a database and generates standard and custom web pages that can be loaded to a Web Server as a group. It has been used to generate thousands of Web pages for organizations such as the Direct Marketing Club of Southern California as well as others.

1995 Santa Barbara Regional Health Authority, Santa Barbara, California

Development of a DOS TSR that works a telephone speech system to deliver results of a data base inquiry over the telephone. Uses TRT Provide telephone application development system, Wollongong TCP/IP stack, Borland C/C++ and an implementation of a unix style sed editor to translate text into spoken sentences.

1995 EBSCO Publishing, Boston, Massachusetts

Implementation of Postman's Sort on HPUX, and SCO Unix. This program is used on EBSCOS Text Retrieval Server. It is a Unix implementation of the Postman's sort retail product which they have also licensed for inclusion in EBSCO's CDROM package for DOS.

1995 Parnell Systems, Santa Barbara, Santa Barbara, California<

Design and programming of a student scheduling program. This program considers student course requests and priorities as well as teacher skill set. The algorithm developed is a variant of a classic linear programming assignment algorithm. Formulating the problem in this way permitted me to demonstrate that the algorithm might converge in a reasonable time. This was developed and implemented under Windows/NT using MFC to build a testing/demo framework.

1995 Durand Communications Network, Santa Barbara, California

Implementation of Fax Receive for Class I, II, and 2.0 Modems under Windows 3.1 . This was integrated into the Filexserver retail product.

1994

Completion of Filexserver. This is a program written in Visual C/C++ which is distributed as a retail product. It acts as a file transfer similar to Laplink, a BBS and as a Fax receive station under Windows. Can handle upto 12 communications lines.

1994 Miramar Systems, Santa Barbara

Debug of user interface for Windows Appletalk client agent. Built with MS Visual C/C++ and MFC.

1993 Centura Software (Formerly Gupta) Corp., Menlo Park, California

Incorporated sorting product into SQLBase SQL Server product. This was done on an OEM/royalty basis.

1993-1994 Robert Ramey Software Development, Santa Barbara, California

A general purpose linear time file sorting program. This was the subject of an article published in the C Users Journal and later sold as a commercial product through Programmer's Shop and Provantage. This was implemented for Windows/3.1, Windows/NT, UNIX and OS/2.

1993 Interactive Visions, Santa Barbara

A screen saver featuring 3-D animation. This was developed under contract as a commercial product.

1990 Jib Ray Inc., Ojai, California

A conveyor system built from autonomous inter-connected computer controlled motors. Among other things this required construction of a code translator with the Unix M4 tool to work around problems with the motor's native code.

1977-86 Datatec C.A., Guayaquil, Ecuador

Founded and operated Datatec C.A. in Guayaquil, Ecuador This company supplied general business services such as General Ledger, Accounts Receivable, etc. to foreign and domestic companies of all types and sizes. Datatec grew to be the largest data processing service in Ecuador with more than 130 customers. Was directly responsible for all aspects of the business including hiring/discharge of employees, financing, accounting, training of sales and customer service personnel. This was in addition to writing all the software to support this service accomplished the following:

·         Porting of a C Compiler to the Data General C-350.

·         Design and programming of a multi-tasking system used for trading foreign currency. This was written in RATFOR as C was not available for the indicated machine at the time. On the strength of this application the company was sold in 1986.

·         An interrupt driven execution time profiler written in C for MSDOS computers.

·         Numerous utilities written in C for MSDOS.

·         Numerous business applications written in COBOL.

·         Enhancement of structural engineering applications written in FORTRAN.

·         Async communications to link micros and mainframes written in two different assemblers. Eventually this was replaced by porting an XMODEM protocol program to both of the machines.

Education

  • 1969 B.S. Business, University of California at Berkeley. Studied engineering, economics, finance, and operations research.
  • 1970 M.S Business, University of California at Berkeley. Studied operations research and finance.

Publications and Presentations

" Is Boost Broken?" given at BoostCon 2010
" The Boost Serialization Library" given at Software Development West 2008
"Making a Boost Library" Presented at OOPSLA,'05 workshop "Library Centric Design", October 2005
"The Postman's Sort" C Users Journal, August '92
"Add a Source Debugger to your C compiler" Computer Language, April '88

Foreign Languages

Spanish: Fluent reading, writing and conversation.
French: Reading and conversation.