Tyler MacDonald
PO BOX ****
Victoria, B.C.
V*W 3S1
*****@*********.****
Expertise:
Developing Server Software (C, C++, Perl, MySQL/Postgres, APR,
Berkeley DB); 16 years' experience
Web Programming (Perl, PHP, MySQL, AJAX, CSS, XML, JavaScript,
C#/.NET, Ruby On Rails); 9 years' experience
Network Design & Security (Switching, routing, Cisco IOS, intrusion
detection systems, firewalls, IP tunnelling, anti-virus, security policy
development, email filtering); 11 years' experience
System Administration (Servers, maintenance, scripting/automation,
backups, client support & training, anti-spam, server load
monitoring/early warning systems); 11 years' experience
Debian GNU/Linux (Deployment as a Server or Workstation, package
building, streamlining); 8 years' experience
Current Projects:
FillZ, Inc. (Victoria, BC); an AbeBooks company August 2007 Present
Senior Technologist http://www.fillz.com/
Technologies: Linux (Debian, Redhat), Apache, MySQL, Perl, Xen, Java, C,
Zimbra, OTRS, Subversion, Nagios
FillZ was aquired by AbeBooks from a propietor, Miron Cuperman. From a
technical standpoint it was basically a one man show. I underwent a full
knowledge transfer from Miron and bootstrapped a development
organization, implementing defect tracking in JIRA, test and release
branches in subversion, and the process that surrounds it. From 2007 to
mid-2009 my job was a development / sysadmin hybrid; in 2010 we have 2
dedicated administrators and while I still do systems programming, I am
more focused on the development side and the FillZ product itself.
From August 2007 to August 2009, was part of a weekly on-call rotation,
starting with just me, ending with 3 people on a weekly cycle. I have
retired from pager duty at FillZ but am not adverse to taking it on again
in the future.
Grew the technical team from 2 people in 2007 to 6 in 2010 to keep up
with growth and business demands. (2 dedicated sysadmins, 3 dedicated
developers, and me, the glue). We have gone from roughly 200 active
customers to over 600, and with some excellent help from the business
side we have increased our monthly GMV by almost 400% since I started in
August of 2007. We have adopted a mostly Agile development structure,
focusing on teamwork and collaboration while trying to maintain a good
level of self-direction. Employees are encouraged to spend some of their
core hours at the office researching and experimenting.
Developed and maintained the FillZ.com webside and backend processes
responsible for managing and synchronizing customers' inventory and
orders across multiple sales channels.
Established automation in FillZ infrastructure; virtual and physical servers
are defined in a YAML file which is checked into subversion and then used
to generate DNS, Nagios alert, munin graphing, and server-to-server
communication information. The same file also defines server roles ;
when a server starts up, it references the file to see what services it should
start up / shut down and the appropriate adjustments are made to the
symbolic links in /etc/rc?.d.
Consolidated infrastructure for ease of management. We used to be
spread out across 4 ISP's, now we are with one ISP on standardized
hardware in 3 data centers.
Transitioned virtual server deployment from a CentOS 4 reference xen
image to a formal build process involving debian and deboostrap to
create viable FillZ server images from scratch. As part of the process,
enabled automated builds triggered by subversion checkins, which also
run all unit tests and post the results to our Smolder server. As part of this
we also now have our own debian repo, and build our own perl modules as
debian packages to make it easier for our operations team to deploy
updates.
Currently experimenting with transitioning some of our servers to our
parent company's service, Amazon Elastic Cloud (EC2).
ACD Systems (Victoria, BC) October 2006 July 2007
Senior System Administrator http://www.acdsee.com/
Technologies: Windows Network (Exchange, ActiveDirectory, DNS, IIS, etc),
Cisco Network (PIX, IOS, CiscoWorks), Linux Network (Debian, Redhat,
Apache, Cacti, SNMPD, etc), PBX (Amaya)
Database Administrator
Technologies: Microsoft SQL Server (2000 & 2005)
E-Business Developer
Technologies: Visual Studio.NET (C#), T-SQL, XML, SOAP
Web Operations Developer, Lifecast http://www.lifecast.com/
Technologies: Linux, Ruby on Rails, MySQL, AJAX, SOAP, Image
Manipulation, IIS, Visual Studio.NET(C#/C Adobe Flash
Established SNMP monitoring and reporting across all servers/routers
Maintained a diverse network of servers and workstations
Developed administration tools to automate network maintenence
Lead developer for Lifecast, a collaborative storytelling website.
Maintain and extend 60+ gigabyte replicated Microsoft SQL Server
databases
Develop Intranet applications and Business-to-Business middleware for
Systems, Marketing, and Development teams.
Stayed sane while company reduced headcount by over 50%, moved to a
smaller office, and tossed me from position to position.
yi.org Dynamic DNS http://www.yi.org/
Independent Programmer & Sysadmin November 1998 Present (Spare Time)
Production (Coded in 2002): Linux, MySQL, Perl/mod_perl, HTML, HTTP,
CSS, XML, C, Apache2, DNS, TCP/IP, PayPal, postfix,
SpamAssassin, proftpd, CVS, Perforce
Development (In Progress): Linux, PostgreSQL, Apache2, C, Ruby on Rails,
BIND 9.4 DNS, TCP/IP, PayPal, Subversion, AJAX
High-performance Dynamic DNS update system implemented as a C-based
Apache2 protocol handler module
In the top of it's class for features, speed and reliability
mod_perl-based web interface for manual updates to DNS information
Custom extensions to MyDNS DNS server for statistics logging
Provides Dynamic DNS to over 40,000 free hostnames and 400+ registered
domains
Provides webspace, email, and CVS to friends, family, and small businesses
CPAN & Debian mirror site
Open Source http://www.crackerjack.net/
http://search.cpan.org/~CRAKRJACK/
Independent Programmer December 2003 Present (Spare Time)
Technologies: C, Berkeley DB, PHP, Perl/XS, Apache2, HTML, HTTP, CSS, etc
C-based Apache2 module implementing BitTorrent swarming download
protocol with Perl and PHP language bindings for extensability
Several perl modules on CPAN covering areas such as databases, user
interface, object structures, and the apache web server
Fledgling participant in mod_perl (http://perl.apache.org/) development
Past Projects:
Sophos (Vancouver, BC & Abington, UK) September 2004 August 2006
Weekly Release Manager / UI Tech Lead http://www.sophos.com/
Technologies: Perl/XS, C, Apache2, XML, HTTP, CSS, PostgreSQL, Perforce,
AJAX
Architected and developed next-generation web interface to administer the
Sophos Email Security Appliance (ES4000):
http://www.sophos.com/products/es/gateway/es4000/
Designed PostgreSQL database for the Email Security Appliance to process
and report on 1,000,000 message/day mailflow; 120+ tables, some in
excess of 1,000,000 rows. Developed aggregation scripts, views and
triggers to speed up delivery and preformat data in SQL to feed directly to
reporting and search.
Development on PureMessage(tm), Anti-Spam/Anti-Virus software used by
Amazon, Cisco, ING Bank, Bell, UBC, Bank of England, and many others
Led team of 4 developers / 2 QA responsible for the creation, testing, and
release of weekly updates for the Email Security Appliances.
Interviewed potential hires
Best Buy Canada http://www.bestbuy.ca/
Contract Programmer August/September 2004 (Full Time)
Technologies: Perl, PHP, IIS, Apache, MySQL, MSSQL, Oracle, Win32 OLE,
Active Directory, JavaScript, Cisco IOS
Designed and developed Best Backend, a web-based tool to manage Best
Buy's day-to-day system administration tasks across over 30 servers in a
diverse envrionment (web servers running IIS and Apache, databases
running MySQL, MSSQL, and Oracle, routers in both Cisco and Barracuda
flavours).
Component Verification (Victoria, BC; Company in Calgary, AB)
http://www.hemisphere-ng.com/
Contract Programming Team Member April 2004 August 2004 (Part Time)
Technologies: MySQL/InnoDB, PHP, Perl, HTML, PDF, CSS, JavaScript
PHP-based Web Application enabling engineers to design, customize, and
fill out complex forms used in their trade
Perl-based system for filling out above forms on laptops with no Internet
access for later uploading
Complete security and database design audit of the entire project
ADMA (Victoria, BC; Company in Atlanta, GA)
http://www.navasmultimedia.com/adma.php
Contract Programmer February March 2004 (Part Time)
Technologies: MySQL, PHP, HTML, CSS, JavaScript
Online accounting data management environment for accounting firms and
their clients
Monkey Tree Pub (Victoria, BC) http://www.monkeytreepub.com/
Contract Programmer February 2004 June 2004 (Part Time)
Technologies: MySQL, PHP, HTML, CSS
Web administration interface to update the pub's menus, maintain photo
galleries and web logs
Medical Services Provider (Victoria, BC) (Non-Disclosure)
Contract Programmer June November 2003 (Part Time)
Management Assistant July 2002 January 2004 (Part Time)
Technologies: MySQL, Perl/mod_perl, HTML, CSS, JavaScript, GD
Wrote a Membership Management System to log and graph pertinent data
relating to confidential membership information
Provided customer support and staff training
Assisted in the design and implementation of office procedures
Maintained and updated meeting minutes and staff work logs
WeDoHosting.com, Inc (Victoria, BC) http://www.wedohosting.com/
Manager of Information Systems November 2000 July 2002 (Full Time)
Global Connection Services http://www.globalcsi.com/
System Administrator/Programmer March 1999 July 2002 (Full Time)
Technologies: Linux, MySQL, Perl, C, bash, HTML, CSS, Qmail, DNS, proftpd,
Apache, Webalizer, BillMAX, JavaScript, proftpd, Cisco IOS,
CVS, BlackDiamond OS, FastCGI, HTTP, ipchains, AMANDA,
iBill
Connected Apache webservers, FTP servers, UNIX accounts, backup
schedules, domain registration, web stats, and BlackDiamond router
bandwidth stats to the BillMAX accounting system
MySQL-based logging of customer statistics
Developed web interface for customers to view their statistics and change
personal details
Designed, implemented, and maintained a medium-scale Internet Service
Provider
Built, maintained, and monitored a collection of Linux-based webservers
Implemented backup systems for servers and office workstations
Provided technical assistance to executive staff
Developed a Perl-based advertising and revenue management/tracking
system ( ShareWeb )
Developed an intrustion detection and management system for content-
based commercial websites, handling automatic firewalling of abusive users
(password sharing, brute-force hacking, etc) and an alert system for
excessive abuse and/or Denial of Service attacks ( SysAngel )
Paradon Computer Systems (Victoria, BC) http://www.paradon.com/
Programming Team Member November 1998 March 1999 (Full Time)
Network Administrator
Technologies: Linux, Windows NT, IIS, sendmail, DNS, Panasonic Voicemail,
MSSQL, ASP, Visual Basic, Perl, HTML, CSS, JavaScript
Connected the Paradon Computers website with point-of-sale system
Worked on replacing existing point-of-sale system with a more modern
web-based system
Built and maintained Linux-based email/DNS server
Maintained existing Windows NT IIS/MS Exchange server
Implemented backup systems
Managed IP network and voicemail systems, including some programming
and rewiring
Provided technical assistance to executive and sales staff
Axion Internet (Vancouver, BC) http://www.axion.net/
UNIX System Administrator August 1997 March 1998 (Full Time)
Technologies: Solaris, Linux, Apache, sendmail, MySQL, AMANDA, Cisco IOS,
OSPF, INN, NNTPcache, Perl, C, HTML, RADIUS, sendmail,
Visual C++
Connected accounting/sales systems to RADIUS authentication, UNIX
accounts, SMTP/POP, virtual domains, etc
Provided a trouble ticket system and knowledge base for tech support
Developed monitoring and graphing of user activity, including attempted
duplicate logins
Maintained Sun Microsystems and Linux network servers
Planned and implemented the assimilation of two other ISPs (UltraNet and
Internet XL)
Trained technical support staff
Provided technical assistance to executive and sales staff of Axion and it's
parent company, the Varshney-Chowdry Group
Performed on-site installations of Linux-based firewalls and web
cache/proxies for business customers
Coordinated with Cisco System Administrator on routing and connectivity
issues
Paradon Computer Systems (Victoria, BC) http://www.paradon.com/
Programmer 1996 (Full Time)
Technologies: SCO UNIX, Visual C++, ANSI C, 80386 Assembly, Ascend
Routers
Developed experimental Voice-over-IP desktop and server software
Designed and developed automated hardware troubleshooting systems
USCyber (Victoria, BC; Company in Wisconsin, MD)
Programmer 1993-1995 (Part Time)
Technologies: SunOS UNIX, Perl, C
Developed menu presentation and account management software for
nationwide dialup ISP
Aladdin Group (Victoria, BC)
Programmer / System Administrator 1994-1995 (Part Time)
Technologies: Linux, Perl, NCSA HTTPD, C, FoxPro
Implemented and maintained linux-based connection between pay Bulletin
Board System (BBS) and the Internet
Education:
Sun Solaris 2.x Certified Network Administrator (Learnix Vancouver, 1998)
Extreme Programming Training (Cutter Consortium Massachusetts, 2005)
References:
Shaun Jamieson: President, FillZ.com
*****@*****.***, 250-***-****
Greg Froh: Manager of Information Systems, ACD Systems (Supervisor, Sr.
System Administrator, DBA + eBusiness Developer)
****@****.**, 250-***-****
Cam Carmichael: Operations Manager, Lifecast (Supervisor, lifecast.com)
***********@******.***, 250-***-****
Neil Watkiss: Development Manager, Sophos (Supervisor, Email Security
Appliance)
***********@******.***, 778-***-****
Chris Herbert: Cisco Systems Administrator, Axion Internet (Coworker)
********@***********.***, 604-***-****
Hans Yodzis: Manager of Network Operations Center, Terago Networks
(Contractor)
****.******@******.**, 403-***-****
Hans Navas: President, Navas Multimedia (Supervisor, ADMA +
Component Verification Forms)
****@***************.***, 250-***-****
Derek Rathwell: Former President, WeDoHosting.com (Supervisor,
WeDoHosting + GlobalCSI)
*****@***********.***, 250-***-****