About

Work experience

Software developer

D2L (Desire2Learn)
Vancouver, BC
June 2020 - July 2021
  • Developing the Brightspace LMS using React, Typescript, SQL, .NET and Web Components
  • Working on a major cross-team UI and data model overhaul to improve the user experience site-wide
  • Built a complex and highly requested feature that differentiates the product from it's competitors
  • Fixed urgent production bugs to allow online classes to run seamlessly
  • Lead an initiative to create a proof-of-concept for a new and engaging study tool for students
  • Enhanced internal tooling to make automated tests faster and more reliable
  • Engaged in the company's tech culture, demoed new features and presented at the internal conference

Unity developer

NGX Interactive
Vancouver, BC
February 2020 - May 2020
  • Did part-time contract work building interactive museum exhibit software using Unity
  • Used particle effects, animations and touch screen gestures to create rich interactive experiences
  • Consulted with designers, QA, producers and project managers to ensure requirements were met within tight time and budget constraints

Unity+VR developer

SFU Cognitive Science Lab
Burnaby, BC
February 2019 - May 2020
  • Did part-time work with a research lab developing games and VR prototypes using Unity and C#
  • Iteratively built a game for an experiement, creating an engaging experience for participants
  • Implemented a VR menu system designed by cognitive science researchers to improve productivity in VR
  • Developed VR software to prototype UI concepts, more info on thomasnakagawa.com/csl

Full-stack web developer

SAP Canada Inc.
Vancouver, BC
May 2018 - December 2018
  • Did an 8 month internship developing an enterprise SaaS that serves 34 million subscribers
  • Eliminated a 10 hour/week manual task by building a microservice to extend Selenium Grid and automate previously unautomatable test cases
  • Created a tool to prevent confusion during deployments by raising alerts when feature flags are toggled

Software developer

PDFTron Systems Inc.
Vancouver, BC
May 2016 - December 2016
  • Did an 8 month co-op developing a productivity web app with a React front-end and a Firebase back-end
  • Refactored and redesigned the app's main navigational UI, using feedback from UX designers and users
  • Took ownership of many front-end features, including the sign-up workflow, onboarding tour and accessiblity functionality

Skills

Programming languages: C#, Javascript, TypeScript, Java, Python
Web development: React, SQL, .NET, HTML5, CSS3, Web Components, Node.js, Socket.IO
Game development: Unity (custom editor, coroutines, UI, scriptable objects), SteamVR
Deployment + CI/CD: Jenkins, Github Actions, Heroku, shell scripting
Other skills: Git, unit testing, automation testing, code review, documentation

Education

Simon Fraser University

Burnaby and Surrey, BC
2014 - 2019
  • BSc. (with distinction) Computer Science - Software Systems
  • Interactive Arts and Technology (SIAT) minor
    • UI/UX, HCI, interaction design, 3D animation, sound design

Projects

Unity Asset Store

thomasnakagawa.com/unity-assets
  • Published two Unity asset packs: "3D Interactive Knobs, Buttons and Sliders" and "90's OS Desktop UI"
  • Made high quality code so developers of any skillset can use the assets. Reviews on the Unity Asset Store highlight the code's readability, ease-of-use and extensibility

Experimental Noise Room

On Google Play
thomasnakagawa.com/enr
  • Used Unity to design and develop a 3D music performance app that has 1000+ downloads
  • Google Play Store reviewers call it "Very interesting...lovely, original interface too" and "a REALLY cool tool to visualize+explore different aural concepts+texture"
  • Did many stages of user testing while building the app to make sure it was understandable and fun
Visit my website thomasnakagawa.com for more info about my work