Mark L. Woodward

PROFESSIONAL SKILLS

PHP applications; TCP/IP socket programming; SQL Database design. 18 years experience with C and 14 years with C++ on various operating systems; Perl; Java JNI and RNI; Object Oriented Design; multi-threaded design with Windows, POSIX, and Java threads; Microsoft MFC; 16/32 Bit Windows; Windows VXDs; Windows NT kernel drivers; Linux application servers, Linux device drivers; OS/2; Windows (95, NT); Solaris; Linux; MS-DOS; CP/M; assembly language on various processors; embedded system design.

EMPLOYMENT HISTORY

Dotclick Corporation (www.dmn.com)

June 2000 - February 2002

Chief Architect/Inventor

Designed a fully redundant, highly available, professional music web site using PHP, Linux, PostgreSQL, Oracle, Solaris, and various custom and 3rd party application servers. Designed database replication scheme for PostgreSQL which also serves as a differential backup. Designed and implemented a digital music identification system, a cornerstone to the company strategy. The music ID application server runs on Linux (or other UNIX) and is a high availability service which uses both multiple processes and threads. The Music ID system is based on an advanced text search / phrase recognition system I designed and own (FTSS) and tightly integrated with PostgreSQL. Designed and implemented a statistical recommendations system which analyzes a user's song history and recommends new songs which they may like, based on PostgreSQL. Worked with marketing on technical issues. Worked with operations on hardware selection and deployment. Designed database extensions to provide new features while reducing operational load. Designed search and recognition algorithms and programs to match various disparate music databases. Using MPI and clustering techniques, the process for database matching works across many systems. Advised and assisted Windows developers on operating system issues regarding the operation of the Dotclick plugin. Reason for leaving: Dotclick was unable to acquire funding.

Fast Search and Transfer (FAST)

October 1999 - June 2000

Senior Software Engineer

Fast Search and Transfer is an Internet search engine company. I was hired to interface with customers and design search solutions based on specifications. Customers to date include Lycos, Albert in, PAX, and CISP. Challenges of search engine technology are largely shear volume of data ranging in the terabyte range. Constructed a Linux cluster of 20 machines to design and test radically different ways of deploying FAST's product.

Mohawk Software, Milton, MA (www.mohawksoft.com)

(independent consulting)

Mohawk Software is my own consulting company. It has numerous clients including ADAC, Dragon Systems, Dome Imaging, Wilmington Research and Development, and Servolift Eastern.

Contributor to the PostgreSQL project. Contributor to the PHP project. Designed and implemented high speed session management system for web server clusters (msession). Designed and implemented a high speed text search engine (FTSS) intended to create full text indexes of SQL databases. On a standard desktop x86 machine it can search 3 million records in approximately .03 seconds. Performance tests have measured a sustained 82 full text look-ups a second on a Dual PIII 600. Currently being sold as a product.

Other projects: Have submitted bug reports to various open source development communities. Beta tested Linux 2.2 and 2.4 kernels. Consulted with Dragon Systems to provide an "expert opinion" on the state and condition of a product about to be released. Designed NT kernel/application high speed communications interface. Wrote a persistent storage library that worked on both Windows and UNIX (Linux). Wrote series of Informix/CGI/DICOM interface programs for use on a Sun Ultra for a major medical supplier. Ported a Web/DICOM server based on Windows NT IIS and Microsoft SQL to Linux using PostgreSQL. Wrote emulated hardware cursor for a multi-head Windows NT display driver.

Dome Imaging, Waltham, MA

October 1996 - July 1998

Principal Software Engineer

Came in to replace Windows NT driver engineer in last months of project, a multi-headed Windows NT 4.0 video driver. In first two months re-wrote and re-designed key portions of driver key to Windows NT 4.0 functionality. Worked with customers, on the Beta program, to resolve issues created by DirectDraw on a multi-headed driver.

Tracked down and debugged low-level bugs in the video controller chip's manufacturer's reference code. Debugged kernel fault in video driver due to the implementation of MMX code in graphics acceleration.

Designed a high speed HTTP/DICOM server using TCP/IP. The code designed for this system works on both UNIX and Windows NT. On NT the code uses IIS and on UNIX uses Apache. Server project was based on a multitude of technologies, including Java, CGI Scripting, SQL, HTML, high-speed image manipulation. Designed a cross-platform class library of low-level abstracts to facilitate porting to other platforms.

Keithley Metrabyte, Taunton, MA

November 1995 - October 1996

Principal Software Engineer/Project Leader

Designed and implemented Windows 95 and Windows NT kernel mode library for Metrabyte's hardware product line. The kernel mode library allowed developers with minimal knowledge of VxDs and NT drivers to produce, from common source, both a Windows 95 VxD and a Windows NT kernel mode driver. Managed the next generation Keithley Metrabyte driver development, using my library as a base. Although Metrabyte was dissolved, some divisions of Keithley are still using this library.

Polaroid Corp., Cambridge, MA

June 1995 - November 1995 (Contractor)

Software Engineer

Worked on a long running product for Polaroid's image correction software product, Prism. Prism is an image analysis module that is to be shipped within Polaroid's many electronic imaging systems. Wrote image correction software for Polaroid's Electronic Still Camera that works on both Windows 95 (16 bit and 32 bit) and the Apple Macintosh. This software included a very fast median filter, a tunable edge detection algorithm used to enhance an existing pixel interpolation algorithm, and an object-based LUT-Matrix-LUT (LUT is short for Look Up Table).

BancWare Inc., Braintree, MA

June 1993 - June 1995

Product Engineer, DCS for Windows

Managed scheduling and design of the Windows modules of BancWare DCS, Data Collection System. Met with clients and assisted the sales and marketing departments with off-site demonstrations of the product during development. As a precursor of DCS for Windows, designed BancWare's cross-platform, multi-bit-depth application framework. Wrote coding and engineering specifications. Reinvented the engineering department to produce professional and maintainable code. Designed and wrote an MS-Windows VxD and MS-DOS device to provide file level I/O between an MS-DOS VM and the Windows system VM to utilize legacy code in a modern Windows application.

Product Engineer / Senior Software Engineer, Convergence

Coming in at the end of a troubled development cycle, became leader of team designing next-generation interest rate liability simulation product. Managed project and scheduling of 2.0 Beta and release. Required capability of operating on millions of interest rate data records quickly. Planned a cross-platform Windows and Win32 strategy for common source code product development. Have designed and developed a mission critical ``soft landing'' for UAE termination that allows users to recover gracefully from critical errors.

Turning Point Software, Newton, MA

April 1992 - June 1993

Software Engineer

Designed key components of a cross-platform Macintosh and Microsoft Windows application, Fine Artist. These component modules included animation management, bitmap functions, graphics toolbox, event handling, internal message queuing, as well as the entire windows application framework. Wrote a practical cross-platform software module loader, and a very fast 16 bit device independent bitmap (DIB) rotation routine. TPS is a software consultant firm; all work done is on a contract basis and requires close contact with the client. In this project, code was actively shared with Microsoft, who was in the process of developing the companion product, Creative Writer.

Business & Professional Software, Cambridge, MA

August 1990 - April 1992

Software Engineer

Designed port of a DOS/VMS business presentation package to Microsoft Windows 3.0. Aided VAX/VMS developers with system-related bugs.

Sytron Corporation, Westboro, MA

September 1988 - January 1990

Wilmington Research & Development Corporation, Arlington, MA

August 1987 - August 1988

Brooktree Corporation, Mira Mesa, CA

January 1987 - May 1987

Denning Mobile Robotics, Woburn, MA

February 1984 - September 1986


COMMERCIAL SOFTWARE PRODUCTS

Polaroid ESC Windows TWAIN Driver

Developed key image correction algorithms used in Polaroid's Electronic Still Camera's TWAIN driver.

Convergence 2.0, a banking industry interest rate simulator and forecasting tool, BancWare

Came on in the middle of project development with virtually the whole technical team, including every engineer, gone. Rebuilt engineering department and morale and moved product to Final Beta status. Added compression to existing file format and UAE recovery for fault tolerant operation. Convergence is available from BancWare.

Fine Artist and Creative Writer, a children's word processor and paint program, TPS and Microsoft

Was one of two engineers who designed a cross-platform application framework for Graphical/Multimedia applications under Windows and Macintosh. Was primarily Windows designer while my colleague was the Macintosh designer. Designed a cross-platform dynamic linking system that allowed modules to be dynamically or statically linked at compile time without code modification. Fine Artist is still available at most software retailers, from Microsoft.

Express Presenter, a DOS business graphics/presentation package, BPS Inc.

Designed and built dynamically loadable drivers for image scanners, including HP ScanJet and Polaroid PSC scanner. Express Presenter was available at most software retailers when distributed by PowerUp Software.

Trumpet, a DOS/VMS/XWindows/MS-Windows business graphics/presentation package, BPS Inc.

Debugged and released DOS version 2.0 of Trumpet. Wrote Windows version. Due to economic forces, Trumpet for Windows was dropped during Beta testing.

PUBLISHED WRITING

Introduction to Windows Programming, Tricks of the Windows 3.1 Masters, 1992

The chapter described Windows programming models and concepts and compared Windows programming to more linear models such as DOS.

Object-Oriented Programming, Tricks of the Windows 3.1 Masters, 1992

The chapter described how the object-oriented nature of Windows can provide an object-oriented programming model for your application.

REFERENCES

Will be furnished upon request.