William Mak
Experience
- 2019 - present
Senior Backend Engineer at Sentry
- 2016 - 2019
Intermediate Software Developer at GAdventures
Developed and maintained the software and systems for the internal tour leader website. This includes applications for scheduling tour leaders, payments, and money requests.
Technologies: Python, Django, JavaScript, jQuery, CircleCI, Travis, AWS, ECS, PostgreSQL
- Improved currency API response times by 75x by simplifying the structure of data, bringing query times down to 2ms
- Lowered test suite runtime to 40s by introducing parallel testing and ensuring test isolation, a 12x improvement from before
- Integrated the systems with the Single Sign-On (SSO) provider Okta, allowing users to sign-in with a single click
- Built a system to interact with multiple RESTful APIs via webhooks to help translators translate API resources
- Worked with stakeholders to create a portal for tour suppliers to see upcoming activities and transports
- Enhanced the developer experience using Ansible to help developers set up their environments with a single command
- Set up Docker and configured CircleCI to replace the on-premises servers with AWS and enabled continuous integration
- 2017 - present
Co-Creator of StageKeep
Architected and developed an application with a small team to help users manage dancer formations matched to music.
Technologies: C#, Unity, Python, Django, JavaScript, React, AWS, EC2
- Created a cross-platform application using Unity that works on iOS, Android, Windows and MacOS
- Architected models and an API structure to store data from the app
- Implemented a Django backend to store user data
- Configured the system in AWS using EC2 and RDS
- Improved the application through user testing and getting feedback from users
- Used coverage.py and CircleCI to get automated testing and code coverage reporting
- 2015 - 2016
Software Developer at Media Resources
Designed and built the diagnostic UI for the company’s digital billboards.
Technologies: JavaScript, Angular, Jenkins, Linode
- Created an application allowing users to layout any number of webcams on a page
- Gave users a responsive live visual representation of billboards using PaperJS
- Produced a method that enabled user customization of schedules through a step chart created through Highcharts
- Set up, configured and maintained a Jenkins instance to automate development and production releases
- Migrated the automation suite to GitLab as to provide overseas developers continuous access to servers
Education
- 2011 - 2015
- Honours Bsc, University of Toronto, Computer Science
william@wmak.io • Toronto, Ontario
Github: wmak