My resume in hyperlinked format.
- Database: SQLite, MySQL, SQL, XPath, XQuery, Data Warehouse.
- Java stack: Guava, Spring, JDBC, SLF4J, JCommander, Jacoco, JUnit, TestNG, Spock, Ant, Maven, Gradle.
- Python stack: PyPI, virtualenv, Jupyter, numpy, scipy, Flake.
- Ruby stack: rake, Gem/Bundle, Rails.
- Other libraries: ANTLR, Boost, OpenCV, Eigen, Numpy, Matplotlib.
- OS & Platforms: Windows, Mac OS, CentOS, Ubuntu, Amazon Web Services.
- Big Data: Hive/Hadoop, HBase, Kafka, Vertica, Cassandra.
Honor & Awards
- Salesforce Spot Bonus [March 2018]: for “absolute dedication and ownership”.
- IoT Rock Star Award [April 2017]: for delivering a scalable CI/CD system used in Salesforce IoT.
- Winner - Best Idea [August 2016]: Member of winning team “Ahab” for Best Idea category in Intuit Small Business Group’s Data Hackathon.
- Intuit Spotlight Award [June 2016]: Peer’s spot award for “Deliver Awesome”.
- Intuit Spotlight Award [August 2015]: Manager’s spot award for “Deliver Awesome”.
- Intuit Spotlight Award [March 2015]: Manager’s spot award for “Learn Fast”.
- IEEE ICRA Travel Award , by National Science Foundation.
- IEEE ICRA Travel Award , by IEEE Robotics and Automation Society.
- Dean’s Distinguished Fellowship , by University of California, Riverside.
- Singapore Scholarship [2002-06], full tuition & allowance scholarship for top ASEAN undergraduates.
- Dean’s List, Faculty of Engineering, National University of Singapore [2002-04].
Senior SDE, Apple (7/2018 - present)
Senior Member of Technical Staff, Salesforce (10/2016 - 6/2018)
- Salesforce IoT. Worked with AWS, Kubernetes, Docker, Jenkins, Groovy/Java, CI/CD.
- Designed and implemented a solid CI/CD platform from scratch as the foundation for launching IoT Explorer into production.
- Built a robust, highly-available Kubernetes infrastructure on top of internal Compute services at Salesforce (similar to AWS EC2 & S3). Integrated with Prometheus and Heapster-enabled Dashboard for monitoring.
- Designed and implemented fully containerized Jenkins systems (production and experimental) running on the above Kubernetes infrastructure, integrated with other systems and services such as Github/GHE, DockerHub, Artifactory, Nexus, Slack, PagerDuty.
- Implemented various key features such as Docker images, access control, Jacoco-based code coverage gates, Slack/email notifications. Contributed extensively to the shared global Groovy library for Jenkins to reduce code duplication and ease Jenkins pipeline configuration for developers. Built solutions and infrastructure for front-end CI/CD (Dockerized Headless browser, PhantomJS).
- Designed and implemented Kubernetes-backed micro-services for continuously syncing Github/GHE commits to GUS, integrating HBase schema upgrade to Perforce, and posting to Chatter on build successes.
Software Engineer II, Intuit (12/2014 - 10/2016)
- Designed and implemented automation frameworks and tools for Big Data projects for QuickBooks Online and Small Business Group (SBG) ecosystem. Worked with business analysts and data scientists on project requirements to develop appropriate tools and automation solutions.
- Projects and Achievements:
- Designed and implemented a test automation framework to facilitate automated unit/functional testing of SQL scripts, verifying Extract-Transform-Load (ETL) processes between data sources (e.g., Netezza, Hive, HDFS, Vertica), and validating data consistency and integrity.
- Member of team “Ahab” that won Intuit Data Hackathon: Using Docker containers to recreate data warehouse infrastructure and pipelines in local environment for efficient ETL development and testing.
- Three Intuit Spotlight Awards for demonstrating Intuit Values: “Learn Fast” 2015, “Deliver Awesome” 2015, and “Deliver Awesome” 2016.
Software Engineer, Objectivity Inc. (7/2012 - 12/2014)
- Designed and implemented automation frameworks to facilitate scalable testing for company’s database products, Objectivity and InfiniteGraph.
- Selected Projects and Achievements:
- Designed and implemented performance benchmark for measuring data ingestion performance of graph database InfiniteGraph in distributed settings, including automated performance test framework in Python that orchestrate Java-based clients ingesting data simultaneously from multiple remote Windows and Linux hosts.
- Designed and developed an automated test suite for testing Java byte code injection tools, including a custom Java parser (based on ANTLR) to verify correctness of decompiled byte codes after injection.
- Developed functional tests for Talend data connectors in ETL pipelines for transforming data from MySQL and Cassandra databases to Objectivity databases.
- Reviewed Java codes and enforced good practices for more robust and flexible Java API.
Research Software Engineer, National University of Singapore. (8/2006 - 7/2009)
- Worked in driverless car projects, a collaboration effort of multiple Singaporean industrial research labs, managed by Defense Science Organization (DSO), Singapore.
- Designed, implemented and evaluated computer vision algorithms for visual sensor modules. Designed and implemented an adaptive machine learning algorithm to identify drivable road surface from stereo images, by building statistical models of road appearance.
- My (part-time) Master of Engineering thesis sums up work during that period.
- Master of Science, University of California, Riverside. GPA: 3.92/4
- Designed and implemented sensor fusion algorithms for accelerometers, gyroscopes, and cameras, with applications targeted for smartphones, VR headsets, and driverless car navigation systems. The algorithms, based on probabilistic models and statistical inference methods, are implemented and published in peer-reviewed conferences (ICRA, IROS).
- Bachelor of Engineering, National University of Singapore, Singapore. GPA: 4.42/5
Courseworks & Trainings
Lifelong learning and professional training after college.
- Scala Seminar.
- Using and Searching with Splunk.
- Chef Fundamentals.
- Amazon Web Services.
- Stanford OpenEdX: Database
- Estimator initialization in vision-aided inertial navigation with unknown camera-IMU calibration. IROS 2012. PDF
- Earlier work as Technical Report: PDF
- Consistency analysis for sliding-window visual odometry. ICRA 2012. PDF
- Technical Report: PDF
- Motion tracking with fixed-lag smoothing: Algorithm and consistency analysis. ICRA 2011. PDF
- Technical Report: PDF
- Technical Report: Application of the MSCKF algorithm on the Cheddar Gorge Wildcat Dataset. PDF
- Extraction of shady roads using intrinsic colors on stereo camera. SMC 2008. Technical report
- Robust extraction of shady roads for vision-based UGV navigation. IROS 2008. Technical report