Last Updated Date: Aug 9th, 2016
An avid engineer. My interests span from software development to algorithms and mathematics. Challenging real life problems fascinate me. I love working with different levels of abstractions at once.
I am currently an engineer at Plaid. Previously I was at Square., leading many engineering teams - Payments, Visibility, and Data Infrastructure. Before that, I founded Polychart, a data visualization startup focusing on interactive analysis.
My current interests are:
- Software architecture
- Data warehousing
- Distributed systems
- Database Systems
At the end of the day, I'm a generalist at heart. I still have much to learn and I would love to dedicate my passion towards the company and the product that I believe in.
Software Engineer - Plaid (2017-current) - San Francisco, CA
- Theme: Data warehousing, backend engineering.
Engineering Manager, Data & Tools - Square (2016-2017) - San Francisco, CA
- Theme: Data warehousing.
- Managed a team of 5 engineers and Square's core data warehouse with petabytes of data.
- Lead the Hadoop modernization project: MRv1 to YARN migration, Hive upgrade, disaster recovery, and datacenter migration.
- Audited data growth and retention policy across 10+ engineering teams.
- Consolidated legacy ETL frameworks to Apache Airflow.
- Tools: Java, Amazon Redshift, Vertica, EC2, Airflow
Tech Lead, Software Engineer, Data Infrastructure - Square (2015-2016) - San Francisco, CA
- Theme: Data pipeline.
- Lead the next-generation data warehousing project: Exported Square's data to S3 and Redshift.
- Lead the next-generation data pipeline project: The system transports terabytes of data per day, featuring efficient binary protocol via Avro, reliable data delivery via Kafka, dynamic schema changes, and integration with muliple systems including Hive and Vertica.
- Tools: Java, Amazon Redshift, Vertica, EC2
Tech Lead, Software Engineer, Visibility - Square (2014-2015) - San Francisco, CA
- Theme: Metrics, monitoring, and alerting.
- Lead developer of square/metrics, query language for time series data.
- Designed and implemented a Cassandra-based metrics system: The system now handles over a million events / second. Data is stored in hierarchies of resolution and retention policy. Successfully introduced and operated two geo-replicated Cassandra clusters.
- Bootstrapped the initial Golang ecosystem @ Square.
- Tools: Golang, Angular, Graphite, Cassandra
Tech Lead, Software Engineer, Payments Infrastructure - Square (2013-2014) - San Francisco, CA
- Theme: Scalability, Reliability, and Payments Integration.
- Designed and implemented Square's next generation payments processing service: Achieved horizontal scalability via sharded MySQL and high availability via active/active across datacenters. Achieved 99.999% availability and 1,000 transactions per second peak traffic.
- Implemented Apple Pay support for Square's NFC card reader.
- Implemented a dynamic configuration management system now used by all backend services @ Square.
- Tools: MySQL, PostgreSQL, Riak, Cassandra, Java
Cofounder - Polychart (2012) - Waterloo, ON
Technical Cofounder of a data visualization startup.
- Programming and engineering responsibilities.
- Secured a $25,000 grant from the University of Waterloo.
- Built a data visualization tool based on the Grammar of Graphics by Wilkinson.
- Tools: Coffeescript, Python, SVG, d3.js, knockout.js.
Software Engineer Intern - ContextLogic (2011) - San Francisco, CA
Engineer in a early stage machine-learning startup. The company eventually pivoted to wish.com.
- Various engineering tasks: Prototyping machine-learning models, data visualization, and ETL management tools.
- Architected a Python MongoDB ORM which powers wish.com till today.
Software Engineer Intern - Google (2010) - Mountain View, CA
- Built a latency profiling framework for Google App for Business team.
- Created RPC trace analysis and validation tools.
- Tools: Java, Python
Software Engineer Intern - Foodoro (2010) - San Francisco, CA
- Created an e-commerce website aggregating daily deals from social commerce websites.
Bachelor of Mathematics - University of Waterloo (2007-2012)
- Bachelor of Mathematics, Joint Computer Science & Pure Mathematics (Co-operative program)
- Graduated with Distinction - Dean's Honour List
- Major Average: 91.2
|Good||Knows enough to be dangerous|
|Java Ecosystem||Hibernate, JooQ, Guice, Maven||Selenium / Webdriver , GWT|
|Web Ecosystem||Node.js, Angular.js, Django, d3.js, Knockout.js, R, CSS transpilers (Less, Sass)||React|
|Libraries & Frameworks||Serialization Formats (Protocol Buffer, Avro, Thrift, Flatbuffers)||EC2|
|Data Warehousing||Airflow, Apache Hive||Spark, Hadoop|
|Databases||MySQL, Cassandra, Riak, Graphite, Amazon Redshift, Apache Zookeeper, Schema Migrations||Redis, PostgreSQL, Kafka, Vertica, HBase|
Awards / Scholarship
- Velocity Venture Fund - $25,000 grant from University of Waterloo.
- University of Waterloo President's Scholarship
- Nortel Networks Undergraduate Scholarship
- Queen Elizabeth II Aiming for the Top Scholarship