This resume highlights my experience, skills, and interests, as a seasoned software engineer specialized in platform engineering.
With over a decade's worth of time in the IT, I bring extensive experience in building enterprise software solutions that either deliver impact to every day end users, or engineers building solutions for end users. My expertise includes designing resilient, scalable systems and enterprise-scale solutions. I also have a strong track record of coaching and mentoring teams, developing skills, boosting morale and confidence, and fostering a collaborative environment.
Working in scaled agile teams, I have effectively collaborated with cross-functional teams to deliver projects on time and within scope. My ability to align technical strategies with business objectives has been instrumental in driving successful outcomes in fast-paced, dynamic environments. This blend of technical expertise, leadership abilities, and agile experience makes me a valuable asset to any organization seeking to enhance its software development and delivery processes.
I am always thrilled to work with teams that encourage open communication and foster innovation, without compromising on best practices. At the moment, I am looking to hone in my skills and lead projects that touch on cloud platform engineering, while continuing to develop my voice as a thought leader in the drive towards open source development as an advocate for proactive code reuse.
As a lead engineer on the enterprise DevOps platform engineering team, my responsibilities include:
Projects and Technologies
In this role, I have led the development of a number of features with supporting user guides that have empowered users, increased adoption of the enterprise CI/CD platform within the enterprise, and supported the achievement of strategic objectives within the organization in a cost effective and compliant way. Here are some of the key features have led in this role:
Custom Agent Configuration
I developed a feature that allowed users of the enterprise CI/CD platform to leverage user-defined container images to spawn jenkins agents safely and securely.
Impact: This feature enabled teams to build Jenkins agent images with the tools they needed for their CI process baked in, eliminating dependency on the platform engineering team for incorporating the tools into standard agent images.
Key Technologies Used: GitHub, Jenkins, Docker, Kubernetes, Openshift
Ansible Automation Platform (AAP) Integration
I led a feature that incorporated Ansible Automation Platform into our enterprise CI/CD platform offerings so teams can automate the configuration of AAP Job templates in restricted environments using my team's CI/CD platform. The project required collaboration between 3 teams and required my participation in cross organization webinars and demos to help raise awareness and educate end users of the solution.
Impact: This led to Increased adoption by providing an avenue for teams running vendor COTS solutions to deploy their application packages in flexible, yet secure and compliant way. This group of users, prior to the development of this feature, were unable to the use the enterprise CI/CD platform. Additionally, the delivery of the feature of the also provided a swift migration path off Ansible Tower, resulting in huge cost savings for the organization.
Key Technologies Used: GitHub, Jenkins, Jira Service Desk, RabbitMq, MongoDB, and Ansible Automation Platform
CI/CD Platform Onboarding System Extension
To support the use of other CI/CD pipeline solutions within the bank which offered features not yet available on the enterprise CI/CD platform, I led an enabler feature involving colloboration between 2 teams that resulted in the extension of the onboarding system, used by the enterprise CI/CD platform, to other non enterprise CI/CD solutions within the organization.
Impact: This feature delivered a centralized onboarding processes for all enterprise DevOps tools resulting in a consistent onboarding experience regardless of the CI/CD platform being used.
Key Technologies Used: Jira Service Desk, RabbitMq, MongoDB, and Celery.
Version 2 of the enterprise CI/CD platform
Over an extended period, my team developed a new CI/CD solution running on GitHub Actions in order to provide a highly configurable CI/CD experience to users of the platform. I led a number of deliverables within the new product, namely:
- A pipeline development kit which served as a library of low level components that support the development of TypeScript custom Actions that can be integrated into workflows.
- Change management actions and workflows for validating normal and emergency change requests, and orchestrating the creation of standard change requests.
- The extension of the backend components of the onboarding system to support new onboarding patterns for the new platform
- A new documentation site containing dynamically updated user guides for the new platform
Impact: The new solution empowered users to configure their CI/CD process to fit the needs of their teams and the business process they support. It also extended the use of the enterprise CI/CD platform to use cases outside of the conventional CI/CD process as teams could now automate administrative processes using the platform and remove the toil of repetitive work.
Key Technologies Used: GitHub, GitHub Actions, ServiceNow, Jira Service Desk, Hashicorp Vault, RabbitMq, MongoDB, Celery, and Docusaurus
As an application release engineer and a .NET CI/CD subject matter expert, my day-to-day responsibilities included:
Projects and Technologies
In this role, I had the privilege of working closely with other platform, application release and cloud engineers, to bring a number of features to the enterprise CI/CD platform. My contributions to the platform helped enhance its feature set. Some of the features I worked on in my time in this role include:
.NET and .NET Framework CI support
As a new member of the team, I got right to work solely implementing a feature that was strategically significant to the organization. The feature in question supported .NET and .NET framework CI processes on the enterprise pipeline, extending the platform's usability beyond existing languages and frameworks.
Impact: This enabled the deployment of of .NET applications to Azure using the enterprise CI/CD platform ensuring all deployments on the platform remained compliant with enterprise architecture design principles and industry regulatory standard.
Key Technologies Used: BitBucket, Jenkins, Digital AI Release and Deployments Service, Terraform, Azure
Secret Management Process Revamp
This feature provided a user centric solution to secret management. Prior to its development, users had to provide a JSON string containing keys and 64 bit encrypted values which where then parsed and decoded by a task script within the platform. If a user needed to change a secret, they had to manually encrypt the new secret value then update that value in the JSON string before passing it to the task. The feature overhauled that process by reading the keys from the applications designated vault path, and dynamically providing the user with a checklist of secret keys, allowing the user to check which secret they would like to update in their application thereby eliminating the need for manual encryption and supplication of a JSON string.
Impact: This process integrated the CI/CD solution with a trusted secret management solution, and removed the need for human intervention in management secrets during deployments and ensuring only authorized access to application secrets.
Key Technologies Used: Bitbucket, Jenkins, Hashicorp Vault, Digital AI
.NET CI on GitHub Actions
I led the development of components to support continuous integration processes for .NET applications on the enterprise CI/CD platform.
Impact: My contributions ensured that there was support for key features from the legacy solution in its new iteration.
Key Technologies Used: GitHub, GitHub Actions
In this role, I wore the hat of automation specialist serving a number of teams within my line of business. My responsibilities included the following:
Projects and Technologies
I had the opportunity of working on a number of key projects during my time in this role but I would like to highlight project I played a key role in:
COTS Custom Deployment Pipeline
Using the knowledge I had from studying the enterprise CI/CD platform, I developed a POC and put forward a proposal for the development of a new solution using a variation of a Digital AI service owned by another line of business. Upon receiving approval to implement the solution, I led efforts to build a scalable solution that allowed application teams that deployed commercial off the shelf applications to be "DevOps enabled". The solution allowed teams to provide deployment instructions to the pipeline which then parsed the steps against predefined policies before executing them.
Impact: It was adopted by other lines of business and became a answer COTS deployments in lower environments across lines of business.
Key Technologies Used: Bitbucket Jenkins, Digital AI, YAML Parsing libraries
Environment Configuration Automation as Part of a Tech Currency Project
An application team was looking to migrate their application from Jboss 6 to Jboss 7 as part of a currency project and wanted to automate their environments build process. The application team deployed vendor packages to environments that had to be configured according to specifications provided by the vendor. The team also wanted to implement a NAS drive and were interested in to automating the configuration of the NAS drive as well. The key components in the solution included a JBoss web application, an Oracle 11g database and a NAS drive mount that was accessible to other applications. I was able to automate the environment configuration process to the specifications of the vendor using variables to represent configuration values and scripts run on Jenkins to drive configuration in lower environments. The use of scripts ensured that the configuration process, could be automated in production environments, where automation tools, like Jenkins, at the time were restricted.
Impact: The team saw reduction in the duration it took to configure new environments.
Key Technologies Used: BitBucket, Jenkins, Linux, Oracle, Jboss 7
I was one of 3 technicians in the firm's IT division supporting 2 branches. My day-to-day responsibilities included:
Projects and Technologies
During my time in this role, in addition to my day to day activities, I lent my compute science background and interest in programming to initiatives that supported business strategies. I would like to highlight one of said initiatives:
Accounts Receivable Management System
As part of company policy, employees could be pulled in to support other departments experiencing a workload surge. Thanks to this policy, I got the chance to work in the accounts receivables department on multiple occasions and came to understand their process fairly. I discerned pretty quickly that they data retrieval process was inefficient and prone to errors. With consent from the department head, I went on to build a Windows desktop application that read and wrote data to an access database that had been seeded with transaction data from the accounts department. I also developed an ETL interface that allowed the accounts department to migrate data over to the access database from excel spreadsheets so the data available to the accounts receivable team could be updated periodically.
Impact: The solution offered a reliable and error free way to reconcile data from across departments without costing the organization money
Key Technologies Used: WinForms, Microsoft Access, and Microsoft Excel
In my role as .NET developer, I helped write subroutines and components that fed into web services that consumed by plugins developed by the company for SAP business one applications. My day-to-day activities included:
Projects and Technologies
During my time in this role as new graduate, I got to work one a project worthy of note. My organization had put forward a proposal to implement a web service that would be consumed by a major telecommunications service provider. Under the guidance and leadership of the company director, I developed a POC for the solution using standard design principles and integrated it with a UI using the Model-View-Controller design pattern.
Impact: The company was able to win the bid for the contract using thanks to the POC.
Key Technologies Used: Visual Studio, ASP.NET, and Team Foundation Server.
Soft Skills:
Tools:
Platforms:
Cloud Platforms:
Technologies and Frameworks:
Languages:
I have reviewed a number of above and beyond and made an impact awards during my time across organizations in the financial services industry.