David Lindes

(Note: Appending "-2022" to the end of the before-the-at-sign side of the above e-mail address will get a much better chance of a speedy response.)


UNIX Systems administrator turned software developer and (/turned) instructor/mentor. Tools and automation focus.


Not actively seeking work. Open to considering opportunities using Common Lisp, Clojure, Scheme, or Haskel; to remote-friendly contracts or employment in other areas of my past experience; to junior-level management in software development and/or operations groups; and most importantly, to opportunities (including as a volunteer) helping under-represented folks (women, BIPOC, trans folk, etc.) learn the sorts of skills I've had the privilege of learning.


Languages: Common Lisp; Ruby; C; C++ (including STL); Python; Perl; Mason; SQL; XML; XSLT; SGML; HTML; PostScript; sh; ksh; csh; sed; awk; LPC; PHP.
Operating Systems: MacOS (6 through 9, MacOS X); GNU/Linux (Ubuntu and others); IRIX; Solaris; SunOS.
Programming: AWS EC2 and related automation; database-driven web apps; data visualization; data mining (from databases, log files, etc.); Custom interfaces to Remedy; back-end "filter" utilities for Remedy; Python module for Remedy (using C API); utilities for use from a UNIX shell; small applications for PalmOS devices; systems administration-related automation scripts; CGI web pages; a UPS status monitoring daemon.
Applications and Tools: Ansible; Puppet; Chef; git; SSH; rsync; Ruby on Rails; make; jam; gcc/g++; Subversion (svn); CVS; RCS; DNS (BIND); Remedy; Sybase; Oracle; snoop; tcpdump; tripwire; PGP/GPG; par; truss; strace; Legato Networker; FrameMaker; Showcase; Apache; NCSA httpd; Sendmail; Netscape Messaging, Directory, and Enterprise Servers; Netscape Communicator; Lynx; Mutt; MediaMail; CodeWarrior; Wingz.


Hackbright Academy (February, 2018 through July, 2018): Instructor (part time)
Part of the instruction team for Hackbright's Prep course. Presented lectures, answered questions during lectures and lab time, made curriculum improvements, and general administrative tasks (roll, etc.).
Hackbright Academy (February, 2018 through July, 2018): Instructor (part time)
Part of the instruction team for Hackbright's Prep course.
(January, 2016 through the present): Personal time
Took more time to work on other things, including handling my mother's estate upon her death.
iRhythm Technologies Inc. (through Taos Mountain, LLC. ; October, 2015 through January, 2016): Consultant
Autodesk, Inc. (through Taos Mountain, LLC. ; February, 2015 through October, 2015): Consultant
Hortonworks (through Taos Mountain, LLC. ; June, 2014 through January, 2015): Consultant
(May, 2009 through May, 2014): Personal time
Took time to travel, pursue artistic endeavors, etc.
Google, Inc. (January, 2008 through April, 2009): Site Reliability Engineer
Provided support, including on-call duties, for Google Analytics, Webmaster Tools, and other Google products.
Super Pod, LLC (for several clients) (August, 2007 through November, 2007): Consultant
Developed a full website using Ruby on Rails to gather customer feedback for a major shrink-wrap software vendor: Set up SVN-based revision control; Implemented front-end design from specifications, including image-upload and text entry functionality; Created back-end ("administrative") interface, including search functionality (using ferret); Configured Apache web server with password-protected admin area, and password-protected staging version. Performed system-admin tasks for Super Pod internal infrastructure. Developed automated tools to assist in a major website localization project. Assisted and trained junior staff members in technical aspects of localization.
Localcents, Inc. (working on their Villij.com website) (January, 2007 through July, 2007): Consultant
Initiated getting their source code into revision control (First CVS; later converted to Subversion). Trained users on these systems. Separated their environment (both database and code) into development, staging, and production modes, with a development environment for each developer. Introduced pair programming, test driven development, refactoring, and other best practices. Installed NTP on servers to get good time synchronization. Created, and automated, backup procedures. Consulted on company development strategies. Created system for recording and monitoring application growth statistics. Instituted use of web page templating using Smarty. Instigated the use of TinyMCE for WYSIWYG blog editing. Converted PHP system to Ruby on Rails (still in progress as of last update). Created Rails database Migrations to get table structure to work with rails; instituted the use of Migrations for all database changes.
Isilon Systems (July, 2005 through January, 2006): Software Development Engineer
Fixed various bugs in the Isilon system, including kernel-level changes. Provided general maintenance for "CPR", Isilon's utility for filesystem integrity checking, debugging, and repair. This work included fixing bugs, working on documentation improvements, and doing minor feature enhancements.
Infospace (through Kforce Professional Staffing ; March, 2005 through July, 2005): Consultant
Modified existing PHP application to add new functionality and fix bugs. Customized workflow to create new custom functionality in Remedy's CSS application. Consulted on additional Remedy workflow changes. Created an application for tracking and reporting on Remedy license utilization over time.
Amazon.com (August, 2003 through December, 2004): Software Development Engineer
Supported, operationally, several high-visibility applications on a rotating 24 by 7 basis. Debugged various problems in software supported by me as well as that upon which it depended. Gathered requirements for, designed, and developed several reporting tools. Designed and developed data visualization utilities for several of these (including a "traffic light" indicator as well as various graphs). Designed an internal web site organizing several such tools, including tools developed by myself and by others. Mentored and trained (informally) others on topics ranging from software development to basic UNIX understanding to the intricacies of specific tools and applications. Advocated for quality solutions to problems at hand -- pushing for long-term solutions over short term; sustainability over easy-right-now; the "right" solution over something that merely solved the most pressing problem currently surfacing. Assisted the Remedy team with Remedy administration and troubleshooting tasks. Participated in the interviewing of new candidates both inside and outside of my immediate group.
Silicon Graphics, Inc. (contract) (April, 2002 through May, 2003): Software Developer/Network Analyst
Developed several reporting tools (including the aspects of data collection and data mining and reporting) as well as automation-oriented tools. Utilized XML and XSLT to do data encapsulation and extraction for collection tools, as well as for configuration of dynamic reporting tools. Automation work included configuring SGI's installation tools for 100% automated install, and doing post-install scripting for configuration of installed machines. Mentored various members of the immediate group as well as a couple of adjoining groups on myriad topics ranging from general systems and network administration principles to best practices to perl scripting. Provided technical assistance and conference to various SGI team members worldwide, having various technical skill levels and cultural backgrounds. Analyzed and solved myriad technical problems as they came up. Filed bug reports when problems with SGI's IRIX operating system or related tools were involved. Performed a variety of cleanup tasks, working towards making an environment which had been filled with legacy configurations which were frequently not very well understood into a smooth, uniform (to the extent possible), and much more stable environment.
Independent consulting work (April, 2001 through June, 2001): Software Engineer
Authored C code to provide a Python module which would interface to Remedy's Action Request System (ARS) through the ARS C API. Wrote code to pull data from a MySQL database and then dynamically build from it an ARQualifierStruct to represent a search in the Remedy ARS. Assisted with debugging and enhancement of the larger application -- a Remedy interface for WAP devices (e.g. mobile phones).
Counterpane Internet Security, Inc. (January, 2000 through April, 2001): Software Engineer
Developed code to use the Remedy C API to communicate between Remedy's Action Request System (ARS) and Counterpane's proprietary automatic incident reporting system. Created and maintained Counterpane's CVS repository, including back-end programs to do notification of changes, validation checks, and automatic pushes of some data, such as web content, to appropriate servers. Provided training in the use of CVS to developers not already familiar with it, or who needed additional training. Performed a variety of Systems Administration tasks until such time as we hired on a full-time sys-admin.
Global Networking And Computing (GNAC), Inc. (July, 1999 through January, 2000): Member, Technical Staff
Designing and building internal tools, maintaining and enhancing existing tools. Acting as a mentor to junior Operations staff. Providing tool development services to client companies.
Netscape Communications Corporation (September, 1998 through June, 1999): Member, Technical Staff
Acted as a liaison between Technical Support and Core Engineering for the Netscape Messaging Server product. Took escalations from Technical Support into Engineering. Created bug fixes for customers. Acted as a main back-line contact for large customer deployments.
Silicon Graphics (including subsidiaries) (July, 1996 through September, 1998): Senior Systems Administrator
Provided back-line system administration support for several engineering user communities, while also being an active, contributing member of SGI's worldwide systems administration community. Provided implementation and maintenance support for business supporting programs and applications. Supported and monitored divisional servers (DNS, NIS, sendmail, web, Synchronize, Networker). Active participant in the implementation of IS processes, tools, and procedures. Represented Silicon Studio and Alias|Wavefront subsidiaries to global SGI IS community. Defined, developed, documented, built and maintained applications, scripts, and tools to enhance effectiveness of users and the divisions. Designed and built a nameservice management system, backed by a Sybase database.
MicroUnity Systems Engineering (through Taos Mountain ; April, 1996 through July, 1996): Systems Administrator
Responsible for upgrading 60 SGI workstations and servers from IRIX 5.2 to 5.3, while maintaining functionality of highly customized local environment. Built installation images for local software. Documented upgrade process for other SysAdmins. Assisted the SysAdmin group with other tasks.
Silicon Graphics (through Taos Mountain ; October, 1994 through April, 1996): Remedy Administrator, Help Desk Staff
Sole administrator of Remedy system for worldwide IS group. Provided reporting of Remedy data, including aggregate metrics, trending graphs, and custom reports. Upgraded, configured, and maintained Remedy server software. Worked with Server Operations to provided 24x7 availability of the Remedy application. Built installation images for client software distribution.

Provided front-line phone support to SGI employees, and acted as a leader within the SGI Help Desk group. Ran backups for group using Legato Networker. Served as administrator for group's main WWW and mail server. Resolved numerous system administration and application problems. Assisted in operational decisions for the group. Trained and mentored new help desk staff members.
Sun Microsystems (through Taos Mountain ; May, 1994 through September, 1994): Technical Support Engineer
Provided technical support for Sun customers as part of the North American Solution Center team. Re-created customer environments, reproduced customer problems and filed detailed bug reports.
Silicon Graphics (January, 1994 through April, 1994): UNIX Systems Administrator
Provided overflow assistance for divisional Systems Administrator. Provided end-user support for a small hardware design group and their IRIX-based systems. Assisted with backups and other tasks throughout the division. Enhanced automation of tasks.
Passage Systems, Inc. (October, 1993 through December, 1993): Member, Production Staff
Proof-read conversions into SGML of technical documents for on-line viewing, comparing against print copy. Assisted with systems administration tasks.
San Francisco Bay Area Theatres (December, 1986 through December, 1994): Technical Theatre Staff
Served as a member of the staff at a half dozen bay area theatres at various times. Responsibilities included Stage Management, Lighting, Sound, Video, Set Construction, Painting, Properties Management, Stage Crew, and more.




IRIX System Administration; Advanced IRIX Administration; IRIX Network Administration.


Photography; Filmmaking; Travel (around the U.S., Berlin, Dresden, Vienna... hopefully much more to come); Glass in various forms - blown glass, fusing, stained/leaded glass, etc.; Chain-mail (knitted metal rings); Software Development (some of it on github); Electronics Tinkering; Psychology; Philosophy; Technical Theatre; Amateur Radio (FCC call sign: KF6HFQ).


Note: The latest version of this document can be obtained from:
Current Revision: 2.42+1.12 (mode 2-0-0-0), updated 2022-11-11