As an IT consultant, I provide technical consulting and support for end users and corporations on a daily basis. As a senior systems administrator, I provide both workstation and server administration for Windows and Linux systems, including: database administration (MySQL), email administration (Linux - postfix / qmail), system performance analysis, data network infrastructure, server and storage infrastructure, capacity planning, plus disaster recovery plans, among many other things. I excel at writing scripts to create automated systems and services, in order to provide reliable solutions to repetitive tasks - refer to Related Job Experience section.
I have extensive experience administering corporate and virtual / private / secure networks. I administer security policies, and implement corporate security through the use of virtual private networks (VPNs) and reactive firewalls and firewall policy chains; I have endless experience setting up storage and network infrastructure, network print services, and use Citrix XenServer, and VMWare Workstation (virtual machines) daily. I am a highly skilled technology problem-solver and excel at being able to provide solutions on the spot, especially in the capacity of network infrastructure, mobile and IT technology.
I am an expert with computer hardware and software, application integration, and troubleshoot Windows workstations and desktops daily; in fact, I currently provide Internet support (via remote desktop) to a company mailing list of 79,000 Windows users world-wide. I am a self-motivated and driven technology enthusiast and have authored over 1,200 online articles and published 6 books on Microsoft Windows, personal computing, and security.
I hold a Bachelor of Computer Science degree from the University of Windsor, Windsor, Ontario, Canada. I have over 45 hours of training for Windows Server 2012 (r2) certification.
Linux and Windows Systems Administration, 2001 – Present
I have worked with numerous IT corporations in the last 13 years, including Rackshack, EV1.net, The Planet, ServerMania, and Softlayer (IBM). In that time, I have worked with varying corporate security policies, network infrastructure, server and storage infrastructure, and have implemented capacity planning and disaster recovery plans in many instances. Specifically, I have managed and configured dedicated Linux and Windows workstations and servers using various web-based control panels, trouble ticket systems, virtual private networks, subnets, IPMI, SSH secure shell, S/FTP, reverse DNS, DNS, NAS, and virtual machines.
Senior Systems Administrator, Tech Analyst, Systems Analyst, Infopackets, Inc, Lakeshore, ON | 2008 – Present
I provide system and network administration for Windows and Linux servers using secure virtual private networks (VPN) via secure shell and remote desktop. Tasks include: database administration (MySQL - configuration, tune, and repair), email server administration (postfix mail transport agent, Dovecot), Perl and PHP programming, system performance analysis, server maintenance, managing storage infrastructure (local and remote via secure shell), capacity planning and disaster recovery through the use of virtual machines. I also write scripts to reduce repetitive tasks and to keep the server running as an automated system.
I also provide Live tech support to company mailing list of 79,000 users, where I connect to both end users and corporations using a remote desktop. From there, I consult, answer questions, trouble shoot, provide application integration, disaster recovery plans, network maintenance and implement security policies and virtual private networks using OpenVPN (open source virtual private networks), firewalls, and even network print services - plus, much more.
I.T. Consultant, Publisher, Systems Administrator, Web Developer, Computer 411, Windsor, ON | 2001 - 2008
I serviced the Windsor area with on-site PC repair, and managed private networks (Windows). I studied the PC industry in-depth, and wrote articles based on the industry and my experiences. I published 2-3 articles a day for 5 years to an audience of 150,000 users, plus wrote 6 books. I was the system admin for multiple dedicated Linux web servers; as a programmer, I wrote over 100+ elaborate and custom programs and scripts to automate the web sites and servers.
VMWare workstation (virtualization), disaster recovery, RAIDs, local and remote / cloud backups, administration services, file and print sharing, task scheduling and scripting, DOS / command prompt / power shell and batch scripting, network administration (some active directory, workgroups, secure and simple file sharing, secure / private networks / subnets, SSH secure shell, openVPN and PPTP, TCP/IP, DHCP and static IPs, DNS, WAMP [Windows, Apache, MySQL, PHP], routers, switches, port forwarding, firewalls, reactive firewalls, network services, web scripting, S/FTP, remote desktop, rsync), PC repair, credential management, secure password management, parity file backups, and much more.
Redhat / CentOS / Debian Linux, Citrix XenServer, IPMI , LAMP (Linux, Apache, MySQL, PHP), writing automated scripts using Perl and Bash, regular expressions, MySQL (setup, tuning, config, programming, repair), mysqldump / mysqladmin scripting, network scripts, subnets, DHCP, static IPs, hostname, resolve, bind, reverse / DNS, openVPN, Plesk and cPanel web control panels, iptables / fail2ban / APF firewalls, SSH secure shell, md5sum, apache (setup, configuration, virtual hosts, url rewriting), CSS, HTML, openSSL, SSL certificates, rsync, logrotate, grep, find, sed, crontab, qmail, postfix, dovecot, cyrus SASL, imap, pop3, DKIM / SPF (email), PHP (configuration, tuning, some programming), phpList, phpMyAdmin, rsync, make / rpm, yum, cpan, usermod, xargs, mount, grub, ps, top, chmod, chown, chkconfig, sudo/ers, nice, and much more.
I wrote a script that takes a virtual machine clone of the main server and automatically reconfigures it for use on another IP address, thus making it useable for developmental purposes, such as disaster recovery planning or modifying network infrastructure. The automated systems script first performs sanity checks to ensure it is not running on a production server; if not, the user is asked to proceed. The script then modifies all server's internal settings; when complete, the server is ready for use on a separate virtual private network and/or designated IP. The script also drops (erases) sensitive MySQL databases so it is ready for use by third party developers if needed.
I wrote an automated systems script to manage database repair for all MySQL databases on the server, including: force recovery, mysqlcheck, mysqldump. The script first safely takes the database offline, tests database export integrity, then moves and recreates the MySQL directory with permissions. All databases, users and credentials are recreated to specification; data is then re-imported; privileges refreshed, then network services and database services are restarted.
A botnet of 40,000+ malware infected computers attacked the server simultaneously through the network, resulting in significantly increased server load and lag time. I studied network log files and programmed a custom solution using Fail2ban (Python regex scripts) in order to mitigate the attack, effectively creating a reactive firewall to ban abusive IP addresses. Offending traffic was blocked and server load was immediately reduced.
I led a team of developers to restructure the entire web server consisting of 10,000 pages onto a new content management system (Drupal). I programmed / exported data into a CSV, then data was re-imported; I reconfigured the site to use new modules and interface old with new; I then changed URL structure and handled 404 and 301 permanent redirects for search engine optimization to reflect permanent changes.
I moved the server to a new data center by remote using a virtual private network, secure shell and rsync. I also changed hypervisor platforms (Citrix XenServer to VMWare Workstation and MS Windows) due to hardware incompatibilities and to reduce overhead costs. I then mounted the old operating system to new and migrated data over to the new virtual machine. I then reconfigured the server operating system, services, and databases.
I wrote a script to send out an email newsletter to a mailing list of 150,000 users using Perl's fork() and qmail MTA (mail transport agent). For every email server connection, the script monitored and recorded the response from the receiving MTA as being accepted, hard, or soft bounce which was later used for statistics. The script dynamically reacted to MTA greylist responses and automatically injected messages into the mail queue for later delivery, instead of attempting to repeatedly deliver to problematic connections. This decreased delivery time, and prevented the server from being banned. Emails fired out at a rate of 38,000 per hour. The script also monitored server resources (RAM and swap file) and was programmed to sleep if too high of a load, as the same server was also used for HTTP connections.
I wrote a program to export the mailing list database into .CSV delimitated format, then produced concurrent gzip tarballs (forked) using Open3 in Perl. Tarball backups were spawned (forked) simultaneously to take full advantage of all the server's processor cores, but without overloading server resources (using waitpid). Backups and logs of backups were stored in a directory on the server, emailed to the server administrator, then rotated and pruned to reclaim server storage space.
Generated over $1,000,000 in Revenue, Infopackets, Inc, Lakeshore, ON | 2001 – present
I generated over one million dollars in online revenue for Infopackets, Inc. via Google Adsense, Amazon.com, various ad placements online the site, software commissions, and writing various books during my tenure.
Various Programming Feats, Infopackets, Inc, Lakeshore, ON | 2001 – present
I have written many programs over the years in Perl. Some of the most memorable programming feats include writing: various search engines using recursion; a comprehensive flat file database system to add, remove and search keys; web and command line search engine; a comprehensive content management system; an online shopping cart; various keyword indexing systems; mass email program; and various online email subscription management programs.