Hi, I'm Jake Coppinger.
I'm currently working as a frontend software engineer at Atlassian, improving the performance and reliability of an advanced text editor with millions of monthly users.
Website under (re)construction - again!
A little bit about me:
- I play the violin solo and with an orchestra. I currently play with the UNSW String Ensemble and was previously concertmaster of the Canberra Youth Philharmonic Orchestra.
- I presented at TEDxSydney 2014 in the Sydney Opera House in front of 2,250 people
- I dance salsa and I’m looking to learn bachata
- I’ve been writing in the Colemak keyboard layout (designed 2006) for ~1.5 years on a Kinesis Advantage 2 while still writing in QWERTY (designed 1868) on MBP keyboards to stay fluent. It’s a concave, columnar, split, tented, mechanical keyboard with thumb keys!
- I’ve experienced Steiner, Montessori, public education and a group-of-eight university, and have strong views on each
- I’ve represented Australia in an international science fair in LA, my trip sponsored by Intel
- I’m a proud cyclist, urban planning nerd and transit advocate.
- I’m a volunteer surveyor/editor for OpenStreetMap/Mapillary (with a focus on cycle infrastructure). Chances are you’ve encountered my map improvements in Uber/Tesla routing/Instagram/Snapchat/Facebook maps.
- I occasionally volunteer with the Humanitarian OSM team supporting natural disaster recovery efforts. Very keen to teach OSM editing if you’re interested, please reach out!
- I’m a photographer and filmmaker. I find I cover a lot of architecture, infrastructure and natural landscape on the photography side, and documentary/music videos (with local and international musicians)/tutorials on the film side
- My YouTube channel has ~4.5 million views
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)
Proficient: TypeScript, C++17, Python
Familiar with: Java, Bash, SQL, C#
Some experience with: Perl, Ruby
Want to learn: Go, Rust
Proficient: React, ProseMirror, Flask, Serverless Framework, Vim, Git
Familiar with: AWS Lambda & API Gateway, Webpack
Some experience with: OpenCV, NumPy, AWS EC2, Postgres, Docker, Vue.js
Atlassian, Software Engineer (2020-)
Improving the performance, reliability and customer satisfaction of the Atlassian Editor. My code impacts the experience of millions of monthly active users.
It is an advanced WYSIWYG text editor used in production in many Atlassian products - built as an open-source Typescript + React app using the Prosemirror framework.
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!
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.
- I play the violin with the UNSW String Ensemble and I was previously in the leadership role of principal violinist in the Canberra Youth Philharmonic Orchestra
- I can type in Colemak faster than Qwerty
- Maps: Active Open Street Map volunteer since January 2018
- Film: I have a love for all aspects of filmmaking
- Design: I have a fascination with graphic, user experience and industrial design along with architecture.