Chris Waters

7645 Terrace Dr.
El Cerrito CA, 94530
1-(510) 524-1908
xtifr.w@gmail.com

Programmer/Analyst

Languages:C, C++, Perl, Tcl/Tk, Python, Forth, various others.
Systems:Linux, Solaris, HP/UX, FreeBSD

Characteristics: Over 25 years of experience in software development. C guru with strong C++ and Perl skills and experience with a wide variety of other languages. Unix expert and Linux enthusiast. Highly adaptable, and a quick learner. Extensive porting and maintenance experience. Can meet deadlines and remain cool under pressure. Good people skills, able to establish rapport, identify misunderstandings and devise compromise. Cheerful, creative, resourceful, reliable and supportive. Happy to work collaboratively or individually.


Work History:

Senior Software Engineer, 2007-2010, Ask.com, Oakland, CA

Supported and enhanced Binoculars system, a series of Apache modules which crawl the web and render thumbnails of sites. Added external website statistics reporting and internal performance statistics collection. Helped port Smart Answers Engine (SAE) and its associated External Dictionary modules (xDict) from 32-bit Windows to 64-bit Linux and add unit tests. Rewrote C#/ASP-based top-level code of SAE and xDict with C++ & Boost, using FastCGI for operation under Apache and libmicrohttpd for standalone operation. Wrote intelligent data update engine for SAE and xDict in Python with full unit tests. Added embedded Lua interpreter in SAE for implementing easily-changeable business rules for sorting and selecting results, and provided some basic scripts to implement existing business rules. Analyzed and documented the ancient database used to store question patterns and answer templates for the SAE. Participated in pilot projects using the Mercurial and Git revision control systems. Provided general expertise on Linux features and utilities and on 32->64-bit porting issues to other developers in the company, especially those with a stronger Windows background.

Developer, 1998 - 2009. Debian Project (www.debian.org)

Ongoing volunteer work developing the very popular Debian GNU/Linux system. Responsibilities include maintaining the Tcl/Tk core and several add-ons, a motif-based RTF editor, and assorted other packages.

Personal Services Engineer, 1999 - 2001. Critical Path, San Francisco, CA

Designed and implemented special (usually "one-off") projects for clients, primarily e-mail conversion and migration; importing millions of mailboxes, address books, and calendars from a wide variety of formats to company's Internet hosting services. Provided general Perl, C++ and Unix expertise to development department.

Senior Software Engineer II, 1997 - 1999. DHL Systems, Burlingame, CA

Involved with the design, implementation, maintenance and packaging of network administration tools and other utilities for DHL's world-wide network of HP/UX, SCO, and NT machines. Created SNMP interface agent for DHL's proprietary system watchdog (HP/UX + SCO). Helped manage company CM databases (Continuus). Wrote test scripts and helped run extensive tests of Netscape's LDAP servers on HP/UX and NT systems.

Received company award for overall work on watchdog package during user-acceptance tests and release, fixing problems and packaging new release candidates.

Consultant, 1994 - 1997. Berkeley CA

Completed a variety of small projects: programming, recommending and installing software, and offering training for small businesses and individuals. Major contract with TCSI Inc. to evaluate and stabilize legacy C/C++ code.

Programmer/Analyst, 1987 - 1993. Video Business Systems, Santa Clara, CA

Senior member of team which supported commercial point-of-sale and rental-tracking program for video stores. Worked closely with customers (many computer novices) to design and implement new features, including physical inventory verification, revenue sharing, inventory valuation and depreciation, reservations, inter-store transfers, and package pricing. Redesigned/rewrote transaction handling to improve data integrity and enhance accountability. Revamped user interface to reduce size and increase speed, and added enhanced browsing features. Identified and eliminated performance bottlenecks and reduced memory requirements. Wrote interfaces for cash drawers, barcode readers, and other devices.

Wrote custom utilities for customers in C, assembly, and Awk, and database conversion programs in C, Awk, Epsilon and Data Junction. Helped set company coding standards; evaluated and recommended new tools and libraries. Installed and maintained company revision control system (RCS). Shared administration duties on office Netware and UNIX systems and installed UNIX and OS/2 systems. Provided customer support.

Senior Programmer, 1986. Seagate Magnetics, Fremont, CA

Supported and documented real time multitasking software for experimental high-vacuum sputtering machines used for thin-film deposition. Added data collection features, and created easy-to-use pictorial "point-and-shoot" user interface. Maintained and enhanced DOS-hosted Forth kernel.

Senior Programmer, 1984 - 1985. Software Works, Mountain View, CA

Co-developed report subsystems for Dow Jones Inventory Control System, using CB-86 under MS-DOS and MPM/86. Ported in-house enhanced Forth system to Commodore 64, upgraded in-house Forth model to 1983 standard, and wrote new editor and other development tools.

Programmer, 1983. Softweaver, Santa Cruz, CA

Wrote educational video game in Forth on Apple II and C=64 for Disney.

Programmer, 1982. Colon Systems, Los Gatos, CA

Designed and implemented powerful token-threaded Forth for DOS and CP/M.

Programmer, 1980-1981. Information Unlimited Software, Berkeley, CA

Supported and maintained Forth kernel and meta-compiler, created suite of Forth development tools, and ported all from the Apple II to the IBM PC. Wrote modem file transfer utility and co-wrote mail-merge program.