Matthew McDonald
Email Mobile

Hi my name is Matthew McDonald and I am a platform engineer with experience in implementing and managing various cloud platforms, integrations and automation tools.

My experiences have led me to understand how to build strong team cohesion, enabling effective collaboration and communication within cross-functional teams, where each team member is able to contribute their unique skills and perspectives, enabling old dogs to learn new tricks and green horns to grow. To achieve this, each team member needs to feel valued for their experience and their potential. I really enjoy helping team members learn, spending the time to show them, that they're capable of things they didn't realise they we're, hopefully someday down the road they remember me for that.

Throughout my career, i have worked on many things (e.g. automating processes, building integrations, migrating systems to cloud solutions etc), the one thing i'd say i've always carried with me is an attitude of never being afraid to get stuck in and do something new or novel, in my experience, nothing ever turns out as bad as it might seem at the beginning, having said that, i've been around long enough to have been through it.

Use this carousel i made to see my experience, what platforms i've worked with, and what kind of things i've done with them. While you're looking you can use the search bar at the top of the panel to filter on items. (e.g. in platforms filter on AEM)

.NET Core logo
Adobe Cloud

I have worked on implementing Adobe cloud platform in the role of a platform engineer, working alongside architects to plan and implement a secure, performative and robust Adobe products.

PerfectGym logo
PerfectGym

I have worked on PerfectGym as a platform engineer, working alongside architects to plan and implement a secure, performative and robust recreation center management system.

.NET Core logo
Medtech Evolution

I have worked on Medtech Evolution as a platform engineer, working alongside architects to plan and implement a secure, performative and robust recreation center management system.

.NET Core logo
StarRez

I have worked on StarRez as a platform engineer, working alongside architects to plan and implement a secure, performative and robust accomodation management system.

.NET Core logo
Terminal Four

I have worked on Terminal Four as a platform engineer, working alongside other system administrators to maintain a secure, performative and robust web content management system.

Intellimanager logo
Intellimanager

I have worked on Intellimanager as a platform engineer, working alongside other system administrators to maintain a secure, performative and robust recreation center management system.

.NET Core logo
.net

what is .net?

I have built a few integrations and webapps using .net including with SignalR. Take a look at my showcase.

PHP logo
PHP

what is php?

I have built a few integrations and api's using php including. Take a look at my showcase.

HTML, CSS and JavaScript logo
html, css and javascript

what is html, css and javascript?

I have built a lot of different web front ends using html, css and javascript. Take a look at my showcase.

AutoIT logo
AutoIT

what is autoIT?

Below is a list of interesting things i've done with AutoIT

java logo
Java

what is Java?

Below is a list of interesting things i've done with Java

powershell logo
PowerShell

what is PowerShell?

Below is a list of interesting things i've done with PowerShell

mysql logo
MySQL

what is MySQL?

Below is a list of interesting things i've done with MySQL

Microsoft SQL Server logo
Microsoft SQL Server

what is Microsoft SQL Server?

Below is a list of interesting things i've done with Microsoft SQL Server

vb.net logo
VB .NET

what is VB .NET?

Below is a list of interesting things i've done with VB .NET

Medtech Person push
I created a poweshell script that took student data from a Microsoft Sql database and pushed it into Medtech evolution, leading to improved data accuracy and improved business processes.
Wordpress environment refresh
I used a combination of bash scripts, and mysql stored procedures to automate the refresh of an on prem wordpress environment, to enable more rigourous pre-deployment testing.
StarRez cloud migration
I migrated a legacy application on prem StarRez from on prem to the cloud, leading to new business opportunities, improved systems performance improvements, and system stability.
RecCentre solution cloud migration
I migrated the RecCentre solution (Intellimanager) from an on-premises environment to the cloud (PerfectGym),
Perfectgym integration
I built a custom webapp and webapi to enable student registration with UC's perfectgym system, using .net and signalR...
D365 Integration
I redeveloped a Powershell script to pull card.xml files from a databse server fileshare and use Azure to send the files to an Azure blob...
WCMS cloud migration
I migrated the WCMS (terminal4) from an on-premises environment to the cloud (Adobe Experience Manager), which was a significant project involved creating solution design, user management plans, cloud assessments, working with architects, testers, developers, desgners and stakeholders aswell as setting up new infrastructure and ensur...
AEM Deployment process
I retroactively desgined the deployment process for our Adobe experience manager project, which lead to alignment between stakeholers, testers and developers...
AEM Environment refresh process
I designed and implemented a comprehensive environment refresh process for our Adobe Experience Manager deployment, ensuring consistency and reducing deployment risks.
Outage page integration
I created a custom outage page PHP based integration, enabling stakeholders to create their own custom outage pages, ensuring users were informed of system issues in a timely manner.
AEM SDK Bump
upgraded our AEM SDK to the latest version, ensuring compatibility and access to new features.
Local development environment setup
I set up a local development environment for our Adobe Experience Manager project, enabling developers to work on features in isolation and reducing the risk of conflicts.
AEM CDN logging tool
I setup AEM's custom CDN logging tool, on prem which enabled better monitoring and troubleshooting of content delivery issues.
Custom logging integration
Setup a custom logging integration for our Adobe Experience Manager project for use with AI, enabling better monitoring and troubleshooting of application issues.
Domain approval process
I am currently working stream lining our domain approval process to improve efficiency and reduce delays, utilising different kinds of meeting formats to make collaboration more effective.
Adobe organisation console migration
I am currently working on migrating UC's two Adobe organisation (DXP & CC) into a trust relationship managed by one Global Admin Console, to reflect the organisations structure, to ensure that the appropriate teams are managing their adobe products effectively.
WAF allow listing process
I have worked with our stakeholders to establish a process to ensure that the right governance is applied to allowing external organisations access to crawl our website.
.NET Core logo
Diploma of Information Technology - Software Engineering
Completion: 2011-09-11

I studied for one year at Computer Power Plus. I completed a group project on delivering a software solution, and i majored in java

.NET Core logo
Creating .net applications
Completion: 2017-06-30

I completed a three day .net application development course at Auldhouse (now Lumify)

.NET Core logo
Powershell
Completion: 2019-06-30 I completed a three day course on automating with Powershell at Auldhouse (now Lumify)
.NET Core logo
Cloud automation with Powerapps
Completion: 2024-06-30 I completed a three day course on automating with Powerapps at Auldhouse (now Lumify)
.NET Core logo
National Certificate in Agriculture - Level 4
Completion: 2009-06-01 I completed a year long course in Agrigultural studies for dairy farming
University of Canterbury
Platform Engineer
start: May 2022 end:

I am currently a Platform Engineer at the University of Canterbury, working on cloud infrastructure and automation within UC's Web Experience team. I am interested in developing robust systems and processes that enable my team to try, learn, and deliver.

University of Canterbury
Application support consultant
start: Aug 2021 end: May 2022

I worked as an Application support consultant, providing technical assistance and troubleshooting for various applications used throughout the UC community such as UC's reccentre, healthcentre, marketing team, accommodation services team etc.

University of Canterbury
Systems support consultant
start: Mar 2016 end: Aug 2021

I worked as a Systems support consultant, providing technical assistance, configuration and enabling business processes for JadeSMS and other smaller systems used by UC's student services team.

University of Canterbury
Junior Systems Support Consultant
start: Apr 2014 end: Mar 2016

I worked as a Junior Systems Support Consultant, providing technical assistance and troubleshooting for JadeSMS and some other smaller systems for UC's student services team. Due to my own experiences in this role, i developed a strong belief in training and developing new staff

University of Canterbury
IT Helpdesk advisor
start: Mar 2013 end: Apr 2014

I spent time in the role of IT Helpdesk advisor, providing first-line technical support to users across the organization. I took an interest in understanding the systems that i was helping to support, and in doing so i learned a lot and made strong connections with senior staff members

Statistic New Zealand
IT Service desk advisor
start: Jun 2012 end: Mar 2013

This was my first IT role where i really started to believe in what i was doing. I worked as an IT Service desk advisor, providing first-line technical support to users across the organization undertaking the 2011 census. I gained experience in troubleshooting a variety of IT issues and improving user satisfaction.

Metro Glasstech
Labourer
start: Jun 2012 end: Mar 2013

I worked as a labourer at Metro Glasstech, where i learned about glass arasing and where i had a great work colleague who really took me under his wing.

Computer culture
Network Engineer
start: Jun 2012 end: Mar 2013

I worked for a short time as a "Network Engineer" for a small IT company. This was my first role in the IT industry, and although i thought i was ready for the role, i wasn't, and i also needed more guidance, which i didn't recieve, and i was let go.

Adept STS
Systems Administrator
start: Jun 2012 end: Mar 2013

I worked for a time, as a Systems administrator for a transcribing company. Although the time i was given in the role was short, and the opputunities to learn were limited, i did manage to identify some areas where improvements could be made, although i needed more time to fully understand the business, which i unfortunately didn't get as the owners sold the business.

Staples
Labourer
start: Oct 2011 end: Feb 2012

Yes, after graduating from my studies, i worked as a picker and packer for staples while looking for my start in IT. Not much to say, tried to make myself indispensable to the boss, seemed like a stressful job, so tried to make it as easy as i could, kept my head down and did everything asked of me

Grasslands farms
Herd manager
start: Jun 2008 end: Feb 2010

I worked at Grasslands farms as a herd manager for a few years, gaining valuable experience in dairy farming industry, from managing day to day activities, to coordinating junior staff, to making difficult decisions under pressure. I developed tenancity and number8 wire thinking in this role.

Lobblin farms
Intermediate dairy assistant
start: Jun 2007 end: May 2008

I worked as a dairy assistant, where i had the opportunity to work in a sole capacity, which allowed me to develop a strong sense of responsibility and independence.

Kaurel Farm
Assistant Herd manager
start: Jun 2006 end: May 2007

I worked as an assistant herd manager, where i gained experience in managing and caring for dairy cattle, as well as learning about the various aspects of dairy farming operations.

Birchlea farm
Intermediate dairy assistant
start: Nov 2004 end: May 2006

I worked as an intermediate dairy assistant, where i gained experience in the day-to-day operations of a dairy farm, i learned a lot about the industry working alongside the farm owner.

Terrace farm
Junior dairy assistant
start: May 2004 end: Oct 2004

I worked as a junior dairy assistant, where i learned all the fundamentals of dairy farming and gained hands-on experience in the field, working alongside the herd manager.

Quality bakers
Food processor
start: Jun 2002 end: May 2003

I worked for atime as a food processor at Quality bakers, where i gained experience in the food processing industry and developed a strong work ethic. The work culture was that of working hard, and smart. I had some great colleagues, and even considered a career as a baker at the time.

Cobra promotions
Sales person
start: 2002 end: 2002

I worked as a sales person at Cobra promotions, where i gained experience in customer service and sales techniques. I was alright at this, naturally. It was a great opportunity to develop my communication skills and learn about the retail industry, but i realised quickly it wasn't what i wanted to do.

City care
Labourer
start: 2002 end: 2002

I worked as a drain cleaner, working alongside an experienced colleague who taught me the ropes, i pretty quickly realised i wanted to do something else.

Turners & Growers
Food processor
start: 2002 end: 2002

I worked as a food processor at Turners & Growers, not sure why, but i always wanted to work in this place. I had applied for a position previously but didn't get it. I was still pretty young, but i learned about how to work with people, what kind of attitudes people have and how to work hard to ensure the work is done before the end of the shift.

Alto plastics
Plastics processor
start: 2000 end: 2001

I worked as a plastics processor, alongside my bothers who both worked here. In all honesty, i shouldn't have worked here, as i wasn't technically old enough, but i did, and i learned a lot about the different characters i would come across in the workplace in future.

Thai orchid
Kitchen hand/dish washer
start: 1999 end: 1999

This was my first job, i worked in my uncles restaurant, washing dishes and helping with various tasks. It was great, i think this put me on the path of being independent.

Interesting things i've done with .net

  • I've create a .net core web app and api to enable student registration for university of canterbury's recreation centre
  • I've created a .net core web api to get data from active directory using ambiguous name resolution via directorysearch class

Interesting things i've done with PHP

  • I've created an API to connect to allocateplus database and retrive student timetable information. I secured this API using an API-Key header
  • I've created a website in PHP fro

Interesting things i've done with html, css & javascript

  • I created this website using only html, css & javascript
  • I've created an outage page for Univeristy of Canterbury's main website using only html, css & javascript... served from an IIS based static content based server. The html is updated via an integration that allows 'content' creators to modify and 'publish' the content and links of the outage page by updating the outage page settings. The outage page uses the settings to determine what content and links to display
  • I've used html, css & javascript as the most basic frontend stack for tools to...
    • retireve or send data via AJAX calls to PHP scripts
    • retireve or send data via AJAX calls to powershell scripts
    ... for things such as...
    • updating meta data to add chapters to video files using exif
    • collecting form input and initiating an automated processes passing script arguments based on user input

Interesting things i've done with AutoIT

  • I've used AutoIT to automate the recylcing of deleted items in terminalfour, using the web UI and simulating keyboard and mouse input, to improve system performance
  • I've used AutoIT to automate labourious processes in jadeSMS such as creating a course and its occurances based on known inputs from .csv file

Interesting things i've done with Java

  • I've acquired a diploma in software devleopment majoring in java in 2011
  • I've created a few desktop applications including a calculator (ofcourse) and a 2d sidescrolling game
  • I've worked on an Adobe Experience Manager project using Java as the backend code

Interesting things i've done with powershell

  • I've created an integration to consume student data from a student management system, create a student object, then convert the student into a patient and ingest the patient into a patient management system
  • I've used cryptography in powershell, for rendering a user form, enabling product admins to input integration settings which can be stored on file encrypted
  • I've created scripts for rescaling, resizing images, and uploading them to cloud storage via product supplied API's
  • I've created scripts for automating the downloading of webhost logs from adobe experience manager and ingesting the data into a database.

Interesting things i've done with MySQL

  • I've setup a basic mysql server, to ingest webhost logs from adobe experience manager via powershell using adobe's AIO plugin
  • I've used stored procedures in mysql as part of auotmating a non production environment refresh of on prem wordpress instance
  • I've used mysql workbench extension in microsoft excel to allow for exporting data out of wordpress database tables into excel

Interesting things i've done with Microsoft SQL

  • I've created stored procedures that aggregate data from multiple tables and where appropriate apply logic to create and return new datums
  • I've used MSSQL databases alongside other platforms such as api gateways and integrations

Interesting things i've done with VB.NET

  • I've used vb.net with excel to create a spreadsheet that manages website redirects, and allows for automated testing of redirections and auto generating the .rules file
  • I've used vb.net with excel to create a spreadsheet that manages website 'content security policy' and allow for autogenerating the CSP header
  • I've used vb.net with visio to create a flow chart illustrating system connectivity, allowing for parts of the chat to be hidden and displayed on button click