- Working on open-source projects to: scrape and search for products based on nutrients, get directions to food places in Singapore, digitize stickies (square detection and OCR), aggregate tech events from facebook, meetup, eventbrite APIs (webuild.sg).
- Attending tech meetups, conferences, hackathons, doing JS presentations such as head-tracking with webRTC, learning at coursera, khan academy or MIT open courseware, contributing to open source, and diving into the techniques and maths in image processing, computer vision and machine learning
Computer Vision Consultant
Revolution Analytics Pte Ltd, Singapore
Dec 2014 - Jan 2015
- Task: classify integrated circuit (IC) substrate (the green fiberglass board) defects (scratches, improper etching, etc) in images from an IC optical inspection machine.
- Implemented the image processing and feature extraction components with Python openCV and numpy. Collaborated with their data scientist to improve the machine learning model written in R.
- Final image processing component included automatic cropping using edge detectors, masking and watershedding with 100% successful crops over 11,000+ images. 9-length feature vector and an ensemble of neural network and support vector machine was delivered.
- Presented and documented tried methods, research, results and discussions and provided potential future improvements. Resulted in a 30% improvement in defect detection.
Co-founders Pte Ltd, Singapore
Jan 2014 - Present
- Worked with early-stage startups and companies to understand their technical needs. Helped to foster software processes (continuous integration, testing, team communication) and developed the groundwork for future developers to continue building.
- Built an in-house project management tool to visualize and organise github issues as stickies on a draggble, zoomable virtual wall (drywall.io).
Private Company; 5 employees
Jan - July 2014 (7 mths)
- Deployed a modular system architecture with restful APIs and integrated various saas such as Auth0 for user management, MongoLab for cloud mongodb, keen.io/stathat for server analytics, papertrail/flydata for logs.
- Implemented various Python engines as restful APIs to perform data and text analytics of social advertising data (bottle, numpy, pandas, textblob, requests, nosetests, etc). Created a restful API with nodejs, mongoDB, mongoose as a persistent CRUD layer between the analytics engines and the client app.
- Setup automated testing and continuous integration with staging/production environments to ship code from github to circleCI to heroku.
Integrated Research, Singapore
Public Company (IRI); 2 employees
May - Jan 2014 (8 mths)
- Designed and deployed system solutions to monitor large enterprise’s unified communications & virtualization environment.
- On-site customer demos to executive decision-makers in Asia-Pacific. Collaborated with partners and end-customers to identify business & technical pains to produce customized monitoring solutions.
- Conducted 2-week product training courses to new partners.
Promoted the product in industry trade shows.
Integrated Research, Sydney
Public Company (IRI); ~200 employees
Feb 2011 – May 2013 (2 yrs 3mths)
- Desktop application development in C++ and C for Prognosis (real-time cross-platform communications and infrastructure monitoring software) and in C# for the Windows configuration tool.
- Debugged browser memory leak in a 3rd-party charting library, reducing from exponential to logarithmic growth by freeing DOM references and reducing deeply nested views.
- Debugged and solved a bug in legacy C for a high-support tier customer (2 weeks including weeknights & weekends).
- Built enterprise web application ground-up using C# ASP.NET. Worked in Agile-Scrum TDD in a team of 5-7.
- Web languages/tools: C#, WCF (for the restful web service), FusionCharts (3rd-party lib for SVG charts), JQuery, Dojo, QUnit (JS unit tests), Selenium (web browser automation), ccm (measure JS complexity), SourceMonitor (C#, C++ complexity), SVN, Jira, Visual studio 2003/2010.
Project Title: Appearance-based Re-identification of People in Video (surveillance videos)
Research industry; ~700 employees
Dec 2009 – Mar 2010 (4 mths)
- Implemented a height estimation module for a human re-identification system in C++ and C, with OpenCV library.
- Researched a method that was free of camera calibration and for single-view videos. The final implemented algorithm used vanishing points from projective geometry. Attended annual CV camp for a week.
University of SydneyBachelor of Information Technology (1st class Hons)
Thesis: Structural Image Classification with Graph Neural Networks
Publication: Structural Image Classification with Graph Neural Networks (DICTA; Dec 2011)
Honours Coursework: Knowledge discovery and data mining (machine learning); Multimedia storage & retrieval (feature extraction, indexing, video streaming, compression, storage structures); parallel and distributed computing
- Uni of Sydney Academic Merit Prize for the highest performing undergraduate based on average marks (2010)
- High Honor Roll by maintaining high distinction (over 85%) for the year (2009)
- Microsoft Research Asia Prize for Senior Software Development Projects Award. Built a self-assessment module for an open-source learning management system, Moodle. (2009)