With more than twenty years experience as a systems architect, administrator & developer. My responsibilities have included the design and management of geographically diverse installations of varying scale. I have proposed and seen to completion a wide variety of infrastructure projects including the monitoring of systems and networks, data backup and recovery, statistics gathering and reporting and automation. I am often called upon for my ability to provide immediate resolution during mission critical outages and then to perform the subsequent root cause analysis. Regardless of my role, team member, technical lead or project lead, I always have a strong sense of responsibility to deliver projects on time.
- Programming: Go, Python, Perl, Shell
- DevOps: Kubernetes, Terraform, Docker, Jenkins, Ansible, Prometheus, GitLab, GitHub
- Database: PostgreSQL, MySQL/MariaDB/Galera, MongoDB, InfluxDB, Oracle, Teradata, Netezza, SQLServer,
- Operating Systems: Linux, FreeBSD, macOS, Solaris, HPUX, AIX.
- Monitoring: Prometheus/Grafana, Netsaint/Nagios/Zabbix, NetView, SNMP,
- Networking: TCP/IP, Apache/nginx, VPN, Firewall, DNS, SMTP (postfix, exim).
Senior Software Engineer II - Site Reliability Engineer
ZipRecruiter - July 2019 to present
- lead developer in migration from docker/docker-shim to containerd in kubernetes clusters
- develop and deploy Kubernetes upgrades including upgrades and migrations of etcd, and etcd-manager, kOps, cert-manager and other cluster tooling.
- definition and implementation of dynamic developer environments running in Kubernetes
- Optimization of application image build process
- Creation of internal CPAN cache for application builds
- daily operations and maintenance of Kubernetes environments
Senior Software Architect
Colored Blocks - October 2016 to July 2019
On Assignment: All Around the World
- Participate in migration and bulding of GitLab CI/CD containerized workflow build automation and testing
- Application caching architecture and implementation using HA Redis clustering
- Review and recommend PostgreSQL architecture and performance improvements
- Create and deploy database change management design based on Sqitch
- Maintain, deploy and augment Ansible distribution of servers and applications, including a Vagrant and Docker based test cluster
- Development and deployment of CI strategy with Jenkins and Docker via Ansible
- Development of application deployment strategies
- Develop authentication mechanism involving Perl, Catalyst, LDAP, DBIx::Class and Galera.
- Create and deploy timeseries data collection with InfluxDB solution
- Develop application integration with Kafka
- Update, migrate and develop HA solution for PostgreSQL
- Data extraction from Oracle with ELT logic ending in PostgreSQL Database
- Migration and upgrade of MongoDB from existing hardware to new
- AngularJS 1.2 to 1.64 migration, including rewriting controllers to components
On Assignment: SiteSuite WebSite Design
- Solution and migrate PostgreSQL 9.2 servers to 10.3 in new data centre with minimal downtime
- Create and deploy PostgreSQL connection pooling via pgpool to provide HA, and reduce application connections to database servers
- Design and deploy database backup and recovery system
- Create Ansible deployment and maintenance strategy for data centre migration
Senior Software Engineer
Scorecard Systems Inc - October 2007 to September 2016
Telecommunication Data Analytic Software.
- Automate application system build/deployment using a combination of Vagrant, Subversion, and custom applications.
- Create dynamic data model driven version of the ETL application.
- Develop interface applications between database processes and web services.
- Automate column datatype changes throughout application, based on source tables.
- Maintain and enhance existing SQL, PL/SQL, T-SQL and Teradata ETL application.
- Performance optimization, data testing, customer implementations.
Tools and Automation Technical Team Lead/Lead Software Engineer
IBM Global Services - February 2000 to October 2007
e-Business Hosting Center. Provides managed hosting and co-location services.
- responsible for 7 developers and 3 tools support personnel located across the country.
- Automated product testing and release based on CPAN, Smolder and Subversion.
- Automated UNIX/Windows user management and password changes.
- Proactive monitoring using custom web based dashboard solution for servers, switches, storage utilization, security compliance, patch management.
- Backup, Recovery, Disaster Planning and automated monthly billing.
- Build 5 data centres across Canada, including monitoring, backup and recovery, DNS, SMTP Relays.
- Represent Tools Team and servers in quarterly departmental and yearly corporate security audits.
UNIX System Administrator
IBM Global Services - October 1999 to February 2000
Managed e-Business Services. Deployment and maintenance of UNIX servers on the Internet to host customer’s applications.
- UNIX System Administration supporting both hardware and software.
- Automate UNIX system build process.
- Y2K system recovery process design and testing.
- Implement corporate security guidelines.
- Participate as Systems Aministrator in quarterly departmental security audit.
Solution Architect/Automation Software Engineer
IBM Global Services - November 1998 to October 1999
Projects and Consulting Services. Provide solution design and consulting services to external customers and internal projects.
- Backup/Recovery architecture for IBM Canada and customers.
- Automate User ID synchronization tool for AIX System Adminstration team.
- Develop Monitoring solution for SNMP enabled printers and servers.
- Provide support to AIX System Administration team on security.
- Investigate Linux as a viable desktop and server environment.
AIX Systems Administrator & Technical Team Lead/Software Engineer
IBM Global Services - January 1997 to November 1998
RS/6000 Systems Management Services. Provide AIX System Administration, Tivoli and ADSM support.
- Create a web based user registration and management platform for ADSM users.
- AIX System Administration hardware and software builds.
- Design and implementation of monitoring services for 20 data centres.
- Architect and implement country wide backup and recovery services for workstations and servers.
- responsible for a team of 4 support people and developers
- Implement corporate security guidelines and participate in corporate security audit.
- Red Hat Linux Certified Engineer (Red Hat)
May 1996 to 2007:
IBM Education & Training:
- TCP/IP Architecture
- AIX System Administration
- Project Management Fundamentals
- Advanced Presentations Skills
- TSM/ADSM Advanced Concepts
- Tivoli TME10 Administration
- NetView Administration
- Centennial College - Computer Programming Diploma (2 Year Program)