|Development||Ansible, Bash, Python, Java, SQL|
|Source control||Git, Subversion|
|CI/CD||Jenkins, Travis CI, Maven, Ant|
|Identity & access management||Kerberos, LDAP, SAML|
|Metrics, monitoring and alerting||Prometheus, Grafana, Nagios|
|Processes||SAFe, Kanban, Scrum, ITIL|
|Other||Apache httpd, Apache Tomcat, Apache Geronimo|
Lead Platform Engineer, Data & Analytics (DNA)
Royal Bank of Canada
June 2018 to Present
- Providing technical leadership to DNA’s Platform Engineering Big Data team.
- Managing day-to-day workload assignments and prioritization of the DNA Platform Engineering team.
- Leading RBC’s EDL 2.0 platform design and build leveraging Cloudera Data Platform (CDP) Private Cloud Base.
- Defined new worker types to more optimally target capacity needs while continuing to meet application performance requirements and to provide more flexibility for future cluster expansion.
- Working with the Enterprise Data Architecture team to create all architecture and design artifacts.
- Working with RBC’s enterprise security teams to ensure alignment with enterprise standards.
- Positioning the new platform to provide additional capabilities to better meet RBC’s future needs.
- Leading the build of an evaluation environment for application teams to identify migration pain points, and to complete migration planning.
- Containerizing operational support tools to allow for easy maintenance and deployment.
- Developing CI/CD pipelines for containerized tools.
- Developing plans for CI/CD pipelines for Ansible role and playbook development, leveraging Ansible Molecule as a testing framework.
- Defining procedures and standards for team workflows to allow more consistent delivery of enhancements and new functionality.
- Researching and evaluating additional tooling and platforms to provide additional options for addressing RBC’s data processing and storage needs.
- Providing 24/7 level 3 support for the production support team.
- Led migration of Sensu monitoring system to a containerized Prometheus deployment to simplify deployment and support processes, allowing more effective metrics collection and alerting.
Senior Platform Engineer, Data & Analytics (DNA)
Royal Bank of Canada
January 2016 to June 2018
- Designed and built RBC’s new enterprise multi-tenant Hadoop (Hortonworks Data Platform - HDP) clusters with roughly 400 worker nodes in production.
- Enabled Kerberos security for all Hadoop services.
- Integrated interfaces with Microsoft Active Directory leveraging both Kerberos and LDAP.
- Defined standards for creating security policies in Ranger.
- Scripted Hadoop on-boarding to simplify the on-boarding of users and applications.
- Configured Red Hat Linux to integrate with Microsoft Active Directory using SSSD.
- Automated system setup of all services and tools using Ansible roles & playbooks.
- Wrote knowledgebase articles to simplify support and user interactions with our systems
- Organized and directed the successful upgrade of the HDP 2.4.2 environment to HDP 2.6.3, supporting 100+ application tenants.
- Identified breaking changes required to complete the upgrade.
- Worked with application teams to identify impact of platform changes and plan for their required code changes.
- Built a new upgrade evluation cluster for application upgrade testing so as not to impact business as usual development efforts during the upgrade testing.
- Developed upgrade life cycle for the platform so that teams would have a more consistent upgrade cadence.
- Provided technical leadership to DNA’s Platform Engineering team.
- Provided 24/7 level 3 support for the production support team.
Implementation Analyst IV, Delivery and Support Services
July 2012 to January 2016
- Provide expertise to projects for implementing middleware systems across all development, test, and production systems, working with developers, testers, project managers, and internal and external clients
- Sought after by project managers for ability to solve hard problems and explain technical details in plain language
- Extensive experience managing middleware systems/application servers, including writing command line scripts and manipulating configuration files
- Build solutions that are simple to set up and maintain, to ensure consistent deployment and configuration
- Effective at navigating change processes, coordinating multiple stakeholders to ensure rapid progression from initiation through to completion and avoiding unnecessary delays
- Automate and manage build and deployment processes, allowing greatly reduced deployment time requirements and consistent deployment procedures
- Investigate and remediate security issues, addressing newly-discovered vulnerabilities via configuration changes or upgrades
- Lead creation of best practice processes and procedures to ensure system implementations are consistent, reliable, and scalable
- Standardise Apache httpd configuration across the company to simplify configuration management, ensure proper security levels, and allow for easier problem investigation
- Standardise Apache Tomcat setup of our applications to allow for easy updates and consistent configuration
- Spin up proof of concept setups to evaluate new products, ensuring they integrate effectively with existing systems and meet business requirements
- Implement and manage client facing single sign-on (SSO) solutions based on SAML 2.0
- Develop and manage internal monitoring and system management tools
- Provide 24/7 support for middleware systems including WebSphere MQ, Apache httpd, Apache Tomcat, Apache Geronimo, WebSphere AS and IBM Sterling Connect:Direct
Implementation Analyst III, Delivery and Support Services
September 2009 to March 2012
Implementation Analyst II, Delivery and Support Services
July 2008 to September 2009
Interactive Media Developer
Metroland Media Group
May 2008 to June 2008
Metroland Media Group
March 2006 to April 2008
- Developed and maintained workflows and scripts for the MKS Integrity based C-198 compliance ticket system
- Developed applications and scripts to simplify maintenance of Active Directory user accounts, desktop systems, and server systems
- Developed SharePoint WebParts to add increased Active Directory functionality
- Administrated the MKS Integrity system, including ticket management, application maintenance and server maintenance
- Developed processes to synchronize data between various systems including Active Directory, a third party email system, Lawson, BMC Service Desk Express, and MKS Integrity
- Maintained and re-developed KiXtart based login scripts
- Provided backup support for desktop and server support team
- Used BMC Service Desk Express to track and maintain support tickets for all incidents
Active Directory Roll Out Technician
Metroland Media Group
May 2005 to February 2006
- Migrated Windows 2000 workstations and user profiles from an existing Windows NT 4.0 domain to a new Windows 2003 Active Directory domain for over 1,000 users
- Updated existing KiXtart login scripts to simplify maintenance
- Created VBS tools to aid in Active Directory user account management
Information Systems Technician
Diageo Canada Inc.
May 2002 to December 2004
- Provided second level technical support to 500 employees; including 1 national office, 7 regional offices, and 4 production plants
- Used Remedy’s Action Request System to track and maintain support tickets for all incidents
- Investigated and fixed lost or incorrect customer order data caused by errors in interfaces between various sites & ERP systems
- Created test cases for user testing of a new web-based expense system and walked users through testing procedures
- Reorganized telecommunication services by identifying and canceling duplicate and unused services; recommended the most cost effective provider, and simplified future budget tracking, saving the company over $50,000 per annum
Projects of Interest
Ansible roles and collections
Education & Training
ITIL v3 Foundations Certification
- Loyalist Certification Services
- November 2008
Bachelor of Computing (BCMP) in Computing and Information Science
- Queen’s University
- April 2003