Larry Colen

home: 831-335-7505
cell: 831-818-7729


System design: Design of complete system, both hardware and software.
Software: Design, writing, debugging, documentation and maintenance.
Hardware: Design, construction, debugging, field service and component specification.
Networking: Wide Area Networking at the packet and frame level.
Real-time control: Wrote software to control industrial systems in real time.
User interfaces: Designed and wrote user interfaces.
Data acquisition: Realtime acquisition of data on industrial systems.
Signal analysis: Realtime analysis of digitized analog signals.
Technical writing: Wrote user manuals and a textbook on performance driving.
Teaching: Programming, rock climbing and performance driving.
Project management: Responsibility for the work of myself and others.
Software quality: Training in techniques and methodology for improving software quality.
Distributed computing: Multiprocessor systems where each processor performed different tasks.
Inter-processor communication: Communication between processors in multiprocessor systems.
Programming Languages: C (15 years), Pascal, FORTRAN, BASIC
several Assembly Languages including: MIPS, Intel 8080, Zilog Z-80, Hitachi HD64180, Dec PDP-11 and TI TMS320.
Linux: Have been using Linux since 1994 (0.99p13). Kernel modifications at CIS.


Jan 2004 - May 2004 Contractor Digital Dynamics Inc

Helped with a Linux based system to implement a User Interface for an Industrial control system. User interface work in GTK+ and glade.

Feb 2001 - Dec 2003 Sr. Engineer Recourse/Symantec

Recourse was purchased by Symantec in August of 2002. My primary duties are on Mantrap, a network based honeypot.

Feb 2000 - Sept 2000 Sr. Engineer Olliance

Olliance is a leading strategic consulting firm for enterprises interested in using Open Source Software. As a Senior Engineer, I was involved in all aspects of a project from initial consultation to implementation.

Feb 2000 - Jul 2000 Contractor Counterpane Internet Security, San Jose

Adding logging features to the Linux kernel.

Nov 1998 - Jan 2000 Sr. Engineer Internet Appliance, Fremont and Singapore

Internet Appliance makes a Linux based thin server aimed at the small to medium sized business. As a Senior Engineer my duties cover any engineering that needs to be done. I ran the engineering department in Singapore for several months until the new department head started, system administration, programming, engineering support, technical and customer support.

Feb 1998 - Sept 1998 Engineer Packet Link Inc., San Jose CA

Packet Link was a startup developing an intelligent chip to be used in Wide Area Networking. As at most startups, my duties were basically to do what needs doing. As a member of the Firmware and Architecture department most of my work involved learning WAN protocols and writing experimental software to determine how much time our chip would take to perform particular packet handling tasks. I was also involved in writing Linux Device Drivers, Technical writing (specifications, tutorials and presentations), developing the company Software Quality Process and Software Standards, and System architectural review.

Feb 1996 - Aug 1997 Sr. Software Engineer at Schlumberger ATE, San Jose CA

Writing calibration and diagnostic software for a SPARC based, mixed signal Integrated Circuit Tester.
Register test software. Rather than writing several programs to test the read/write registers of various boards in the mixed mode tester, I wrote a single engine, which would take register definition files as input and automatically test the appropriate registers.

Enhancements to Sysma, a System Analysis tool. Basically each piece of hardware that Sysma addressed had its own display screen, done in ASCII graphics. Rather than continuing the practice of writing new brute force in-line code for each new piece of hardware, I wrote an engine that would take a register definition file from the register test program, a screen definition file describing the layout of the display, and a file defining the valid commands for the screen and would automatically generate the code to read the status of the hardware, display it on the screen, await a command and call the appropriate hardware interface function. Once this engine was written, adding a new screen was simplified to creating the three definition files, adding some hooks in the main software and writing the few functions that would interact directly with hardware.

Test and characterization software for a PLL controlled ADC clock circuit.

May - Sept 1995 Contract Programmer at Atalla Corp, San Jose CA
Point of Sale Terminal: Updated existing software to work on new hardware platform.

Automated Teller Card Programmer: Updated existing software to work on new hardware platform. This system used cryptographic protocols to insure secure transmission and confirmation of personal identification numbers.

1992 - 1995 Software Engineer at Edge Diagnostic Systems, Sunnyvale CA
Ignition analyzer: This system involved an Intel based machine running the user interface that communicated with a 32 bit processor which would collect, analyze and process the data in real time.
Developed the software for collecting the data, analyzing it for the location, frequency, magnitude and duration of the ignition events as well as processing the data for display and communicating with the front end machine.
Developed the software for machine to communicate with the signal processor and maintained the user interface.

1983 - 1992 Engineer at Digital Dynamics Inc., Scotts Valley CA.
Controller for industrial glue machine.
Designed user interface for controlling a fourteen channel Hot Melt Adhesive Supply Unit via a twenty key keypad and a two line by sixteen character display.
Developed a graphical method of explicitly describing the user interface to a computer-naive customer. The system had three levels of user access with separate passwords, individually settable temperatures, time delays and standby setpoints. Wrote the real-time executive and temperature control software in assembly.
Wrote the user interface, calibration and alarm software in Control Basic.
Helped bring up and debug the new hardware.

Enhancement of controller for industrial glue machine.
Converted the code from BASIC to C.
Wrote routines to target commercial cross-compilers (one on CP/M one, on MS-DOS) to the hardware.
Wrote code to implement timer control and scheduling.
Wrote code to emulate the hardware on a PC for debugging the user interface. The system was also accessible via a serial port for remote control by another computer.
On several Air-Flow Monitoring systems I did project management, user interface design and coding.

Gas pipeline leak detection software.
Improved an algorithm for detecting leaks by analyzing the realtime signals from a natural gas pipeline.

Temperature Data Loggers.
Wrote the user manual for a temperature data logging system which used a PC to read data out of data loggers which took temperature readings at specified time periods.

Automated test system for a single board embedded controller.
Designed the hardware, both mechanical and electrical, for calibrating and testing both digital and analog circuitry.
Designed, wrote and debugged the test and calibration software for both the test system and the computer being tested.
Supervised the technician who built and debugged the hardware of the test system.
Analysis showed that the automated test system paid itself off in time saved over manual test after one hundred units of a several hundred unit production run.

EDUCATION: B.S. Electrical and Computer Engineering University of California at Davis, 1983

Emphasis: Software and signal processing.
Sr. Project: Multi-processor operating system. University of California at Santa Cruz, 1977-1978 Completed coursework while a senior in high school.

Owner and operator of Redforest, which started out as a semi-public access UUCP site, originally running on SCO Xenix, now running Linux.

In addition to my computer related skills, I have written the textbook used by the National Auto Sport Association in their performance driving school, taught performance driving for five years and have been active in road racing as driver, crew and flagger since 1988. my current racecar is a Spec Miata, though when time and money permits, I have a supercharged 1969 MGBGT.

I ran the team driving my racecar when we took fifth in class (thirteenth overall) in the 2004 25 hours of Thunderhill Enduro.

I wrote an article on code reviews published in the January 2001 issue of the Linux Journal.

My Professional objectives, what I look for in a job.

One fun thing about interviews are the quizes to test what you know and how you think. If I were interviewing someone, I might give them this quiz. Answers to the quiz.

A small sample program.

Writing Debuggable Software: A missive that I wrote discussing various techniques for writing software in such a way that it can be easily debugged and maintained.

I enjoy dancing, mostly Lindy Hop and Victorian, with forays into Contra, Argentine Tango, Medieval and other forms. And used my engineering skills to build the Pan Galactic Ghetto Blaster to use as a portable sound system.

Back to the top.

Most recently modified by lrc at Wed Aug 4, 2004 19:30