Build enterprise-class architecture for small businesses, using high quality open-source components.
Over twenty years of professional experience in information technology. Comfortable with many positions, from project manager to sole developer. Quick study and capable researcher, self-trained in all computer skills. Heavy emphasis on test-driven design, repeatable infrastructure, and other agile development and architecture practices. Experienced at debugging, both personal code and existing systems. Strong preferences for low cost, open source, and inter-operable solutions. Solid writing and copy-editing skills, including technical and policy writing.
Primary focus in system automation, including customization and extension of many popular open-source packages. Strong skills in functional and object-oriented programming across many diverse languages. Comfortable with most layers of common development stacks, with a preference for deep system integration.
Server administration and user technical support across all major platforms, in a wide range of software domains. Capable of end-to-end system implementation, including requirements gathering, architecture design, server provisioning and build, software development, product launch, and support infrastructure. Solid hardware-level understanding of most computer, electronic, and electrical components.
Platforms and Applications
, Apache HTTPd
Staff DevOps Engineer
September 2013 - present
Maintained and developed on the core infrastructure (Cassandra, Elasticsearch, and custom Java and Scala code, deployed with Cloudformation and Puppet) for the new distributed data stack. Provided front-line operational support to relieve core developers during performance pushes. Took ownership of deployment for largest customer team during critical delivery push. Provided guidance and conducted experiments to further stabilize and test the core stack. Open sourced a useful ancillary tool (cloudformation-ruby-dsl) written by coworkers.
Developed an internal PaaS offering using Flynn.io, which provides a stable, decentralized, container-based build and deployment framework to numerous teams in a variety of environments.
Senior Operations Engineer
May 2011 - June 2013
Core developer on the cluster orchestration suite Ironfan
through two major releases, including adding support for multiple cloud providers. Supported eight developers in system deployment and incident responses. Standardized all internal cloud servers (85+ across 5+ active clients) to common deployment stack, including regular redeployments. Championed and built continuous integration (CI) for full-stack deployments. Wrote lightweight AAA (authentication, authorization, and accounting) server for our metered data offering (now discontinued). Continually reduced overall system expenses, by guiding developer usage, cleaning up data stores, and suggesting products for discontinuation. Organized and interacted regularly with Ironfan open source community, including presence via email, issue tracking, social media, and occasional speaking engagements (both in person, and via web-cast). Ran our internal role-playing game.
Contract System Administrator II
June 2010 - December 2010
Standardized Linux architecture for Perforce installation, including many custom Perl and BASH scripts, and geographically dispersed proxies. Wrote BASH instrumentation for a heavily threaded C++ program and Perl testing script, for the Windows to Linux migration of a 5TB Perforce installation; developed Python solution to recover over fifty thousand revisions rendered inaccessible due to naming issues. Provided Tier 3 support, including on-call, for many applications including Agile, Confluence, Oracle SSO, Subversion, and more. Developed and debugged across many architectures, including Weblogic, Oracle Application Server, and Tomcat on Redhat, Solaris, and Windows servers. Organized hardware architecture estimates for SDL Trisoft DITA, saving roughly $75,000 in up-front hardware costs by tapping existing internal VMWare cloud. Served as internal Linux SME on several disparate projects, both inside and outside the team.
November 2005 - September 2006
Rebuilt external technical support department after lead tech was incapacitated. Assembled test fixtures and scripts for Linux-based video game cabinets. Wrote policy for clearer and more efficient Warranty and Advanced Replacement programs. Trained replacement tech up from basic computer competence. Implemented web support and management system in Salesforce, and trained internal users. Assisted in design testing for new product configurations, and debugging Linux related C++ compilation problems. Built Bacula backups backups for large (500+ GB) backup footprint. Supported 20+ users, in a multi-OS environment, including client rebuilds. Maintained intranet presence on five servers, and internet presence through a variety of hosted applications.
Steve Jackson Games
November 2004 - January 2006
Maintained intranet and internet presence on seven servers, migrating systems to new network configuration during office move. Supported 20+ users, in multiple OS environment, including client rebuilds. Rebuilt software license database and paperwork. Assisted in migration of web-based game from ASP and MS SQL to Perl and MySQL. Maintained extensive webtree, covering 25 domains and subdomains. Replaced outdated file, NAT, and backup servers, and added local DNS and DHCP. Documented existing and new IT processes.
March 2003 - Current
Contract work in web development and system administration for various clients, across a broad range of domains; personal internet presence for email, remote testing, and personal projects and experimentation. Software development focused primarily on PHP and Python in LAMP environment (including Drupal/Ubercart), with sidelines into Plone/Zope and other architectures. System administration focused primarily on LAMP system installation and optimization, with sidelines in virtualization (Xen, LVM), developer tools (SVN, Git), and email (Sendmail, Spamassassin, and others).