MARC CHAMBERLIN

Washougal, Washington 98671-9292

Email: Click here to reveal my email address.

Note to recruiters: I appreciate your efforts to find an exciting new position for me but please understand - I am only looking for employment in the Vancouver Washington, north Portland or downtown/central Portland Oregon areas. I am not willing to relocate and not willing to commute to the Beaverton, Aloha, Hillsboro, Tualitan, Tigard, Lake Oswego or Wilsonville suburbs of Portland.

Below are links to alternate formats of my resume. Most sane browsers should let you simply click on the link to download the document. For all you Windows folks, right click with your mouse on the link and select the "Save link as" option and that will get you to nirvana.

bullet

This is a link to an alternate version of my resume which is a 8.5 x 11 printer friendly version in Microsoft's Word .doc format. Click here.

bullet

This is a link to an alternate short 2 page version of my resume in a 8.5 x 11 printer friendly version in Microsoft's Word.doc format. Click here.

bullet

This is a link to an alternate plain text version of my resume. Click here.

JAVA, JSP, JAVASCRIPT, J2EE, XML, DHTML, SQL, C++, C

OBJECT ORIENTED DESIGNS

EMBEDDED SYSTEMS PROGRAMMING

SCIENTIFIC PROGRAMMING

LANGUAGE. AND COMPILER DEVELOPMENT

SYSTEMS TOOLS DEVELOPMENT

LINUX, WINDOWS, UNIX

INTERNET APPLICATIONS

CLIENT-SERVER SYSTEMS

REAL-TIME DESIGN AND DEVELOPMENT

SERVO LOOP CONTROL

PROCESS CONTROL

ROBOTICS

AGILE, EXTREME PROGRAMMING

 

Marc Chamberlin is a computer software specialist with over 30 years of experience in software engineering and design. His strong background in Computer Science, combined with software and hardware experience, provides a foundation for getting practical results rapidly. Much of his experience has been working with internet applications, embedded systems, robotics, process control, and compiler development. He has used current technologies in requirements gathering, scheduling and estimating, object oriented design techniques, real time state machine specification and control languages, software development environments, and software evaluation processes. He is interested in challenging assignments, is quite comfortable working independently, as a member of an engineering team, or in a leadership role.

Please note that while I am willing to participate in quality assurance as part of normal development work, I am not interested in full time quality assurance or testing. I am willing to do some traveling or telecommuting, but I am not interested in relocation and am only willing to commute to the NE Portland Ore, downtown Portland, Ore, or Vancouver Wash areas.

An online version of this resume is available at http://www.marcchamberlin.com/resume Please visit this to view the most current version of this resume, with the best presentation.

EXPERIENCE

HHH Tempering Resources Inc. Vancouver Wa. (May 2014 to Sept. 2016) Designed, developed and maintained an embedded software application for the control of large glass tempering furnaces. This software application features a classic model view controller focused on real time control over many digital and analog IO ports. The software package also includes a simulator and a builder with graphical interfaces for allowing easy configuration and customization of the furnace control software. All software was written in C# using Visual Studio. I was the sole software engineer at this company and my duties also included performing routing IT work, development and deployment of a number of software support tools such as automated backup systems, repositories, and the deployment of a number of servers (web, email, ftp etc.) on a Linux system. I was laid off in Sept. 2016 because the company decided to stop manufacturing tempering furnaces in the U.S. and sell furnaces manufactured in China instead.

JPrise Inc. Portland Ore. (Jan 2002 to May 2014) Formed a business, JPrise Inc. with partner, Ed Averill, to work on contracting, consulting, and applications development projects specializing in Java and Java related tools. We use the Agile extreme/paired programming methodology to achieve rapid development. Projects include

  • Contracted with Special Equipment Engineering to design and develop the vision system for a robotic die pick and place machine. The requirements for this included the development of dual camera drivers, integration of vision pattern recognition libraries, high precision motor controllers, database and network components.This is an ongoing project currently being readied for marketing and sales.
  • Contracted with a medical implant device manufacture to develop, integrate and execute custom tests for an embedded real time operating system and a customized C compiler for a proprietary version of a Motorola HC6811C processor. Due to our contract with them I cannot revile the name of this company.
  • Contracted with JustMed Inc to design, develop and maintain an e-commerce website for their products. This includes setting up a secured server, handling of online credit card transactions, and facilitating collection and processing with a merchant bank account.
  • The design and development of a remote telescope control application deployed via a Jakarta Tomcat JSP server, allowing it to be accessed and controlled from the internet. see http://www.marcchamberlin.com/telescope/index.html and http://www.marcchamberlin.com/telescope/doc/help.html for further information.
  • Wrote a CCD (Charge Coupled Device) camera controller/driver for astronomical applications. It is written in C++.
  • The design and development of a genealogy application to merge GEDCOM databases. See http://www.jprise.com/merge/jprisemerge.html for further information.
  • Contracted with JustMed Inc. to design and develop a custom code loader for an embedded Motorola DSP based artificial larynx.
  • The design and development of e-commerce, support, wiki-wiki and documentation websites for JPriseMerge.
  • The design and installation of a website for Spaceguard India, set up as a virtual domain on our own servers. See http://www.spaceguardindia.com
  • The design, development and installation of an e-commerce website for an organic food store in New Zealand. See http://www.putiputira.co.nz
  • Set up and maintain a Jakarta Tomcat JSP/web server, developed a number of custom servlets for backend server processing including using technologies such as DDE, RPC, COM/DCOM, JSP and Sun Web Start
  • Set up and maintain a Jakarta James email server. Wrote custom mailets to handle automated postings of newsletters, sent via email, to a webpage, and to handle and manage several mail list groups.
  • Set up use and maintain others servers for DNS, MySQL databases, VNC, and ftp.
  • Set up, use and maintain tools for development to include Linux, Windows, Eclipse, Dreamweaver, Bugzilla, and a LAN with multiple platforms and protocols.

More about JPrise Inc. and its products may be learned by visiting the website at http://www.jprise.com

WebCriteria Inc. Portland, Ore. (Jan 2000 to Dec 2001)) Joined this startup company and worked on the design and development of software agents used to analyze and rate the complexity of performing a given task on a set of web sites. Worked in an Agile programming environment using extreme/paired programming methodologies. I worked on server side applications using Java, and OCAML (a functional modeling language) to extend MAX. MAX is a robotic modeling agent that is at the heart of the technology used at WebCriteria to model a web site. I also wrote servlets and Java GUIs to work with a factory design pattern to help automate much of the process of performing a task analysis on a web site. I was laid off from WebCriteria in April 2001 when the company downsized by 40% of its workforce.

Tektronix Inc. Beaverton, Ore. (Jun 1995 to Jan 2000) In 1995, Tek labs were closed, and I joined one of the principal business divisions, working on the design and development of oscilloscopes. Initially, I was responsible for the continued development of the GPIB/SCPI parser-generators, and the integration of these software products into the TDS (Tektronix Digital Oscilloscope) oscilloscope product line. Subsequently, I was the principal engineer responsible for the Math and Measurement subsystems of the TDS family of oscilloscopes. I was also the principal designer and developer of a mathematical expression compiler. This compiler lets the user of an oscilloscope specify mathematical expressions for combining digitally sampled signals and integrating these with other measurements and digital filters that an oscilloscope is capable of performing. This embedded compiler generates code from these expressions, and inserts this code into the real-time data acquisition, processing and display subsystems of a digital oscilloscope.

Tektronix Inc. Beaverton, Ore. (Jan 1989 to Jun 1995) Initially joined the computer research labs and worked there for five years, researching, designing, and developing reusable software components for use on all products developed throughout the company. My major accomplishments included the design and development of a C++ cloner for use in embedded systems, and I was the principal designer, lead engineer, and project leader involved in the design and development of two different reusable parser-generators. These parser-generators were highly successful, and are used on all instruments developed by Tektronix. They control the GPIB/SCPI communications interfaces between different instruments and their controllers.

Olle Lindblad Konsult, A.B. Stockholm, Sweden. (Jan 1986‑ Dec 1988) I joined a consulting team which contracted my services for both in-house software development, and as a. consultant to Ericsons, a large Sweden based telephone company. Projects included the design and development of advanced debugging software for a network of Ericson's 68000 based systems (APN s), which could trace the causes of system crashes by maintaining a trace of signals and messages sent and received either between processes or across the network, process and memory allocation and deallocation requests etc. In conjunction with this project, I developed a specialized compiler which produced debug oriented code that was then inserted into Ericson's Pascal software and allowed the inspection of various process parameters in a real-time environment Additionally, was contracted to work on another Ericsons project which had fallen seriously behind schedule. This project involved an air traffic control simulator based around a network of 27 of the above mentioned APN's. Here I joined a special integration team and was responsible for the integration of Ericsons's real-time operating system with the various parts of the application software and hardware.

W.S.M. Group. Tucson Az. (Jan 1985‑ Dec 1985) Assisted in the development of a Unix like operating system and developed a Basic Interpreter for a 68000 base graphics system, developed by Commodore/ Amiga. This interpreter used some advanced techniques based on dynamic grammars and a Forth language based reverse-polish notation, and produced threaded tokenized code to give it a high runtime execution speed; being only approximately 10% slower than most compiled versions of Basic.

Multiple Mirror Telescope Observatory Tucson Az. (March 1981‑ Dec 1984) Located in southern Arizona, the Multiple Mirror Telescope is a. revolutionary new instrument design concept employing 6 separate telescopes housed in a single structure. Using computerized control, these telescopes were combined together to make the MMT function as the worlds largest aperture telescope, My accomplishments included the design, development, and maintenance of both a Forth multitasking operating system and the telescope's pointing and tracking control software. This system had to be able to actively point the telescope at an object to an accuracy of .01 arc-seconds, and continuously track that object with a tracking error of less than .1 arc-second.

Tektronix Inc. Beaverton Ore. (June 1979‑ March 1980) Responsibilities included design, design analysis, and verification of custom software running on a 32-bit micro programmed processor. Special emphasis on user interface, process efficiency, communications protocol between multiple processors, and complex raster-scan graphics. Also responsible for design and analysis of self-test programs running on a 68000 based programmable instrument controller.

Floating-Point Systems. (June 1977‑ June 1979) Over three years experience design developing, and maintaining program development software for the AP120B AP190L, and FPS100 high-speed array processors. Primary responsibilities included development of a cross-assembler, simulators, and software tools used for interfacing the array processors to both large and small systems.

ADDITIONAL ACCOMPLISHMENTS

I am the webmaster for four different organizations, and am responsible for setting up and maintaining their web sites.

Past Projects

Tools developed for myself include a real-time 68000 code producing Pascal compiler, a general purpose application parser, a 68000 assembler and disassembler, a 6809 disassembler, and the beginnings of my own real-time operating system.

Developed the control software for a 6502 based X-ray fluorescence spectrometer. This controller is currently being used by the geology department at Florida State University.

Developed the software for a 6809 based interface for an X-ray spectrometer and an IBM mainframe computer. This interface is currently being used by Phelps Dodge at one of their large copper mining sites, and enables them to actively monitor the concentrations of different minerals in their various slurry ponds.

Designed and implemented a full networking protocol and software package used in a radio environment. This protocol employed features to allow for networking robustness dynamic node addressing, centralized network control without the need for specialized hardware, and easy interfacing between computers and radio of various different manufacture.

Designed and implemented a fully automated test driver for programmable instrumentation, with priority-queued tasking to allow multiple interactive test development and execution.

Design and constructed a multi-channel microprocessor controlled radio repeater link for VHF amateur use. Supports touch-tone decoding and autopatch services.

Taught courses in Computer Science for first and second year levels at Pima Community College. Courses taught include Basic, Intro to computers, Intro to Business Applications, and assembly language programming.

Taught courses in Computer Science for junior and senior year levels at Chapman College, Davis Monthan Air Force Base. Courses taught included Compiler Construction, Operating Systems Design, Ada, and Computer Architecture.

Published a paper in collaboration with J.W. Montgomery, and D.B. McClain entitled "Mirror Telescope Computer Control Systems". This article was written on February 18, 1988 and published in the annual proceedings of the International Conference on Forth at Rochester, New York.

EDUCATION

M.S., Computer Science, June, 1978, from the University of Oregon. Classwork emphasis on microprogramming, computer architecture, compiler construction, programming language theory, microprocessors.

B.S., Computer Science, June, 1977, from Oregon State University. Classwork emphasis on computer architecture, programming languages, and artificial intelligence. Minor in Digital Electronics.

Electronics and Electromechanical engineering classwork at the Oregon Institute of Technology. (1971-1973, 1975)

PROGRAMMING EXPERIENCE

 

High-Level Languages Fluent in Java, C++, C, C#, VB, .NET, OCAML, Pascal, Forth, Modula2, ADA, SmallTalk, Icon, Lisp, Snobol, Fortran, Algol, and several extended forms of Basic. Web languages include HTML/DHTML, JSP, Javascript, and XML.

Recent Tools Experience Familiar with revision control systems such as Atria Clearcase, RCS, and CVS; browsers such as Sniff and Cscope; Case tools such as OMT, State machine design languages and tools - SDT/SDL; documentation tools such as Interleaf, Word, Microsoft Projects, and Microsoft Publisher. Worked with development environments such as Visual Age for Java, Microsoft Visual Studio, and currently using the open source Eclipse IDE for Java.

Valid XHTML 1.0 Transitional

Valid CSS!