Andy Mayhew
andy (at) splutball.com
650 743 5228 (mobile)
San Carlos, CA 94070
July 2005 - present
Yahoo, Inc., Sunnyvale, CA
Sr. Technical Yahoo!, Service Engineering: Local, Marketplace and Groups
Maintained production web site for Hot Jobs business unit (
hotjobs.yahoo.com) of
several hundred geographically dispersed servers of various
platforms (FreeBSD, Linux, Solaris). Included working an
on-call pager rotation, distributing code and content updates,
evaluating system performance for new hardware requests,
performing disaster recovery and SOX audits. Wrote internal
on-call rotation calendar application (php, mysql, perl) to
manage and automatically switch primary and secondary on-call
paging. This interface also allowed for simple on-call
switching and to enact a "follow-the-sun" policy for paging.
Lead project to migrate back-end database from legacy hardware
(Sun E4500 with Clariion SAN) and software (Oracle 9i on
Solaris 8) to a more modern Yahoo! supported platform (RHEL4u2,
Oracle 10g RAC, NetApp). This entailed coordinating with
Business, QA and Development groups to ensure a full regression
of the site, a complete and detailed launch and roll-back plan
was in place and all necessary resources were available during
the 20 hour migration. This lead to increased performance of
the site, along with fewer outages and an easier expansion
path. Managed the operational requirements for deploying a new
feature set to the site which required working with many
internal Yahoo! groups to co-ordinate hardware aquisition and
installation, network and storage configuration, OS
installation and software deployment within a very compressed,
government mandated time schedule. Managed various data center
moves for Hot Jobs and helped other business units with their
moves. Migrated Development and QA environments out of legacy
data center into Yahoo! space. Used migration to replace aging
hardware and refactor the environments to better reflect
Production. Worked with others within the Service Engineering
group to develop best practices, update and create
documentation (twiki) and increase the group's visibility
(Movable Type, blog). Lead small team of developers to
re-package the various applications to allow them to be
deployed and configured through Yahoo! internally developed
automated system. The added version tracking to configuration
changes and allowed for simplified management of Dev/QA
environments.
Sept 2004 - July 2005
TrustedID, Inc., Redwood Shores, CA
Principal Technologist, Engineering
Designed, developed and deployed initial prototype and alpha
of a web based consumer credit protection service for the
purposes of field testing and fund raising. Handled growing a
software development team to begin beta production. Acted as
primary architect for database, software, network and hardware
design for beta product. Wrote detailed specifications for
developers and operations people to follow. Handled timing of
resources and development milestones. Worked with vendors to
initiate quotes and contracts for network and datacenter
services for production. Set IT standards for desktop and
server platforms. Negotiated purchase deals with server
hardware, software and service vendors. Coordinated
installation timings for hardware deployments and network
connectivity. Managed IT and Software Development groups
including budgeting, hiring of staff and contractors and
scheduling. Directly reported to CTO and executive staff on
progess of software and service development, and user
experience and trending.
Jan 2004 - Jan 2005
Business Signatures, Corp. (nee CotageSoft), Redwood Shores, CA
Principal Technologist, Engineering
Designed adapter interface between Nagios and eOperations
suite. Consulted for Professional Services group on customer
implentations of Nagios and eOperations monitoring
suite. Developed java-based HTTP/S proxy server which recorded
all requisite session data (client request URI and headers,
and server response headers) needed to creating web
application transaction monitors. Managed IT operations
(email, networking, firewalls, printers, fileservers and
phones) for office of 30 staff. Ran build/release process,
including automatic QE lab updating. Developed distributed
build process which would build the entire eOperations suite
for each supported operating systems (Windows 2003 Server,
Linux, AIX 5.1 and 5.2, Solaris 7 & 8) in parallel, utilizing
ksh, ant, gcc, java, m4, rsync and ssh. Developed
self-extracting installer and configuration system for Unix
platforms.
Jul 2002 - Jan 2004
VeriSign, Inc., Mountain View, CA
Infrastructure Engineer, Architecture Group, Production Services
Designed, documented and implemented various projects to
support Production Services. Implemented first Linux-based
solution for VeriSign West operations to distribute CRL
(Certificate Revocation List) traffic. These Linux hosts used
Squid as an HTTP accelerator. Coordinated between the
Production Deployment and Standards groups to customize the
Linux kickstart build process. Each CRL server was capable of
sustatined HTTP output of 250+ mbits/sec with 60,000+
simultaneous client requests.
Lead project to create a distributed system and network
monitoring project. This project's primary purpose was to
replace and/or integrate the various divergent monitoring
systems under a single framework. Utilized Nagios, Net-SNMP
(Linux, Solaris and AIX), Concord SysEdge (Windows NT and
2000), rrdtool and Orca software packages for this project.
Responsible for developing proof of concept system along with
Phase I production implementation.
Nov 2001 - Apr 2002
Napster, Inc., Redwood City, CA
Systems Administrator, Internet Operations
Defined new standards of operation and baseline platforms for
the revamped production environment. Responsible for
implementing new automation tools for the production network
in order to bring legacy systems into convergence. Developed
project plans for various re-implementation options. Worked
on budgeting projections, time tables and lead the operations
team in the actual deployment of new management
systems. Implemented an internal encrypted corporate wireless
network. Updated corporate mail handling to be more secure
and reliable with additional spam filtering
functionality. Worked with IT to better support the developer
and QA Unix environments. Interfaced with engineering and
release management groups to develop procedures, processes and
tools to more smoothly transition software from development,
through QA, to final production. Utilized open source tools to
generate statistical reports of the beta service in
relationship to new user registrations, concurrent user
connections and server utilization. While working on these
tasks, I also helped maintain and document the legacy network.
Oct 1999 - Aug 2001
Logictier, Inc., San Mateo, CA
Senior Internet Systems Engineer, Platform Deployment
Setup and maintained core systems management infrastructure,
including Jumpstart, Kickstart, cfengine, rsync and
software/configuration repositories. Developed performance tuned
compiles and configurations for Apache web servers. Utilized various
application servers for customer implementations (jrun, jserv,
tomcat and weblogic). Initiated and implemented host level security
on production machines. Maintained logins and passwords for
production servers and restricted access controlled web sites.
Implemented intranet web servers for entire corporation and the
Internet Systems Engineering (ISE) group. Lead operations teams for
various large scale customer implementations. Helped build and
supported the ISE, R&D and QA labs. Deployed and maintained
in-house developed content management system for Logictier and
customers. Deployed and supported statistical analysis tools
(Logictier Insight(tm)). Handled initial setup of Cisco terminal
servers and switches until Network Engineering group was
established. Worked with Sales Engineering teams to develop
understanding of Logictier's processes and architectures so that
they could go to customers with the right answers. Worked with QA to
develop and test configurations of client code to ensure Logictier's
ability to support the customer. Worked with R&D to define goals
and direction for their investigations of various new technologies
for them to qualify for the Logictier environment. Wrote white
papers and support documentation for various production systems and
procedures for the NOC. Interfaced with program managers and
customers to ensure timely and smooth launches and transfers of
sites. Developed a centralized server configuration management
system utilizing Tomcat, Apache, PostgreSQL and cfengine
(http://www.cfadmin.org/).
Responsible for clearing customer data from machines in preparation
for their return to vendors. Transitioned customers from Logictier
management to other service providers.
Feb 1999 - Oct 1999
Netscape Communications Corp., Mountain View, CA
Associate Systems Engineer, Netscape Netcenter Operations
Initially acted as 'front line' operations swing shift lead.
Responsible for ensuring that the Netscape Netcenter systems
remained operational. This included ensuring that stopped and
broken servers were restarted as quickly as possible, contacting
third party content providers when their systems appeared to be
non-functional and attempting to debug service outages so that
more information could be passed to back line personnel when
issues could not be resolved within a 15 minute window. As shift
lead, I managed swing shift operations. Responsibilities included
delegating control of service issues, making sure that unresolved
issues were passed to grave shift and helping my staff's
training and understanding of various specifics of our network
and more general network and operating system debugging. Later, I
shifted positions within Netcenter Operations to 'back line'
helping to grow and maintain Site Central. Responsible for setup of
machines to be delivered to the AOL Datacenter in Dulles, VA.
Machines included Sun Ultra 2 and Sun A1000 Storage systems.
Helped product development engineers and producers in developing
an expansion plan for the network and hardware architecture.
Sep 1997 - Jan 1999
WMW Communications, Inc., Orlando, FL
Systems Administration and Development
Acted as the lead programmer for several projects, defining
specifications, writing white papers, developing skeleton code
and managing other programmers. Managed the Technical Support
staff making sure that individuals maintained a high level of
professionalism and were kept informed about system
changes. Acted as the first level of escalation for customer
problems. Primary contact for commercial clients. Worked with
vendors in order to evaluate products for in-house and client
use and gave those vendors feedback on how they could make
their products more useful to us and our clients. Revised
Access Orlando's web site so that is was visually and
navigationally consistent, the underlying HTML was cleaner,
and was more easily maintained and updated. Developed CGI's,
Java applets and JavaScript for Clear Channel Communications,
Orlando radio stations (WTKS, WSHE, WMFG, WJRR). Worked with
web developers to ensure consistency and supported the
technical issues in making pages and scripts as
browser-independent as possible. Developed and maintained
software for various client contracts including Lucent
Technologies, Inc. Created databases and related CGI interface
software to track ISP registrations. Wrote and ran automated
software/hardware systems to conduct International K56flex(TM)
modem field testing. Developed System Administration scripts
for in-house use for Access Orlando. Provided technical
assistance to other program developers in various other
projects. Worked with other developers to create solutions
for customers. Used, maintained, worked with and occasionally
wrote patches for various servers including Oracle (Linux and
Solaris), mSQL, PostgreSQL, Radius, httpd, smail and popd.
Jul 1994 - Aug 1996
Network and Communications Management, Inc., McLean, VA
Technical Support and Software Development
Responsible for testing, setup and technical support of client
networks. System administration of local Novell and TCP/IP networks.
Participated in the development of new product solutions for
multi-protocol networks.
Sep 1995 - May 1996
Institute for Simulation and Training Service Center, Orlando, FL
CGI Programmer and Systems Administrator
Development and maintenance of CGI software including search
engines and event-based calendar systems. Maintained various
DEC Alpha based Digital Unix server machines.
Jun 1993 - Aug 1994
The Muse Consulting Group, Burke, VA
Technical Assistant
Responsible for the setup of workstations and Ethernet wiring.
Bachelor's of Science in Computer Science.
University of Central Florida, Orlando, FL
Operating Environments: |
Unix (Linux, Solaris (6, 7, 8), FreeBSD (4.x)),
BeOS, OS X.
|
Languages: |
Perl, various shells (sh, bash, csh, ksh), PHP (4 & 5),
expect, JavaScript, Java, C.
|
Software: |
Apache (1.3.x-2.2.x), Tomcat (3.2.x), JBoss, Weblogic, iPlanet
(nee Netscape) Enterprise Server (3.x, 4.1), sshd, bind,
postfix, exim, JumpStart/Kickstart, cfengine, PostgreSQL,
Mysql, CVS, Subversion, Nagios, Webalizer, mrtg, RRDtool,
LaTeX, make, ant, Bugzilla, Movable Type, twiki.
|
Hardware: |
Sun Ultra 2, Ultra 5/10/80, E6500, E4500, E220R, E420R,
Netra series, D1000.
Various PC server hardware (Dell PowerEdge, IBM X-series, HP).
Cisco Terminal Servers and switch gear.
|
Charles Beadnall, Andrew Mayhew, "CfAdmin: A User Interface for Cfengine"
USENIX Proceedings: 15th Systems Administration Conference (LISA 2001)
Andrew Mayhew, "File Distribution Efficiencies: cfengine versus rsync"
USENIX Proceedings: 15th Systems Administration Conference (LISA 2001)