Shihan Ai

Senior Software Engineer

PROFESSIONAL EXPERIENCE


Yaar Inc, Software Engineer
Feb 2018 - Present
JavaScript
Electron
React
Redux
PostgreSQL
Golang
Java

Invented a novel JavaScript web automation framework that understands dynamic HTML DOMs and simulates actions such as clicking and typing.

Created a tool using JavaScript to collect voice samples from over 50,000 workers on Amazon Mechanical Turk.

Developed an internal testing environment which provided tools to debug and monitor the performance of machine learning models on various web tasks.


IBM, Software Engineer Intern
May 2015 - Aug 2016
Python
JavaScript
Node
Express
React
DB2

Designed the back-end of a central analytics platform for IBM dashDB and provided managers with real-time analytics.

Developed a tweet scheduler to automate the promotion of IBM DB2 on Twitter.

Automated the collection of video analytics from YouTube and generated infographics to understand the data.


University of Toronto, Research Assistant
May 2014 - Aug 2014
Python
NLTK

Developed a command line tool that attaches semantic meaning to unstructured web data.

Built a Twitter bot that responds to movie related tweets with showtimes and recommendations.

Performed statistical and lexical analysis on tweets to understand the structure of natural language on social media.

PROJECTS


Photo Enhancer
July 2017 - Aug 2018
Python
NumPy
OpenCV

Created a command line tool that can add various visual effects to digital photos

Tested various smoothing functions and evaluated their effectiveness in achieving a photogenic blurring effect

Implemented color mapping effects to user marked objects in an image by utilizing foreground extraction techniques and the HSV color space


Photo Foreground Extraction
June 2017 - July 2017
Python
NumPy
OpenCV

Engineered an algorithm that can classify pixels in an image as either the foreground or the background of the image

Independently researched and implemented methods to decrease processing time when processing high resolution photos

Performed benchmark tests against traditional foreground extraction methods such as GrabCut and improved the processing time of 12-Megapixel (3024 x 4032) images from an average of 74 seconds to 3.6 seconds


Selfie Acne Remover
May 2017 - June 2017
Python
NumPy
OpenCV

Independently researched and implemented an algorithm that can crop out user defined areas of an image and fill the cropped-out areas with believable textures

Analyzed and identified the optimal hyper parameters and produced results with little or no optical artifacts


Smart Image Resizing
Nov 2016 - Dec 2016
Python
NumPy
OpenCV

Implemented an algorithm that performs content-aware image resizing by removing seams comprised of the least significant pixels in an image

Performed tests to measure the effectiveness of various definitions of pixel significance and concluded that using the image gradient produced the best results

TECHNICAL SKILLS


Proficient
Python, JavaScript, HTML/CSS, React, React-Native, Redux, Node.js, Electron, Expo, SQL, Git
Working Proficiency
Java, Swift, Objective-C, Golang, C++, C Docker, AWS

EDUCATION


University of Toronto, H.B.Sc with Distinction in Computer Science
September 2012 - June 2017

Completed a specialist degree in Artificial Intelligence

Coursework focused in Computer Vision and Machine Learning