Ruby Developer in Singapore, Singapore
Software Engineer2017 - PRESENT
Technologies: Hack, Python, C++
- Collaborated with the ads experiment infrastructure team to support testing of a different machine learning model.
Senior Software Engineer2016 - 2017Xfers (YC Summer 2015 Batch)
Technologies: Docker, Ruby on Rails, Python, Elasticsearch, Redis, React, Redux, AWS
- Architected and developed a continuous delivery system that allows anyone to build, deploy, or revert any code revision to multiple Docker containers across multiple availability zones in AWS with zero downtime.
- Refactored and localized the entire application to allow for launch in Indonesia. Developed scrapers for three different banks in Indonesia to process deposits and withdrawals automatically through Xfers.
- Refactored the entire system to support multiple wallets and currencies per user.
Lead Software Engineer2011 - 2016Appbackr, Inc.
Technologies: Elasticsearch, Ruby on Rails, React, Redux, AngularJS, Express, MySQL, PostgreSQL, PostGIS, Redis, Memcached, MongoDB, PHP, Yii
- Worked with the founders from the beginning with prototyping, development, and architecture of the product. I also scaled out the infrastructure, enhanced the deployment process with continuous delivery, and hired and managed an internal engineering team. Was the main engineer for a year and later built an engineering team of five.
- Developed a crowdfunding platform for backers to invest in a developer’s app and get a return on their investments when the app sells on the marketplace based on its sales.
- Architected, developed, and scaled a pipeline and system to scrape (in parallel), store and maintain all the Google Play apps, daily rankings, versioning, and SDK information on a daily basis.
- Developed and scaled RESTful APIs to expose app analytics to allow users to easily search and filter through the massive Google Play data.
- Wrote various scrapers to scrape Amazon, Goggle Chrome, and Samsung app stores on a daily basis in order to compare and perform analysis on them.
Software Engineer2009 - 2011HungryGoWhere (acquired by Singtel)
Technologies: PHP, MySQL, AWS
- Migrated and scaled up and out of HungryGoWhere from hosting company to the Cloud infrastructure (IaaS) using Amazon EC2, S3, RDS, ELS, and Cloudwatch.
- Fully revamped HungryGoWhere.com's front-end, migrating from a table-based layout to a clean layout using modern web techniques.
- Identified, analyzed, and optimized various inefficiencies of HungryGoWhere that led to slow responses and down time such as database locking, Apache configuration, etc.
- Optimized the HungryGoWhere website following the best practices such as minimization of HTTP requests and caching via memcached to cater to the 5+ million page views/month.
Associate2009 - 2009Government Investment Corporation of Singapore (GIC)
Technologies: C#, .NET, Weblogic, Oracle Database
- Managed vendors from SUN and HP to translate business requirements into technical specifications and ensure that the release datelines are met.
- Assisted in upgrading the GIC’s system from Weblogic 8.1 to 10.3 and Oracle 8 to 10g.
- Assisted in the server migration and scaling up of GIC’s corporate database servers for increased redundancy and performance.
- Liaised with different brokers (UBS, JPMorgan, etc.) to establish a standard format and protocol to automate the secure pulling and extraction of data from broker servers.
Engineer2006 - 2008National University of Singapore Overseas College (NOC)
Technologies: ASP.NET, Microsoft SQL Server, Classic ASP
- Migrated the web application from traditional ASP forms to ASP.NET 2.0 forms with AJAX.
- Designed and developed an administration system for the NOC management to efficiently process the applications such as keeping track of applicants and their status, arranging different rounds of interviews, generating Excel reports, etc.
- Redesigned and optimized the NOC application process for increased efficiency.
Analyst Programmer2006 - 2006Electronic Data Systems (EDS; Now part of HP)
Technologies: C#, .NET, Oracle DB
- Desgined and implemented a dynamic menu in .NET used in a live production environment. The system dynamically retrieves and populates menu items and its corresponding child sub-menus from the Oracle database based on the user’s rights.
- Coded Excel VBA macros for various data crunching procedures based on the client’s requirements, generating DDL, DML, and SQL statements using data from multiple Excel workbooks and dynamic retrieval of data across multiple workbooks to consolidate information.
- Wrote dynamic SQL codes in PL/SQL packages to process data received from Bloomberg and MarkIT, transforming them to a usable format.
- Investigated UAT and production logs raised to fix bugs and cater to requirement changes.
- Drag and Drop Search Chrome Extension (Development)
Drag and Drop Search is an intuitive and innovative approach to search. No longer do you have to scan through an entire list search engine just to find the one you want. You can even search using the correct Search Engine without looking at your screen! Simply Select, Drag, and Drop!
As featured on:
- LifeHacker (http://lifehacker.com/5937665/drag--drop-search-is-an-insanely-fast-way-to-search-the-web-in-chrome)
- MakeUseOf (http://www.makeuseof.com/tag/drag-drop-productivity-timesaver-applications/)
- FreewareGenius (http://www.freewaregenius.com/drag-drop-search-an-innovative-extension-that-will-transform-the-way-you-search-in-chrome/)
- Royal Sporting House (Development)http://royalsportinghouse.com/
Built a site for Royal Sporting House to showcase their products and apparel. Site is built with WordPress and allows faceted search (based on categories, gender, and branches), multiple subcategories, and tags per product.
Royal Sporting House is a multi-brand, multi-store network that offers a wide selection of apparel, footwear, accessories, and equipment from international sports brands like Reebok, Speedo, Nautica, Sperry, and Wilson.
- Pan Malayan Pharmaceticals (Development)http://www.pom.com.sg
Developed an eCommerce system for selling pharmaceutical drugs to doctors and clinics. The system has complex pricing logics for different customer types, quantity, date, and product types together with bonus items for some purchases. Integrations were made with their ERP system for pulling and syncing of product, customers and pricing data and pushing back of sales, invoices, and redemption data to their system. The site was done with Magento
Pan Malayan Pharmaceticals the largest prescription pharmaceutical wholesaler in Singapore, with an extensive network of clinics, pharmacies, hospitals, and other healthcare institutions.
- Genting Group (Development)https://www.gentingrewards.com/
Architected and developed a system from scratch to allow Genting Reward Members to redeem rewards and promotions using points earned. This involves the back-end system for admins to create promotions with different levels of approvals, a complex role based access control list (ACL) system for different stakeholders, a rule-based system for gaming exclusion rules and different card types, and permissions for different stakeholders to view redemption reports and marketing statistics. Developed an API with OAuth 2 to expose all information for consumption by the Web, iOS, and Android apps. The site is built with ASP.NET MVC 4, WebAPI 2, OAuth 2, and Microsoft SQL Server. My involvement in this massive project was the entire back-end system, the admin portal, and the APIs.
- Zookal (Development)https://www.zookal.com.sg
A video platform developed from the ground up that allows students to view videos uploaded by other students. The site was later extended to a textbook sales platform that allows students to sell textbooks to other students as well as a messaging platform that allows students to message other students. The site was built with Ruby on Rails, ElasticSearch, Postgres, Redis and Heroku.
The site was localized and launched in Hong Kong (https://www.zookal.com.hk/) and Australia (http://digital.zookal.com/)
Zookal is a video platform will allow university students throughout Asia to share knowledge and discover the supplementary educational resources they need to learn faster and be more successful.
- Zookal iOS App (Development)https://itunes.apple.com/au/app/zookal-philippines-school/id1140369065?mt=8
Zookal iOS app is a native iOS app developed in Swift from ground up to allow students to practice multiple choice questions of various exams. I also built the back-end for this app using Ruby on Rails.
The app is #2 in the Philippines in the Education category and #101 overall in the iTunes Store as of Sept 7, 2016 (https://www.appannie.com/apps/ios/app/zookal-philippines-school/app-ranking/#device=iphone&type=best-ranks).
Zookal's free test preparation app provides primary, high school, college, university, and licensure students with thousands of questions and quizzes for school, college, and licensure entrance tests and exams.
FrameworksRuby on Rails (RoR), Selenium, Redux, Yii, AngularJS
Libraries/APIsReact, Sidekiq, Backbone.js
ParadigmsAgile Software Development, Test-driven Development (TDD)
PlatformsDocker, Heroku, Amazon Web Services (AWS), iOS, WordPress, Magento
StoragePostgreSQL, MySQL, Elasticsearch, Redis, Memcached, MongoDB
- Bachelor of Computing (First Class Honours) in Computer Science2005 - 2009National University of Singapore - Singapore