Design and implement solution to allow on call engineers to isolate customer traffic using Dynamic Routing
Design improvements to reduce operating cost by reducing nodes procured but not purchased in regions
Design, implement and kick off rollout of high risk performance improving infrastructure update reducing p50 performance
Investigate and resolve critical customer issues requiring engineering focus.
Investigate and resolve product tickets
Design and implement POC for a c-core client library with multiple language bindings
Senior Software Engineer
Deloitte
10.2018 - 02.2021
Move set of microservices that compose PC Optimum Middleware to GCP, from a docker container in a datacenter to an Istio enabled Kubernetes cluster
Redesign caching and backing of data to reduce downtime impact by utilizing Memorystore and Firestore instead of Infinispan on prem
Support production traffic
Design, implement, test and deploy new restful APIs enabled on multiple PC Optimum clients written in Java on Spring Boot and exposed via Apigee Proxies
Features used in production with all PC Optimum clients
Senior Software Engineer
RBC
11.2017 - 01.2018
Microservices to expose new public restful APIs for Royal Bank communicating with legacy systems
These APIs will be the first of their kind allowing external users direct access to RBC features
This project is written in Java 8 on Spring boot
Apigee is used as the gateway
Developed a set of Microservices that created a reactive system based on Kafka
Each microservice could be communicated through a Kafka topic or Rest
We had orchestrative microservices that fulfilled a business scenario such as create an account in RBC
I worked with architects on the design and implementation of the services - all written in Java with Spring boot
The restful API is now being worked on to expose externally
Senior Software Engineer
Deloitte
05.2016 - 11.2017
PC Optimum middleware project that required designing a new Restful API and Microservices to back the API
This project is written in Java 8 on Spring boot and deployed in Docker backed by a Redis cache
Lead the design and implementation of the core functionality and implement new features on this project
Lead the design of the API to be consumed by both web and mobile
I also set up core code patterns such as using the Try library imported from Scala for exception management, the microservice structure which includes packaging and class responsibilities
I also implemented and enforced unit testing and development cycle and helped design the Restful API
I also continue to support project through its performance and minor release
Worked closely with product managers to develop new features for Loblaw Click and Collect mobile
I took this project on under very tight deadlines from a party that left hastily
I learned the core technology (Hybris) while ramping up developers on our new team and ensure client comfort with realistic timeline
Senior Software Engineer
TD Bank
01.2016 - 12.2016
I led the design and setup of a CI/CD pipeline for the team in Jenkins
I also set up a lot of configuration for deploying services into a private Openstack cloud environment
Senior Software Engineer
Cisco Systems
01.2012 - 12.2016
A cloud orchestration project to allow large enterprise software to be deployed on an OpenStack cloud written in Java
I worked in a team of 6 people to develop the platform that would orchestrate the deployment
Along with that we created a CI/CD pipeline to deploy and test our software written as a mix of heat templates along with python and shell scripts
Lastly I worked on our testing framework for which we used Cucumber
We used agile practices and utilized the devOps methodology which is apparent from the skills I have learned so far in the project
Designed, Implemented and Tested a library to generate validate and modify yaml formatted heat templates in Java
Designed, Implemented and Tested a Utility command line script that was generated by the platform for each service at run time and would execute once a VM was booted on OpenStack
Designed, Implemented and Tested APIs to interact with application which required schema updates and modifications
Worked on project to implement microservices that that would act as a user gateway using Spring Cloud with consul discovery
I was responsible for researching Heat - the OpenStack orchestration engine that we used to deploy stacks
Specifically I looked at the creation of heat templates, features missing in OpenStack (at the time Havana) which were fixed on the IceHouse release
Porting features such as dependant templates and files for stack launch on the heat client to our platform
I designed, implemented and tested the gathering and pushing of logs on instances to our logging infrastructure (ELK stack) by using SaltStack templates
I was also part of team of 4 to create update a basic CI/CD pipeline that would create infrastructure and execute tests and promote successful deployments
Pipeline was triggered by git commits
Education
Bachelor of Applied Science (B.A.Sc.) - Computer Engineering