Website under (re)construction - again!
University of New South Wales — BSc Computer Science
UNSW Co-Op Scholarship
4th Year / 2016 - 2019 / 79.278 Weighted Average Mark
Relevant courses I will complete: Algorithms, OS, Networks, AI, Advanced C++, Computer Vision, Distributed Systems, Neural Networks
Familiar with: Java, Bash, SQL
Some experience with: Perl, Ruby
Want to learn: Go, Rust
Proficient: React, Flask, Serverless Framework, Vim, Git, Tmux, Bolt
Familiar with: AWS Lambda & API Gateway, Webpack
Some experience with: OpenCV, NumPy, AWS EC2, Postgres, Docker, Vue.js
Worked with the front-end Editor platform team which builds an advanced WYSIWYG text editor used in production in many Atlassian products. It is an open-source React app using the Prosemirror toolkit written in TypeScript.
Building a rich text editor in a browser is challenging task - there is a huge amount of complexity which must function intuitively to all levels of users, along with a custom document format and robust real-time collaboration between users. I worked with tools such as Bolt, Browserstack and Jest.
Some highlights were: - Implementing a dark mode theme which will ship in the Jira mobile apps in collaboration with the native iOS and Android editor team - Proposing and implementing a change to the Atlassian Document Format used across Atlassian products - Improving the search algorithm to help users insert rich widgets more intuitively
Worked in the front-end product development team and with a backend specialist on a relatively small from-scratch project to advance News Corp's front end stack, a Global Preference Centre for email newsletters www.newsletters.news.com.au. It uses Vue.js Server Side Rendering on AWS Lambda behind AWS API Gateway, using GraphQL as an abstraction for legacy systems.
Some things I worked on were: - Tooling for linking multi-repo structure (emulating a monorepo) - Front-end dev of the Vue.js app - Setting up a CI and testing workflow on Atlassian Bamboo using Docker - Implementing AWS Lambda deployments from Bamboo using the Serverless framework - On-demand feature branch deployments to Lambda using AWS API Gateway environment - JS unit tests, setting up Vue component tests using JSDOM, headless parallel Serverless screenshot integration tests - Load testing to determine the best Lambda CPU/RAM settings and cost - Improving SSR performance using AWS X-Ray tracing; ~300ms render time to ~50ms
(Still in very active development, I really wanted to ship!)
Weather radar simplified - a web app that shows every Bureau of Meteorology radar image animated on a slippy map in your exact location. I wrote a custom tileserver which georeferences BOM images and generates slippy map tilesets with Python GDAL and ImageMagick, served up to a Mapbox OpenGL slippy map using an OpenStreetMap cache.
Written in TypeScript (for web and Node) and Python. I've been tinkering with FFT powered rain prediction but I need the map first!
I created a simple API running on AWS Lambda & Heroku to query real-time Sydney bus arrivals using TfNSW's Trip Planner API. I also built a Pebble JS app to query my nearest favourite bus stops and get real-time departures. (I previously visualised Sydney transit data along with a short film/swiss poster: jakecoppinger.com/transitinsydney)
I developed a proof-of-concept system to enable A/B testing in architecture using computer vision. A laptop recognises pedestrians with OpenCV, sends their positions over WiFi to an Arduino which plots their position on a piece of paper.
A real-time bus arrivals app for Canberra to simply answer “When will my next bus come”. Built with a Python backend on Heroku which queries the ACT government's NXTBUS SIRI API and a JS front end that renders on a Canvas using Processing.js
A system for interacting with IoT devices using hand gestures. I developed an Arduino based prototype with a low power gesture recognition algorithm, an Android app in Processing and a 3D printed casing through a year long independent research project while in year 12. I presented my research at TEDxSydney, Intel ISEF, BHPBSEA, Razorfish, CSIRO and was interviewed by University of Pennsylvania, SMH, The Australian, ABC News, 7:30 report, Ten and 7 News.