Daniel Zheng, Software Developer in Kuala Lumpur Federal Territory of Kuala Lumpur, Malaysia
Daniel Zheng

Software Developer in Kuala Lumpur Federal Territory of Kuala Lumpur, Malaysia

Member since September 7, 2017
Daniel is a professional full-stack JavaScript developer with three years of experience in building rich web and mobile applications using React/React Native. His unique professional experience stems from years of providing excellent customer support, creative problem solving, and building customer loyalty.
Daniel is now available for hire

Portfolio

Experience

  • JavaScript, 8 years
  • Agile Software Development, 6 years
  • Node.js, 6 years
  • Express.js, 6 years
  • React, 5 years
  • Redux, 5 years
  • ECMAScript (ES6), 5 years
  • React Native, 5 years

Location

Kuala Lumpur Federal Territory of Kuala Lumpur, Malaysia

Availability

Part-time

Preferred Environment

iMac, iPhone 6, iPhone 7+, Nexus OSX, Ubuntu

The most amazing...

...work I've done in my career was the implementation of various kinds of complex business models and logics into web and mobile applications.

Employment

  • Senior React Native Developer

    2018 - PRESENT
    OB1 (via Toptal)
    • Built the basic structure of a React Native application.
    • Introduced Redux-saga to the project.
    • Used various methods to reduce the memory leakage and CPU loads for a better performance.
    Technologies: React, React Native, Redux, Redux-saga, Decentralized Networking
  • React Developer

    2018 - 2019
    Boatyard
    • Developed the front-end with React for this client.
    • Worked on both the web and mobile application for this project.
    • Built a basic UI kitchen sink for the mobile application.
    • Developed a web dashboard.
    • Set up the rules and standards for file structures, coding styles for both the web and mobile codebase.
    Technologies: React Native, React, JavaScript, Redux, Redux-saga, React Navigation, Reselect, Webpack
  • React Native Front-end Developer

    2018 - 2018
    ECOMI/ORBIS Blockchain Technologies, Ltd.
    • Developed a mobile application.
    • Built the UI/UX based on the provided design.
    • Introduced unit and E2E tests for the project.
    • Set up basics and standards for the project.
    Technologies: React, React Native, Redux, Redux-saga, Jest, Mocha, Enzyme, Detox, Unit Test, End-to-End Test
  • React Developer

    2018 - 2018
    IOV: Internet of Values
    • Established the standards and rules for development flow, methods, and coding styles.
    • Built the app's pixel-perfect UI/UX based on the provided designs.
    • Introduce unit testing for better integration and to keep the codebase robust.
    • Introduced new technologies and libraries to the project.
    Technologies: TypeScript, React, Redux, Redux-Thunk, Unit Test, Jest, Mocha, Enzyme
  • React Native Developer

    2018 - 2018
    Outlit (via Toptal)
    • Refactored the existing project structure to the most appropriate one.
    • Built the front-end's UI for a mobile application using React Native.
    • Developed the back-end using Google Firebase Cloud Firestore and Cloud functions.
    Technologies: React, React Native, Redux, Redux-saga, Google Firebase
  • Senior React Native Developer

    2017 - 2017
    Gelato (via Toptal)
    • Developed the front-end of a React Native app.
    • Integrated various libraries and components to the projects. Firebase, Fabric, Facebook SDK, and Google Plus SDK for login.
    Technologies: JavaScript, React, React Native, Redux, Redux-saga
  • Full-stack JavaScript Developer

    2015 - 2017
    Davex Consulting
    • Built the back-end of a REST API using Node.js, Express.js, and MongoDB.
    • Developed the back-end of a REST API using other databases, languages, and frameworks like Python (Django, Flask), PHP (Laravel/Lumen), and Ruby on Rails with PostgreSQL and MySQL.
    • Created the UI/UX and front-end of a responsive web application using React (with Redux), AngularJS (1,2, and 4), Ember.js, Vue.js (1 and 2) as well as jQuery.
    • Built a mobile application using React Native.
    • Managed the assets and implemented ESLint, React decorators, and other necessary plugins to improve the development procedure and final products; used Webpack.
    • Built unit test and E2E tests for React components and reducers; used Mocha, Should.js, Jest, and Enzyme.
    Technologies: JavaScript, Node.js, Express.js, React, React Native, AngularJS, Ember.js, Vue.js, GoLang, Python (Django), PHP (Laravel/Lumen), Ruby on Rails
  • Remote Developer

    2016 - 2016
    HKTV Mall
    • Built the front-end's user interface and user experience using React, Redux, Sass. Used Webpack to build the sources and implemented live and hot reloading features for easy development.
    • Implemented a Reducer and Redux Store with decorators, Redux Thunk, Redux-saga, Reselect, and Immutable.js.
    • Developed an Android mobile application using React Native and deploy it to Google PlayStore.
    • Integrated front-end using GraphQL.
    • Built the back-end with Ruby on Rails.
    Technologies: React, Redux, Redux Thunk, Redux-saga, Reselect, Immutable.js, GraphQL
  • Web Developer Intern

    2014 - 2015
    Multiply
    • Built the front-end and UI/UX mockups using HTML5 and CSS3.
    • Integrated the front-end and UI/UX with the back-end API.
    • Created the back-end of a REST API using Node.js (Express.js), Python (Django/Flask), and PHP (Laravel/Lumen).
    • Designed and built the back-end database using MongoDB, MySQL, and PostgreSQL.
    Technologies: JavaScript, PHP, WordPress, Laravel, Node.js, Express.js, AngularJS, React, Redux, Redux-Thunk, Python, Django, MongoDB, MySQL, PostgreSQL

Experience

  • Lead Front-end React Development for HKTVmall (Development)
    http://www.hktvmall.com/

    HKTVmall is part of the HKTV Network.
    As a front-end developer, I built some part of the shop's front-end using React and Redux.

    At first, I had to build the basic redux structure from the scratch. I then implemented Redux-Saga to improve the action dispatcher side and Immutable.js to prevent state mutation. Then I used Reselect to make it easy to get data from the Redux store as well as other teammates can easily work on the existing system.

    On this project, I worked as a lead front-end React developer.
    I learned how to choose the most appropriate technologies and the structure of the system. Later these experiences helped me a lot in other projects.

  • HKTVmall Android Mobile Application (Development)
    https://play.google.com/store/apps/details?id=com.hktv.android.hktvmall&hl=en

    After two months of working with HKTVmall, I took part in developing the Android mobile application using React Native.

    The back-end was already built so what left was building the mobile front-end using React Native.

    I already built a very well-structured and well-working reducer, Redux store, and action dispatcher structure for the web application so I didn't spend much time on building the Redux structure for the React Native applications. Just a few customization and the Redux part of the application was ready for the integration.

    First, I started this project using Expo.io, but there were some difficulties in integrating the React Native extensions and packages so I have detached the app from the Expo.io.

    After two months, I finished the Android mobile application.

  • Keyo | React Native Mobile App (Development)

    I built the mobile front-end for both Android and iOS using React Native. I used React Native with Redux, NativeBase, and FCM to build a mobile application. It is also integrated with the Stripe API and Plaid API.

    This mobile application is for Keyo Plam payment system.
    You can easily use Keyo to pay, just put your palm on a Keyo terminal.

    For this, the user must link their bank account, and credit cards to their Keyo.co account.

    This project was to build a mobile application which allows the users to easily link their various payment methods on their phone.

    To implement this, I integrated the application with Card.io so that users can easily register their credit or debit card using their camera on the phone.

    To link the bank account and credit card, I integrated Stripe API as well as Plaid API to allow ACH payment integration.

    On this project, I have acquired solid experiences about Stripe and Plaid API.

Skills

  • Languages

    Less, CSS3, TypeScript 2, TypeScript, HTML5, Sass, ECMAScript (ES6), PHP 7, JavaScript, Python, Ruby
  • Frameworks

    React Native, Jest, Express.js, Redux, Ruby on Rails (RoR), Angular, Flutter, Lumen, Laravel 5
  • Libraries/APIs

    WordPress REST API, Redux Form, Shopify API, Redux-saga, React, Node.js
  • Tools

    Redux Thunk, Mocha, Flutter SDK
  • Paradigms

    Agile Software Development, Continuous Deployment, Concurrent Programming, Functional Programming
  • Platforms

    WordPress, Shopify, MacOS, iOS, Android
  • Storage

    MySQL, MongoDB, PostgreSQL
  • Other

    Enzyme, WordPress Themes, PSD to Shopify, MBaaS

Education

  • Master of Science degree in Computer Science and Applications
    2009 - 2013
    University of Malaysia, Faculty of Computer Science and Information Technology - Kuala Lumpur, Malaysia

To view more profiles

Join Toptal
I really like this profile
Share it with others