UNIX Software Engineer, Distributed Systems Architect
Sebastopol, California 95472
C (17 years)
Perl (15 years)
SQL (13 years)
Python (2 years)
PHP (2 years)
Unix: Linux, Solaris, FreeBSD
Others: OS/2, MS-DOS, CP/M
Cassandra, other NoSQL
Amazon S3, EC2
KVM server virtualization
Multi-Tenant Software-as-a-Service (SaaS) and Cloud Architectures
ETL / Data Warehouse development and administration
Business Intelligence metrics and automated analysis
Cluster/Cloud development for high availability, high performance, and load balancing
Distributed systems of nontrivial scale (tens of thousands of servers)
LAMP stack (Linux, Apache, MySQL, PHP/Perl/Python) and RESTful services
Twisted asynchronous event-driven framework for Python
Big Data processing techniques (Real-Time, Scale-Out)
LXC Linux containers for process encapsulation and isolation
DBMS: MySQL, PostgreSQL, SQLite
Client/server programming with BSD sockets and Pthreads (POSIX threads)
Structured and Unstructured Data processing
Enterprise Search - ElasticSearch / Lucene, Lucy
Nagios datacenter monitoring configuration and plugin development
Sonic.net (Santa Rosa, CA) Software Engineer June 2013 - Present
Cyan Inc (Petaluma, CA) Software Engineer October 2011 - June 2013
Reduced cost of operation via improved automation of telecommunications infrastructure, in a distributed service-oriented LAMP environment.
Autonomy / Discovery Mining (San Francisco, CA) Senior Software Engineer, Technical Lead May 2008 - October 2011
Developed horizontal scalability of concurrent, asynchronous network management system (CyMS).
Collaborated with engineers and architects to identify and eliminate barriers to rapid feature development by transitioning from a Twisted/PB-RPC client interface to a RESTful HTTP/JSON client API.
Solved problems of encapsulation, maintainability, and scalability in formerly unstructured, unmaintainable, monolithic legacy software.
Developed build, unit test, search, centralized logging, and juju charm components for BluePlanet network operating system, with RESTful interfaces.
The Internet Archive (San Francisco, CA) Software Engineer, System Architect December 2003 - May 2008
Heads-down code-writing software engineer and technical lead for four-person engineering team. Developed software in C, C++, Perl, and PHP for a high-capacity/high-performance LAMP-based distributed data mining system
for eLegal Discovery.
Developed intelligent automation of the Extract/Transform/Load (ETL) process, reducing time and cost of operations and enabling advanced setting of client expectations.
Expanded the scalability of ETL, dramatically reducing the overall time to satisfy contracts, and making it possible to accept contracts for processing large data volumes.
Hardpoint Intelligence (Sebastopol, CA) CTO, Co-Founder November 2003 - May 2008
Architect, technical lead, and software developer for the PetaBox Project.
Drove initial development of a very large scale LAMP-based data storage cluster (the PetaBox) underlying all
The PetaBox architecture allowed The Archive to rapidly establish new large (2,000+ servers) data clusters
in multiple countries and scale expansion of online, instantly browsable data into the multi-petabyte (millions of
gigabytes) range. The PetaBox architecture is now standard for all Archive datacenters. As of January 2012,
the largest PetaBox instance keeps ten petabytes of data continuously online.
Developed software for detecting, quantifying, and correcting data skew between The Archive's geographically dispersed
data clusters, proactively preventing data loss and providing Operations with data consumption forecasts necessary for the
intelligent procurement of new data storage capacity.
Configured, deployed, and documented IPVS/Keepalived for load balancing and transparent failover within the archive.org
web server farm, enhancing the capacity and reliability of The Archive's web services while reducing demand on IT
The Sausalito Group (Sausalito, CA) Senior Software Engineer, Senior System Administrator July 2000 - November 2003
Co-founded business with former VP of The Sausalito Group (TSG) to continue supporting TSG's Asia-based BI/SaaS contracts
following the dissolution of TSG.
Redeveloped all necessary software to duplicate the functionality of TSG's SaaS without compromising intellectual property claims.
Procured colocation facilities and populated them with web, database, and mail servers. Configured and installed
server hardware and software.
Flying Crocodile (Seattle, WA) Senior Software Engineer March 1999 - July 2000
Developed and administrated hardware, software, network, and database technology for international and multilingual Business
Intelligence SaaS (english, japanese), including database abstraction interface library for the transparent scaling of
the back-end system to a distributed database architecture.
Developed software for automated rapid synthesis of customized, dynamic-content web surveys, demographic
analysis, and real-time dashboard reporting.
Cygnus Solutions (Sunnyvale, CA) Compiler Tools Engineer April 1996 - March 1999
Developed massively multithreaded middleware in C and C++ for caching and distributing database access and other
computational workload across cluster of FreeBSD3.2/x86 servers for proprietary demographics-tracking SaaS under
heavy load (15 to 25 million hits per hour, sustained).
Developed distributed and multithreaded software in C and Perl for tracking and reporting web site access patterns
with failover and load-balancing capabilities.
Developed system monitoring scripts in Perl for generating reports on distributed system activity and performance
First Pacific Networks Network and Embedded Systems Software Engineer February 1995 - April 1996
Developed GNU toolchain: C compiler, assembler, and binutils.
All development targeted multiple host platforms (Solaris, HPUX, Irix, AIX, etc) using a single code base.
Worked on related projects:
- Acted as technical laison with Cisco's tool department, merging Cisco's enhanced gcc with mainline gcc.
- Developed optimized library routines for proprietary 128-bit SIMD-capable MIPS architecture used in PSX2.
- Developed optimized glibc code fragments for customers' proprietary embedded systems.
- Developed C and Perl software for providing controlled customer access to our PRMS database via web interface.
- Enhanced gas peephole optimization for embedded targets.
- Acted as technical laison to Cygnus' documentation and front-line support departments. Gave educational presentations describing our products' operations.
Designed software tools to interface with proprietary telecommunication devices, simulate network traffic, and assess product performance.
Developed system software for proprietary embedded systems -- protocol stacks, power management, and remote configuration.
|Programming computers since 1978.|
Full work history, code
samples, references are available upon request.