MICHAEL COWPERTHWAITE Cupertino, CA E-mail: mcow@well.com Objective: A high-level position requiring hands-on software engineering for the control of intriguing devices. Work History: = Dec 2014 - Jul 2017: Accel Biotech, Los Gatos, Calif. Staff Software Engineer Design and development of software controlling diagnostic instrumentation for clients. A variety of C# and Python control software for customer instruments. Advanced feature recognition in fluoroscent microscope imagery. Champion of test-first development techniques; extensive suites of tests for C#, Python. Advanced feature recognition in multiplexed fluorescent/brightfield microscope imagery. Image-focus scoring algorithm for autofocus control system (40X objective). Extensive documentation (SRS, SDD, FMEA/FTA) for client’s FDA submission. = Dec 2011 - Aug 2014: Ventana Medical Systems, Inc., Sunnyvale, Calif. Staff Software Engineer Design and development of control software for diagnostic microscopy. Implement features on legacy mixed C++ (control) & C# (client) microscope system Architecture of second-generation control layer = Aug 2011 - Nov 2011: ESP Safety, Inc., San Jose, Calif. Firmware Engineer Design and development of control firmware for flame and gas detectors. Low-level driver code (SPI & I2C; DAC, flash, real-time clock; under FreeRTOS / ARM Cortex M3) Identify and reduce code bloat in tight memory environment (256KB on 8051) = Feb 2008 - May 2011: Lathrop Engineering, San Jose, Calif. Senior Software Engineer Design and development of control software for a high-resolution scanning microscope. Intensive multiprocessing on an eight-core Windows X64 system High-speed image acqu'n over CameraLink (Matrox and BitFlow framegrabbers) High-performance image processing (MIL and IPP) Design and development of feature-recognition software, identifying biomarker reactions in highly cluttered images from a diagnostic instrument's camera. OpenCV integrated with LabView instrument control software Development included standalone algorithm-development test-bed program Test-first development process = Apr 2007 - Feb 2008: Precision Instrumentation Design, Santa Clara, Calif. Senior Software Engineer Design and implement software for custom instrumentation for a variety of customers. Projects involved technologies such as: LabView programming LynxOS (Linux-derived RTOS) Microsoft .NET and C++ Interop (Managed and Unmanaged) = Oct 2000 - Sep 2001: Beckman-Coulter, Chaska, Minn. Principal Software Engineer Enhancement of client software interfacing to an automated immunoassay instrument. Extensive assistance in upgrading code to improve its object orientation and compatibility with the C++ library. Technologies include: object-oriented database (Poet) user interface development with MFC = Dec 1991 - Jun 2000: VISX Inc., Sunnyvale, Calif. Principal Software Engineer Team member and technical lead in the design and development of an ophthalmic surgical laser instrument, specializing in: software architecture, implementing pseudo-realtime control under Windows NT 4.0 and Windows 3.1 design of software objects for surgery control, safety interlock and interface to hardware devices user interface with close integration to the windowing framework and non-standard UI devices requirements and design documentation (as required by FDA and ISO) Also assumed duties of project management, configuration management, SQA liaison, and technical contact for regulatory, legal, marketing and manufacturing departments. Specific projects at VISX included: Technical lead for implementation of a stereoptic eyetracker used to steer the laser beam to follow movements of the pupil: design and implementation of tracker device and coordination objects; of the beam-steering criteria within the treatment sequencer; of the tracker UI, utilizing proprietary input and indicator devices and a high-performance on-screen tracker monitor indicating the pupil center. Primary responsibility for generation of the eyetracker software requirements. Directed one other engineer; closely interacted with the Research scientist running the project. Technical lead for porting the Windows 3.1 surgical application to an upgraded platform (Windows NT 4.0), maintaining a common source pool for 80% of the codebase. Directed four other engineers. Undertook major refactoring of the treatment algorithms library to implement a consistent, virtual interface to each of the object hierarchies, to lay the groundwork for planned expansion, and to consolidate duplication of code and functionality. Education: = Worcester Polytechnic Institute, Worcester, Mass. graduation with B.S. in Computer Science (honors) Systems/language experience: Windows; real-time OS (Lynx, VRTX); LINUX & UNIX C++ / C; C# & .NET; Python; LabView; HTML, CSS & JavaScript (jQuery); Subversion, Mercurial, Perforce, PVCS; Trac, Bugzilla The web version of this resume: http://www.well.com/~mcow/Resume/WebResume.html