Senior Ethereum | Solidity | React | Web3 Developer2020 - 2021YFL
- Built the YFLink governance website and the Solidity-written YFL (ERC20 token) powered meme app in React where users can stake ETH to vote to a meme to get rewarded after winning.
- Leveraged my Web3 experience to build a wrapper on top of the website. Also integrated the React front-end apps into the blockchain network to interact with the YFL ER20 token via this wrapper.
- Leveraged the Etherscan and Infura API to pull blockchain info, including transactions for a governance address between two blocks.
Senior React Native | Blockchain/IPFS Developer2019 - 2020OpenBazaar
- Developed a React Native app that enables shopping and selling privately based on Blockchain and IPFS.
- Worked on the Solidity-based smart contract development of the OpenBazaar project.
- Led the team of three React Native engineers and oversaw the development process as a primary point of contact between the back-end and front-end teams.
- Tracked and fixed bugs using GitHub as a reporting tool.
Senior React | Node.js Developer2018 - 2020J Capital Research
Technologies: React, Node.js, Redux, Next.js
- Investigated how to scrape sales data from Tmall's website. Implemented a Node.js-based Tmall data scraper.
- Investigated the open Taobao platform API to integrate into the Node.js back end.
- Wrote a proof of concept to propose the development of the Open Taobao API.
Freelance Lead React | .NET Developer2018 - 2018Urbanite (via Toptal)
Technologies: React Router, CSS3, PostgreSQL, AWS S3, GraphQL, Redux, React, Next.js, .NET
- Built a .NET back end for a house booking website from scratch.
- Built the basic structure of the React and Redux front end from scratch using best practices and the most up-to-date technologies and libraries.
- Created a CMS website in which admin users can manage listings, bookings, and customers.
- Worked on the design and CSS implementation for the front-end website.
- Built a GraphQL server and used React Apollo as a client for data queries.
- Led a team of two engineers to build the front end, back end, and CMS.
- Built React chart components using D3 to show transactions by time.
React | React Native | Node.js Developer2016 - 2018Zilly, Inc. (via Toptal)
Technologies: Objective-C, SendBird, AWS S3, Elasticsearch, AWS EC2, MongoDB, GraphQL, Express.js, Node.js, React Native, Apollo, React Apollo, iOS, Android, Java, Flutter
- Developed a bunch of new components to improve the UI built with React Native.
- Wrote a Node.js parser to import malformed CSV and JSON data into MongoDB on EC2.
- Created and managed Amazon Elasticsearch, generated and uploaded index data to Amazon ES, and consumed the ES service from iOS for real estate property search.
- Improved the performance of the import script to be 10x faster by overcoming the demerit of Node.js single threading using a clustering technique.
- Refactored the code structure for a legacy piece of buggy code and upgraded some of the legacy Objective-C code to React Native.
- Built a GraphQL server and used an iOS Apollo client for data query.
Freelance Node.js Developer2016 - 2016Friender, LLC (via Toptal)
Technologies: Amazon Web Services (AWS), Amazon, AWS, SQLite, Elasticsearch, CircleCI, Node.js
- Developed a Node.js-based back end from scratch along with an algorithm to optimize the search friend query performance in dating apps.
- Wrote unit and integration testing for back-end API endpoints using Jest.
- Managed the web hosting on an instance of AWS EC2.
- Set up the CI/CD pipeline of the back end using CircleCI.
Contract React Native | Node.js Developer2015 - 2016RealPage
- Built a custom library for persisting data to a local SQLite DB using Core Data. Built a native module that bridges this custom library into React Native.
- Created over ten reusable components and controls including a calendar schedule viewer, custom datepicker, custom ActionSheet, and reorderable listview. Built native components that wrap these custom components for the React Native app.
- Created a unit testing and regression testing environment to improve the quality of the app. Significantly improved performance and fixed memory leakage using Xcode Instruments.
- Introduced a synchronization algorithm that makes the app work on offline mode and sync later when the device gets an internet connection.
- Worked on a Node.js-based back end to build new endpoints for new features on an ongoing basis.
React Native | Node.js Developer | Co-founder2013 - 2015FeedMe Guru
- Developed an app from scratch for a startup founded by Harvard graduates based in Hong Kong.
- Created a React Native mobile app that lists all restaurants within the user's location for given cuisines and categories using geolocation. Used GooglePlaces API and GoogleMap SDK for locating restaurants near users.
- Integrated a crash tracking framework into a React Native app and wrote unit testing code to make sure the app calls the RESTful APIs in an optimized and safe way.
- Implemented a Node.js-based back end for the mobile front end. Added RESTful endpoints for CRUD and searching restaurants based on the user location, cuisine, categories, and more.
- Led a team of six front- and back-end engineers and managed the code review process for code quality improvement.
iOS | Android | .NET Lead Developer2009 - 2013NQ Mobile
- Won a prize at a coding competition held in Beijing and was scouted by NQ Mobile as a part-time developer.
- Worked as a back-end developer using .NET. Developed a .NET based scraping framework to a data model for a big mobile project. Implemented a feature to convert user notes to PDF and image files. Deployed the app to an Amazon EC2 instance.
- Used Bluetooth Low Energy and iBeacon technology to identify devices around the user. Accumulated experiences in consuming several third-party APIs such as Yelp, Foursquare, GooglePlaces, TripAdvisor, and more.
- Led, mentored, trained a team of seven engineers. Run scrum cadence for daily meetings and product meetings.