Software Developer in Toronto, ON, Canada
Cloud Architect2017 - PRESENTScotia Bank
Technologies: Go, Google Cloud Platform, Jenkins, Python, Terraform, Spark, DCOS, Docker, Azure, GitLab, Packer, Chef, Ansible
- Migrated Scotia Banks' data analytics platform to the cloud.
- Tokenized data using DLP and Dataflow for structured and unstructured data.
- Implemented encryption for at-rest, in-transit, and file level.
- Translated on-prem workloads to cloud-native products on GCP such as Dataproc, BigQuery, Dataflow, and ML Engine.
- Transferred workloads from on-prem DCOS cluster to GKE (Kubernetes cluster).
- Set up CI/CD pipelines (in Jenkins) that forced data scientists and engineers to adhere to the bank's strict data governance policies while still ensuring an agile and automated work environment.
- Transferred data from on-prem EDL to on-cloud and utilized tokenization and encryption strategies to ensure data integrity and security.
Cloud Architect | DevOps2016 - 2017Rogers
- Orchestrated the successful upgrade of a 10-node Cassandra cluster from DSE 3.X to 5.X with zero amount of downtime.
- Used Terraform and Ansible to build out the first Rogers' UTE AWS application which consisted of Lambda, API Gateway, Elasticsearch cluster, and much more.
TechOps2016 - 2016Joist
Technologies: Ruby on Rails, Docker, Jenkins, AWS, Heroku, Datacenter, Cisco, PostgreSQL, RabbitMQ, Elasticsearch, VMware
- Planned a zero downtime migration from Heroku to AWS; the tech stack consisted of Ruby on Rails, RabbitMQ, and PostgreSQL.
- Refactored the deployment process to use Jenkins for both CI/CD.
- Implemented a fully scalable and highly available Elasticsearch cluster for log consumption.
- Set up the office infrastructure: WiFi (Meraki), VMware with instances use for maglock control and a front door intercom through SIP and Windows AD.
- Implemented Jenkins for CI/CD orchestration using Docker (for CI) and AWS CodeDeploy (for CD).
Technical Consultant2011 - 2016Zero Penalty
Technologies: C#, Cisco, Junipers, Exchange, IIS, HTTPD, Active Directory, Zabbix
- Provided innovative technical solutions that apply to clientele requirements.
- Designed and implemented full systems and the network infrastructure including web server deployment, AD, exchange services, and DNS solutions.
- Deployed monitoring solutions for large-scale environments.
- Consolidated servers through physical to virtual (P2V) migrations into VMware.
- Performed application level support in .NET by modifying customized software according to customers’ needs.
- Made recommendations and assisted clients in implementing scalable, stable, and structured systems and networking infrastructures.
- Provided on-call, onsite and afterhours support as deemed necessary.
Technical Architect | DevOps2014 - 2015Rogers
Technologies: CFEngine, Chef, Python, Cassandra, Kafka, Gluster, Spark, VMware, Solr, Memcached, Redis, Keepalived, ZooKeeper, Nagios, Zabbix, Ruby on Rails, Monit, Grafana, Elasticsearch
- Worked in a two-man team to build out the PoC (proof of concept) for aggregating various customer databases (for Rogers brands) to a single Cassandra cluster.
- Used Ansible for provisioning and Amazon AWS as an IaaS platform for hosting Kafka, Gluster, and Spark clusters.
- Redesigned the operation processes which included a migration from CFEngine to Chef and essentially adopting opensource/freeware version of a Red Hat satellite. The end goal was to automate processes as much as possible from VM provisioning to application deployment.
- Architected a Redis cluster using Twemproxy(Nutcracker), Twemproxy agent, Redis Sentinel, and Keepalived. Essentially migrating an existing single Memcached instance to a Redis cluster with redundancy for failure tolerance.
- Designed and implemented a SolrCloud environment with independent ZooKeeper servers, taking into account the resilience and fault tolerance.
- Set up an Apache Cassandra cluster on dedicated SAS drives, taking into account scalability and redundancy for fault tolerance and application load.
- Communicated and established appropriate policies for creating keyspaces in regards to compaction and replication and implemented appropriate monitoring of the cluster with use of Nagios and OpsCenter.
- Led the implementation of a new application's web server cluster which included a Ruby stack deployment (Goliath web server), Monit configs, and finetuning the OS for optimal performance.
- Coordinated with QA team to perform load testing in order to achieve acceptable/tolerable load metrics per node and scaled or made hardware adjustments accordingly.
- Maintained 500+ VMs and 60+ physical servers that encompass all of Rogers digital media brands that fall under broadcasting, radio, sports, and news.
- Implemented new processes for on-call escalations and monitoring due to the large amount of physical machines to be maintained within a small team.
- Maintained all ends of the administration to ensure systems were optimal and efficient in an environment that receives up to 25,000 concurrent users at a time for different Rogers Digital brands.
- Implemented Graphite with Grafana on the front-end and Elasticsearch for dashboard storage.
- Created and pushed appropriate Collectd plugins onto servers to gain the appropriate insight and be proactive in debugging application and hardware issues.
Senior System and Networking Administrator | DevOps2013 - 2014Eyereturn
Technologies: Java, Juniper, Puppet
- Designed and deployed a large and scalable network infrastructure connecting multiple data centers and creating a cohesive and stable environment in four different cities at five locations across US and Canada.
- Heavily modified and improved upon existing systems and networking infrastructure; provided recommendations and helped curve infrastructure costs by making appropriate recommendation and changes.
- Redesigned the monitoring system by implementing Zabbix in unison with Pager Duty.
- Implemented a new backup system that utilized tape library and cloud storage for archiving.
- Upgraded, configured, and maintained an application farm cluster (>2,000 transactions/second) with the front-side served by Nginx and the entire application served by Apache Tomcat and a plethora of custom in-house applications.
- Performed replication maintenance and day-to-day administration as a primary for MariaDB/MySQL and MS SQL.
- Completed critical systems and networking upgrades while ensuring zero business impact within a given timeframe and budget.
- Deployed redundant virtualized environment using XenServer and maintained with XenCenter.
- Integrated Amazon Web Services with a pre-existing environment.
- Performed vendor management and hardware procurement and evaluated various hardware and networking equipment offerings from various vendors.
- Maintained and deployed Hadoop nodes using Cloudera.
- Expanded a Redis cluster and replicated data to new Redis farms located in different data centers.
- Audited and implemented appropriate measures to safeguard the network and systems security and developed a new workflow for security access for employees and customers when accessing the back-end and front-end application stack.
Service Delivery Manager (NOC Analyst) – Team Lead2011 - 2013Bell
Technologies: Cisco, Juniper, VMware
- Led all of the elements of hands-on system administration, including defining and implementing the processes and policies.
- Provided system/server performance tuning where appropriate and necessary.
- Supported routine software operations for the application, operating system (OS), and third-party software.
- Assessed and implemented an ongoing audit and security requirements through the utilization of standard change management processes.
- Managed and configured various network services including DNS, DHCP, and IP routing configurations.
- Spearheaded the design and implementation of Cisco PIX/ASA firewall clusters in a production environment.
- Implemented and maintained full enterprise backup solutions.
- Configured managed network switches, Cisco ACE load balancers, and core routers.
- Deployed and maintained large-scale virtual infrastructure environments.
- Monitored alerts and processed various requests for customers distributed through five data centers across Canada.
Systems and Network Adminstrator2010 - 2011Net Preset Services
Technologies: Java, Cisco
- Was nominated for the employee-of-the-year award and was highly recognized/valued by clients and the CEO/CIO.
- Consolidated the application and system/network support into one role and provided outstanding 24/7 support in a high transactional online gaming environment with accordance to companies SLA policy.
- Managed data collocation facilities spread across three different countries (Canada, Antigua, Curacao) which involved remote and onsite presence throughout the year on a predominantly Linux/FreeBSD based environment.
- Modified and implemented new backup strategies for critical data such as database and SVN repositories using a combination of Windows/Shell scripting and Symantec Backup Exec to the IBM Tape Library.
- Maintained the domain registry and internal and external DNS records.
- Worked extensively with the virtualization of production environment using VMware ESXi as the platform; migrated existing physical servers to virtual machines for better resource utilization.
- Installed, maintained, and configured the Foundry Load Balancer, Cisco switches, and Juniper-based firewalls. Also, assisted with installation and maintenance of brocade fiber switches, IBM Fiber Disk Shelves, and Juniper SSL VPN.
- Played a key role in the relocation of the production environment to a new collocation facility. My primary role involved setting up a fully redundant application and network design.
- Provided basic troubleshooting and maintenance for different RDMS which included DB2 and MySQL.
- Was heavily involved in the administration (configuration/maintenance/installation) of Apache HTTPD, Tomcat, and Service Mix.
- Provided administrative role as deemed necessary for Microsoft Exchange and IIS.
- Implemented security procedures to safeguard customer information and critical internal data with various acceptance policies.
Application Support Specialist2009 - 2010Net Present Services
- Was recognized several times for the highest achiever of the month and attained top five percentile range for KPI scores (in my department) for numerous months.
- Performed in-depth analyses on product problems, identified root causes, and recommended/implemented solutions to resolve application malfunctions and to prevent recurrence.
- Fixed bugs and participated in the Java/J2EE development in specific projects.
- Managed source version control and acted as a release master in the release process.
- Ensured that the updated documentation for all of the code and scripts including a process workflow and error recovery procedures.
- Provided ongoing feedback to the management with respect to enhancements to processes and systems that would result in improved efficiency.
- Assumed the role of lead support analyst in major projects and initiatives, interacting and collaborating with team members and other departments in order to gain knowledge relevant to application support and to ensure successful implementation of environment changes.
- WGames (Development)
• Architected the full infrastructure (application/analytics Platform) on GCP and AWS for a social mobile gaming app.
• Implemented GitFlow for the back-end and front-end team with a CI/CD workflow for Elixir apps (back-end) and Unity (front-end).
• Built a super robust data ingestion pipeline that consumed Pub/Sub events via DataFlow and pushed the data onto BigQuery.
- SmartAMI (Development)
• Built an app using React Native and Python Flask.
• Successfully delivered a mobile app that helps lead EMS to more accurate and quicker responses when dealing with acute coronary syndromes.
- Eyereturn Network Upgrade (Development)
• Upgraded the network from a traditional mesh to a stacked network with zero amount of downtime.
• Increased bandwidth pipes and isolated subnets to racks.
• Built a highly redundant and scalable networking infrastructure with up to 40x the bandwidth capacity and 10X the speed.
- Coextro (Development)
• Set up network infrastructure to provide internet services at various condos across GTA.
- Sportsnet App (Development)
• Built the infrastructure that runs the Sportsnet app on AWS. After some heavy finetuning, we achieved a service that could handle up to 800 requests/second.
- Therapia (Development)
• Migrated the client Therapia.life to AWS from Heroku.
• Upgraded the infrastructure so that it was more robust during autoscaling and employed the use of Docker for serving the application.
• Implemented CI/CD using Bitbucket pipelines in order to make testing and deployments seamless.
ToolsVault, Ansible, Terraform, Packer, Apache, Nginx, Jenkins, Bitbucket, GitHub, GitLab CI/CD, CircleCI, Travis CI, Grafana, Postfix, GitLab, VMWare vSphere, OpenVPN, VPN, Docker Compose, Google Cloud Dataproc, Cloud Dataflow, AWS ECS, AWS CLI, AWS ECR, Google Kubernetes Engine (GKE), Google Compute Engine (GCE), Amazon Virtual Private Cloud (VPC), Google Stackdriver, AWS CodeCommit, AWS CodeBuild, AWS CodeDeploy, AWS CloudWatch, AWS CloudFormation, AWS ElastiCache, Amazon CloudFront CDN, RabbitMQ, MS Exchange, VMware, Vagrant, Apache Tomcat, Subversion (SVN), Cloudera, Citrix XenApp, Oracle GoldenGate, Mesos, Chef, Puppet, Zabbix, Nagios, Apache ZooKeeper, Solr, Apache Beam
PlatformsGoogle Cloud Platform, Docker, Amazon Web Services (AWS), Azure, Linux, Windows, DC/OS, AWS EC2, AWS Lambda, Google App Engine, AWS Elastic Beanstalk, AWS Kinesis, Kubernetes, Heroku, Apache Kafka, OpenWRT, FreeBSD, XenServer, SolrCloud
ParadigmsAgile Software Development, Dataflow Programming, Samba
StorageGoogle Cloud Datastore, Google Cloud Storage, Google Cloud SQL, Google Cloud Spanner, AWS RDS, Azure Active Directory, Redis, MySQL, Datadog, Elasticsearch, Data Centers, AWS S3, Google Bigtable, Memcached, Cassandra, MSSQLCE, PostgreSQL, IBM DB2, Apache Hive, Unity Cloud Build
OtherShell Scripting, Graphite, SSL, AWS API Gateway, Pub/Sub, AWS CodePipeline, Autoscaling, AWS Route 53, DNS, Networking, VMware ESXi, VLANs, VLAN Trunking Protocol (VTP), Cisco Switches, Cisco Routers, Cisco Networking, Google BigQuery, Identity & Access Management (IAM), Google Cloud Functions, Big Data, APM, Google Cloud Build, Google Container Engine, FTP, DHCP, SFTP, BGP, Open Shortest Path First (OSPF), Cisco, Juniper, IIS, LDAP, Backup & Recovery, SNMP
FrameworksReact Native, Hadoop, Spark, CFEngine, AWS HA, Unity3D, AWS EMR
Libraries/APIsLaravel Elixir, Shopify API, TensorFlow
- Bachelor's degree with honors in Computer Science2003 - 2008University of Windsor - Windsor, Ontario, Canada
- Google Certified Professional - Cloud ArchitectSEPTEMBER 2017 - SEPTEMBER 2019