Hi there! My name is Devon McGrath; I have a Bachelor of Science in Computer Science and I love to create things with code. I have been programming for over a decade now, and in that time, I have created many different projects.

I am highly interested in automation of tasks such as testing and everyday processes in a work environment. In my spare time and at work, I create various applications and scripts to automate these processes. For example, generating reports on file dependencies on files in a content management system with hundreds of files, an editor for creating highly-dynamic HTML checklists, scripts for automating escalation processes, and so on.

In addition, I also challenge myself with different problems like understanding various structured file formats. In the past, I created a web MIDI player, capable of parsing MIDI files and visually playing them on the webpage. Currently, I am working on creating a PDF 1.7 compliant application capable of parsing, displaying, and generating PDF files.

Aside from coding, some of my hobbies include playing piano, photography, and learning Mandarin.

Over the years, I have worked at BMO Financial Group in digitization, operations, and desktop management; additionally, I have worked at my university as an Undergraduate Teaching Assistant and Linux Support.

Work Experience

BMO Financial Group

Senior Developer

eForms and eSignature Center Of Excellence (EECOE)The EECOE is responsible for digitizing forms, letters, and other collateral. Digitized documents are integrated with customer data to allow for dynamically generating documents with relevant information to provide a better customer experience. Additionally, the EECOE creates web forms and manages eSignature within the bank.

05/2019 to current

  • Develop eforms according to branding standards and business requirements
  • Create and maintain web checklists which dynamically collect info and update according to previous answers
  • Maintain and enhance automation processes
  • Develop web applications to:
    • Enhance business and department processes
    • Reduce manual work and human error

Awards

  • Q2 Quarterly Spotlight Award (2021-06-03)
  • Annual Best of the Best (2020-12-18)
  • Q3 Quarterly Spotlight Award (2020-10-08)
  • Q1 Quarterly Spotlight Award (2020-03-16)

Business Systems Analyst

eForms and eSignature Center Of Excellence (EECOE)The EECOE is responsible for digitizing forms, letters, and other collateral. Digitized documents are integrated with customer data to allow for dynamically generating documents with relevant information to provide a better customer experience. Additionally, the EECOE creates web forms and manages eSignature within the bank.

05/2018 to 05/2019

  • Developed eforms according to branding standards and business requirements
  • Created and maintained web checklists which dynamically collect info and update according to previous answers
  • Developed applications to allow:
    • Quick collection of business requirements
    • Automation of processes (e.g. generating forms)
    • Editing files such as CSV and XML faster

Systems Operation Centre Analyst

System Operations Centre (SOC)The System Operations Centre in BMO provides 24/7 tier I operational support for all production systems and applications.

05/2017 to 08/2017

  • Rotated on the 24/7 shift schedule; providing support on days, evenings, nights, weekends, and holidays
  • Utilized the ITIL process to investigate, update, escalate, and resolve production incidents
  • Created a script to reduce the number of steps to engage tier II support
  • Created a script to scrape web-data and analyze it, which:
    • Automatically generated HTML reports
    • Was provided to various business groups as a way to assess support processes
  • Automated or semi-automated various department processes with PowerShell
  • Provided informal training on PowerShell to members on my team

Platform Integration Developer

Platform EngineeringDigital Workspace Services' (DWS) Platform Engineering department manages enterprise workstations and user applications.

05/2016 to 08/2016

  • Created, updated, and removed GPOs from production environments as requested through work items
  • Managed Active Directory objects (groups, users, computers)
  • Updated servers with monthly security patches
  • Created a script to automatically generate a report on GPOs in a domain

Ontario Tech University

Undergraduate Teaching Assistant

Faculty of Science

09/2018 to 12/2018

TA for "CSCI 1060U - Programming Workshops I"; a first-year Computer Science programming course focusing on C++.

  • Assisted students in completion of labs
  • Reviewed lab and course material
  • Marked exams, tests, and labs

Linux Support

Faculty of Science

09/2017 to 04/2018

  • Provided support installing Xubuntu in a dual-boot configuration
  • Setup software and tools on Windows/Linux required for courses

Skills

Programming & Scripting Languages

Java, JavaScript, PowerShell
C, C++, Python, SQL

Software/Files/Miscellaneous

Quadient Inspire Suite, Node.js, jQuery, HTML, CSS, XML, Waterfall, Git, Microsoft Office, Windows
Agile, ITIL, Active Directory, Group Policy, Unix Based Systems

Education

Bachelor of Science (Honours), Computer Science

Ontario Tech University

09/2015 to 04/2019

Thesis: Automatically Repairing Concurrency Bugs in Java with ARC2

Courses

SystemsOperating Systems, Computer Networks, Databases, Computer Architecture
SoftwareSoftware Quality Assurance, Software Design, Massively Parallel Programming, Web & Mobile Development
TheoreticalAlgorithms, Big Data, Compilers, Statistics, Graphics

Awards/Honours

  • President's List (every term)Students in clear standing with a semester GPA of 3.8 or higher (4.3 scale) on at least 80 per cent of a full course load will receive the designation President's List on their transcripts.

Projects

Extracurricular Activities

Financial Controller for Community Connect Club

Ontario Tech University

08/2017 to 09/2018

The Community Connect Club at UOIT aims at connecting different levels of the community through different programs and events. As the Financial Controller I:

  • Managed club funds
  • Managed member data such as email lists and program details
  • Ensured executive members have access to appropriate data

Event Volunteer

Ontario Tech University

09/2015 to 04/2019

Recruitment Events

Ontario Tech has many different recruitment events that mainly include: Open House, the Ontario Universities' Fair (OUF), and High School Science Day. These events aim at recruiting prospective students. Over the years, I have volunteered at Open House 6 times, OUF twice, and High School Science Day 3 times. There I have:

  • Provided demonstrations of personal projects
  • Provided information about the Computer Science program and university
  • Gave insight to prospective students about university life

Science Rendezvous Volunteer

Science Rendezvous is an all-day science event open to the public. There, attendees can visit many different science exhibits from biology to computer science. During these events, I:

  • Supervised various stations
  • Taught kids and young teenagers about science and technology
  • Directed families to different stations

Ontario Tech Ambassador

Ontario Tech University

04/2016 to 01/2018

As an ambassador, I represented Ontario Tech at many different recurring and one-off events throughout the academic year. In addition to representing Ontario Tech, as an ambassador, I completed workshops to enhance leadership and professional skills.

In my time as an ambassador, I also was an Orientation Leader twice. September Orientation is a two day event which aims to help new students adjust to Ontario Tech, get more info about student life and services, and connect to one another. During these events, I supervised various orientation activities and supported new students with advice and information.

Relay for Life Registration Chair

Canadian Cancer Society

11/2014 to 05/2015

As a Registration Chair, I was responsible for a number of registration related items including: managing team info, handing out/collecting registration forms, collecting registration fees, and distributing event materials to teams. In addition, I redesigned the registration process resulting in faster and more accurate processing of registration fees.

Relay For Life is an annual event that takes place at my high school and has around 500 participants and volunteers. The purpose of the twelve-hour event is to raise money for cancer research. The event is also run in many different secondary schools, post-secondary schools, and communities across Canada.

Contact