Summary of Qualifications
- Experience with the modern software development environment (version control, continuous integration, automated testing, etc.) in Mac, Linux, and Windows environments.
- Strong interest in Machine Intelligence, Natural-Language Processing, and Human-Computer Interaction.
- Bilingual in English and French.
San Jose, California
Speech Web Applications Engineer
October 2015 - Present (Full-Time)
- Created (or contributed to) multiple tools in their entirety from server (using Python and Java), to UI (using Typescript, HTML/CSS and Angular).
- Developed an API server and UI to store the Siri lexicon and support linguist review of tens of millions of words and their pronunciations, aiding collaboration between teams.
- Built the server component of a privacy-protecting research and distributed ML platform used by hundreds of millions of devices, reducing model iteration time from months to days.
March 2015 - October 2015 (Full-Time)
- Contributed features and bug fixes on several Scala applications using natural-language processing and machine-learning techniques to measure document similarity, retrieve similar content, and delight the user with the experience.
- Collaborated with co-workers in an Agile programming environment with an emphasis on well-designed, peer-reviewed technical solutions, and fully-tested and thoroughly-reviewed code.
Software & Machine Learning Developer
July 2014 - March 2015 (Full-Time)
- Created intelligent sentiment analysis tool in Java using OpenNLP and SentiWordNet, and feed-forward neural network to suggest matches across text-based content collections.
- Led efforts to ensure Continuous Integration and Deployment across products, set up Jenkins CI server and testing using Mocha.js and JUnit, consolidated build processes using NPM and Maven.
App Developer and Programmer
August 2014 - October 2015 (Part-Time)
- Developed an Android client for a participatory sound art project, led by Professor Jessica Thompson, University of Waterloo.
- Used a variety of sensors (including microphone, GPS, accelerometer) to provide input to interface with an existing PureData backend.
- Created re-usable Bluetooth IPC layer and messaging library for data transfer between two Android clients.
Data-Mining & Machine Learning Developer
April 2013 - August 2013 (Full-Time)
- Fixed bugs and added features to the full stack of the Canopy Labs customer analytics platform throughout a series of inter-related applications.
- Worked with a variety of software development tools including Git, FogBugz, JIRA, Scons, and Selenium.
San Francisco, California
Jan 2012 – April 2012 (Full Time)
Sept 2012 – Dec 2012 (Full Time)
- Helped develop and build features, and identify and fix bugs across both Square's Wallet and Register Android applications.
- Coded across the entirety of the application, from layout files and UI to helper libraries to backend logic, home-screen app widgets and more.
- Contributed to maintaining software quality via tests using Android testing frameworks Robolectric and Robotium.
- Worked primarily on OS X using IntelliJ IDEA, along with git and both ant and maven for building.
Georgia Institute of Technology
Atlanta, Georgia (online)
Masters of Science in Computer Science
September 2018 – December 2021 (expected)
- Deep Learning – Learning representations and classifying from just raw data.
- Machine Learning – Supervised, unsupervised, and reinforcement learning algorithms.
- Knowledge-Based AI – AI that learns and reasons based on knowledge representations.
- Reinforcement Learning – Learning based on experience via delayed rewards.
University of Waterloo
Bachelor of Applied Sciences in Systems Design Engineering
September 2008 – June 2014
- Pattern Recognition – Methods for classifying and intepreting measured data in groups.
- Machine Intelligence – Intelligent systems, artificial intelligence techniques.
- Simulating Neurobiological Systems – Neural computation, modelling techniques.
- Control Systems – Controls engineering, systems theory, PID contorl and action.
- Data Structures & Algorithms – Data structure and algorithm characteristics and use.