Arthur McGregor

Software Engineer · Christchurch, New Zealand

I am a software engineer currently working for OrbViz , a data visualisation and storytelling SaaS product, originally developed by Orbica . Prior to retraining in ICT, I had a 10-year career as a high school physics teacher. I have a degree in Civil Engineering.


Experience

Full Stack Developer

Orbica

Lead developer and Product Owner for the OrbViz SaaS Product. Client facing, multi-disciplinary role within a small Agile team.

2019 - Present

Physics and Technology Teacher

Christ's College

Teacher in charge of General Science. Developed a Science and Technology course including robotics with Arduino.

2016 - 2017

Physics Teacher

St Bede's College

Teacher in charge of Physics

2013-2015

Physics and Mathematics Teacher

Various positions in Christchurch and England

2009 - 2012

Education

Graduate Diploma in ICT

SIGNAL (ARA and UC)
Cooperative, project-based studio course working in Agile teams. Capstone industry project at Orbica.

A+ in all courses

2018

Graduate Diploma in Teaching (Secondary)

New Zealand Graduate School of Education

Mathematics and Physics. Four teaching placements.

2008

Bachelor of Engineering (Hons)

University of Canterbury

Second Class Honours (Division One) in Civil Engineering

2004 - 2007


Portfolio

Commuter View

Stats NZ Competition Entry

commuter.arthur-mcgregor.nz

I had a clear vision for my entry, inspired by the “Where We Live and Work” dot plot visualization in We Are Here: An Atlas of Aotearoa. The first challenge was generating the dot plot data. This involved placing over 2 million dots on the map, representing home and work location for each commuter journey. The dots had to be randomly placed within each statistical area and the appropriate metadata added. I utilised the GIS skills I’ve learnt from my colleagues at Orbica to complete this using QGIS. The next challenge was to display these points on the map efficiently. My naive initial attempt was to use a GeoJSON to display all the points simultaneously. However, my computer was overwhelmed when attempting to style that many points. I solved this by generating vector tiles using Tippecanoe, which were served statically via Cloudfront and rendered using Mapbox. This changed the density of the dots depending on the zoom level and returned only the dots visible within the map bounds, which meant I could filter and style the dots without causing performance issues.

2020

hiko.kiwi

Electric Vehicle Charging Map (personal project)

hiko.arthur-mcgregor.nz

This personal project has been an enjoyable learning experience. As an electric vehicle (EV) driver, I need to know where the nearest fast charge stations are. Although there are many maps already available, this is a unique solution because it shows full details for current stations, as well as under construction and future chargers. In addition, you can view a list of all chargers and identify the nearest chargers to your current position. The app is a fully responsive, progressive web app, with Google Analytics tracking and automatic deployment from GitHub.

2018

Cacophony Project

Open Source

The Cacophony Project is using modern technology to eliminate predators such as possums, rats and stoats, so that we can restore our dawn chorus. The 'cacophonator' will lure predators with sound and light, use a thermal camera and machine learning algorithms to identify the predator, and finally eliminate the predator using a mechanised air gun that fires a sticky poison pellet.

I was involved in 2018 when studying as a volunteer contributor. I primarily helped improve the web portal which allows for remote monitoring of the cacophonators. In particular, I assisted with the transition from Node/Express to VueJS which has involved rebuilding the app from the ground up to be more mobile responsive and easier to maintain in the long term. Most of my timewas spent building the query interface and recording view page. I enjoyed working on a project that aligns with my passions as an environmentalist, as well as learning new skills and working with a diverse team.

View my contributions on GitHub

2018