Bill Moyer
UNIX Software Engineer, Distributed Systems Architect
Sebastopol, California 95472
email: billm@ciar.org
linkedin: http://www.linkedin.com/in/billmoyer
Languages
C (since 1992)
Perl (since 1999)
Python (since 2011)
Javascript (off and on since 1999)
D (since 2018)
Integrations
MySQL
Prometheus
Redis
REST / CRUD
Web crawlers / scraping
Metaswitch
NENA messaging
Would Like To Work With
Data Lake
CUDA Kernel
D Programming Language
|
|
Technical Competencies
ETL, SaaS / Cloud architectures
Data Warehouse development
High availability, high performance clusters
Petabytes-scale distributed systems
Big Data real-time processing
Self-repairing automation
Systems integration
Business intelligence metrics
LAMP stack, SOA, microservices
uWSGI, Python Flask
LXC Linux container process encapsulation
DBMS: MySQL, PostgreSQL, SQLite
BSD sockets and pthreads (POSIX threads)
Structured and unstructured data processing
ElasticSearch / Lucene, Lucy
Natural language processing, OCR
Geocoding, GIS, TIGER/Lines
Structured, centralized logging
Workflow management: JIRA, Trac, Redmine
Source management: Git, Mercurial, SVN, CVS
|
INDUSTRY EXPERIENCE:
Sonic.net (Santa Rosa, CA) Software Engineer June 2013 - Present
Recurring savings of $60K+ per month automating E911 route event handling in-house (replacing DashCS), in a distributed microservice LAMP environment.
Integrated diverse services and legacy databases (AT&T, Sonic, Intrado, DashCS, CalOES, Metaswitch), utilizing NLP to normalize and validate names and street addresses for emergency services call routing.
E911 integration automation is fault-tolerant, self-repairing and monitored in real-time.
Integrated OLT control logic with RPC system for remote monitoring, troubleshooting, and upgrading, using Python, Flask, and uWSGI.
Implemented business logic in accounting system automation: Ledgers, invoices, payments, rebates, prorates.
Developed dashboard reports for in-house analysis of prospective customer service applications, using Javascript, D3, jqplot, perl and SQL.
Cyan Inc (Petaluma, CA) Software Engineer October 2011 - June 2013
Developed horizontal scalability of CyMS network management system.
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 microservice interfaces.
Autonomy / Discovery Mining (San Francisco, CA) Senior Software Engineer, Technical Lead May 2008 - October 2011
Head-down code-writing software engineer and technical lead for four-person engineering team. Developed high-capacity/high-performance LAMP/SOA scale-out distributed data mining system for eLegal Discovery.
Automated the Extract/Transform/Load (ETL) process, reducing time and cost of operations and enabling advanced setting of client expectations.
Expanded the scalability of ETL to process concurrently on hundreds of servers via service-oriented architecture, dramatically reducing the overall time to satisfy contracts, and making it possible to accept contracts for processing large data volumes (tens of terabytes).
At Autonomy's Zantaz office, implemented solutions for monitoring and troubleshooting tens of thousands of Xen virtual machine instances on thousands of physical CentOS servers in several geographically dispersed datacenters.
The Internet Archive (San Francisco, CA) Software Engineer, System Architect December 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
archive.org SaaS.
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 2019,
the largest PetaBox instance keeps more than forty-five 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
manpower.
Hardpoint Intelligence (Sebastopol, CA) CTO, Co-Founder November 2003 - May 2008
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.
The Sausalito Group (Sausalito, CA) Senior Software Engineer, Senior System Administrator July 2000 - November 2003
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.
Flying Crocodile (Seattle, WA) Senior Software Engineer March 1999 - July 2000
Developed massively multithreaded middleware in 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
bottlenecks.
Cygnus Solutions (Sunnyvale, CA) Compiler Tools Engineer April 1996 - March 1999
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.
First Pacific Networks Network and Embedded Systems Software Engineer February 1995 - April 1996
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.
|
EDUCATION:
University of California, Santa Cruz
Computer Science, "Operating Systems and Compilers" concentration track
Academic advisor Dr. Darrell Long
|
Programming computers since 1978. Full work history, code
samples, references are available upon request. |
|
|