Hi, I'm Jake Coppinger.
I'm currently working as a full stack software engineer at Atlassian in the Linking Platform team, improving the features and reliability of Smart Link experiences in products like Confluence, Jira and Trello.
Say hello! I live in Sydney, Australia.
[email protected] |
A little bit about me:
- I'm currently working on Gatho (gatho.party), a platform for hosting small events. It supports one click RSVP links for guests, and can integrate with a Matrix group chat.
- Recently I've worked on:
- Visualising realtime Sydney transit congestion data to find the cheapest way of improving service frequency and speed - see Sydney Transit Graph
- Helping Australians find convenient vaccine appointments with GPVaccineSearch.com
Proficient: TypeScript, Python
Familiar with: C++17, SQL
Some experience with: C#, Rust
Tools & Frameworks:
Proficient: React, AWS, ProseMirror, Flask, Serverless Framework, Git
Familiar with: Webpack, Docker
Some experience with: OpenCV, NumPy, Postgres
University of New South Wales — BSc Computer Science (Distinction)
UNSW Co-Op Scholarship
2016 - 2019
AI, Computer Vision, Neural Networks, Advanced C++, Distributed Systems, Algorithms, OS
- UNSW Computing Elite Students Award
- UNSW Dean's Honours List 2017
Gungahlin College (public, non-selective)
Atlassian, Linking Platform (Full Stack, P4 Software Engineer, Apr 2021-)
The Linking Platform team builds all smart link experiences in Atlassian. So far I have:
- Reduced the cost of one of our microservices by 30.9%, and the entire team's AWS bill by 24%
- Implemented a number of Salesforce Smart Links and improving OneDrive embeds
- Feature-led a new service for resolving Bitbucket links, improving speed and reliability
Atlassian, Editor Platform (Frontend, Software Engineer, Jan 2020-Apr 2021)
Improved the performance, reliability and customer satisfaction of the Atlassian Editor, used by millions of monthly active users.
Westpac, Software Engineer, 6 month internship (2019)
Worked in a team to develop a green-field specialist finance C# .NET application. I helped improve their Agile work practices and development methods.
Atlassian, Software Engineer, 6 month internship (2018)
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
News Corp Australia, 6 month internship (2017)
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
(No longer in active development due to imagery licencing issues)
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 also tinkered with FFT powered rain prediction!
Sydney Bus Departures, 2017 github.com/jakecoppinger/sydney-bus-departures
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/transit_in_sydney)
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.