Experience


Natural Language Laboratory @ SFU | Research Assistant 2023 - 2024

The Natlang Lab works on NLP research.

Redmane Technology LLC | Software Developer 2021 - 2023
  • Delivered case management software to clients by coordinating with the product team, operations team, and the clients

  • Collaboration in agile development teams done using software such as JIRA, Teams, and GitHub

  • Built Redmane Canada's first live interface using the Azure ecosystem and REST APIs, saving the client thousands of hours per year of manual data transfer between our system and theirs

  • Used C#, .NET, and related libraries to implement client requirements for their software solution

  • Used Transact-SQL scripts and queries into the database to automate development work, investigate issues, and solve identified problems

  • Led design sessions with clients to determine their organizational needs and how we can solve them

  • Trained clients to use our software, ensuring a smooth transition for their organization to our solution

  • Balanced the needs of up multiple projects at a time using prioritization, organization, and time management

  • Performed maintenance on production systems through regular monitoring

The Boathouse | Dishwasher 2017
  • Coordinated duties within a team in a fast-paced and quickly changing environment for long (sometimes 9+ hour) shifts

  • Handled rapidly growing dish piles while prioritizing tasks based on height of pile, line cooks' needs, and workplace maintenance

The Ridge Studios | Grip Technician Assistant 2015 - 2016
  • Hauled and organized flats

  • Assisted in setting up the lighting for the studio and the construction of the set

Education


University of Alberta | Candidate, MSc Computing Science 2024 - Expected 2026

Enrolled in the Master of Science (Thesis) in Computing Science program

Simon Fraser University | BSc Computing Science, 2021 2018 - 2021

Bachelor of Science (with Distinction), Major in Computing Science, 3.73 GPA

  • Awarded President's and Dean's Honour Roll and scholarships for excellence in grades

  • Created complex SQL queries, utilizing knowledge of relational algebra and calculus

  • Parallel Programming: Worked with multi-threaded applications, race conditions, critical sections, mutual exclusion locks, and semaphores

  • Learned programming paradigms - functional, concurrent, and distributed - with Haskell, Go, and Erlang

  • Used TensorFlow and MATLAB to build Convolutional Neural Networks and traditional edge+point detection systems

  • Wrote a Quantum Program Simulator to run any quantum program (sequence of gates) the user writes

  • Studied various NLP techniques, such as RNNs, LSTM, ELMo Embeddings, BERT, Word2vec, etc

  • Hand wrote machine learning algorithms such as entropy-minimizing random forests, k-modes clustering, and LOF anomaly detection

  • Learned CPU architecture, wrote in Assembly, and developed various OS components such as memory management

  • Studied internet protocols from each layer (eg: DNS, TCP, CSMA/CD, etc) and other networking topics such as Data Centers and VoIP

Projects


"Ray Tracing in One Weekend" in One Engine | Realtime C++ Vulkan Ray Tracing Engine 2021

Based on the "Ray Tracing in One Weekend" series. Video.

  • Developed in C++ using the graphics library Vulkan

  • Implemented Ray Tracing principles in a compute shader, which then renders the final image directly onto the swapchain's images

  • Utilized GPU-accelerated computation to calculate each pixel's data in parallel

Bitcoin Lite | Blockchain Protocol & Simulator 2020

A blockchain networking protocol based on Bitcoin's original whitepaper with networking, proof of work, longest chain, and mining functions. GitHub.

  • Learned about blockchains by developing a blockchain networking protocol based on Bitcoin's original whitepaper

  • Major features include networking capability, proof of work, longest chain, and mining functions

  • Utilized multiprocessing and concurrency to develop a simulated socket interface, allowing one machine to simulate multiple nodes over the internet

  • Used TCP sockets at the application layer to allow a single machine to act as a node for this program on the internet

Hotel Analysis | Data Science and Machine Learning 2020

GitHub.

  • Extracted relevant information from big data (OpenStreetMap dataset) using Spark and Hadoop on SFU's compute cluster

  • Feature engineering with Pandas and Numpy, training and optimization with scitkit-learn (Random Forest, Pipelines, and Grid Search), visualization with Plotly

  • Trained a model that can explain 35% of a hotel's score knowing only its location

Asteroid Eater | 2D Video Game 2020

The player controls a spaceship and eats asteroids to grow. Asteroids are eaten by slicing parts off. Video.

  • Written in Lua using the LOVE2D framework and Box2D for the physics engine

  • Created procedurally generated asteroids and asteroid fields using Perlin noise

  • Wrote a line-of-sight algorithm so the player can't see behind asteroids

tree-chan | Social Media Website 2019

A social media website organized according to the "tree" data structure. Live demo. Video.

  • Became a full-stack web developer - learned node.js/PostgreSQL for the server-side framework, and javascript/HTML/CSS for the client-side

  • Deployed with cloud services such as Amazon's AWS (S3 for image hosting; SES for confirmation emails), and Heroku (Platform for node.js app hosting; Postgres for database hosting)

  • Designed the database's structure for the website and created a Entity-Relationship Diagram to visualize it

itemRanker | Android Application 2019

App where users rank items and create tier lists. Features a Versus Mode where users sort items with comparisons. Google Play Store page. Screenshot.

  • Developed in the Android Studio environment and released to the Google Play Store

  • Designed the application using Java for the model and controller, XML for the view, and SQLite for the item database