Jack Cheng  

A frontend engineer with full passion of all new skills / tools / concepts of development. Got everything I have now from all resources, mostly internet, by myself. Looking forward to challenges and any possibilities leading myself to software developing master.

[email protected]
Taipei, Taiwan



  • HTML5
  • Javascript ES5/ES6
  • Typescript
  • Elixir
  • Unit test
  • CSS3
  • SASS/SCSS/CSS module
  • Flow type
  • WebSocket
  • XMPP
  • End to end test


  • Grunt
  • Gulp
  • Webpack


  • jQuery and plugins
  • Redux
  • Redux-Observable
  • D3.js experienced
  • Jasmine / Jest / Enzyme
  • Storybook
  • Testcafe / Puppeteer
  • Raven
  • Formik
  • Styled Component


  • AngularJS 
  • AngularJS 2 
  • AngularJS 4 
  • ReactJS  
  • NextJS experienced
  • Phoenix experienced


  • GraphQL / Apollo

Other related

  • PHP / MySQL experienced 
  • NodeJS / Express/ Koa2 / MongoDB experienced 
  • Golang / Redis experienced 
  • Git / sourcetree 
  • Jenkins / CircleCI / Gitlab-CI 
  • Docker 
  • Jira / Trello 
  • Slack / Hipchat 
  • i18n 
  • Paypal integration 
  • Google Analytics 
  • Sentry / Rollbar


Chinese: native 

English: native
Fukienese: fluent



Frontend Developer of Appier, Jan 2020 - Present

Platform for marketing automation: campaign managing. 

Working on AIQUA and our web SDK for in-web campaign delivering and data collecting. Refactor legacy code while developing new features such as intelligent campaign configuration UI and campaign experiment as known as AB testing. Owning cookie solution against browser restriction including ITP2.3. Introduced end to end testing and played the role of code quality keeper assisting team to write more valid test cases in shorter time. Test cases grew from 386 to 1865 ( 383% ) and test coverage went from 14% to 44%. 

Major feature developed: Theme system / AB testing for campaign experiment / campaign live preview / campaign creative template management  

Key Stack : React / Redux / Formik / Styled Component

Fullstack Developer of Grindr, April 2019 - Dec 2019

Platform for gay community. 

Built Grindr web client since early stage to beta. Dealt with webSocket and main component architecture. Have done refactors reducing main bundle size and loading time to 40%. Started learning Elixir/Phoenix and solved major connection issues of the socket server within 5 weeks. Did code reviews for the team and coached interns. Introduced unit tests and end to end tests.

Worked with international team in LA with both frontend and backend projects and their comments to me are listed on my . As well I worked closely with iOS and android teams, having working on web/mobile/backend log cross-check for debugging.

Key Stack : React / Redux / webSocket /Elixir / Phoenix

Frontend Developing Leader of Balvenie, May 2018 - March 2019

Platforms for lottery / sport lottery. 

Signed up for building and leading the frontend team in Taipei satellite office, working closely with PM, backend teams, and other frontend teams in Kuala Lumpur HQ. My team built lottery app from scratch and is going to take over and re-build the jQuery based home page in react/redux. 

I introduced frontend unit testing and strictly asked my team to reach certain coverage. As the major revision went live, only 3 among the 54 issues raised in the launch day are related to my project and only 1 of which was of our responsibility.

In addition to team leading I introduced CI/CD implemented with Gitlab-CI , Jira as issue tracking / repository managing, Sentry as progressive runtime error tracking, Google Analytics and lately TestCafe as e2e test tool.

I just finished the preparation of migrating from rest api to graphQL by setting up a middleware adapting both.

Key Stack : React / Redux / Redux-observable

Head of Software Development of CubeXus, Jul 2017 - Nov 2017(Season Contract)

An IOT integrating platform with Scratch and social networking 

Built above with ScratchX and social publishing. Finished the milestone with gathering a web developing team and making sure they work fine with the first version.

Key Stack: React / Redux

Senior Frontend Engineer of Sarbeer, May 2016 - July 2017

A platform for sports betting associating Bet365 and Pinnacle

Built  a sports betting site from scratch as the only frontend engineer for the first half year and later assisted by another frontend team fellow. Starting with Angular1 and Gulp and replaced by Angular2/4 and webpack embedded in Angular-CLI. Supported by Rails backend API and Golang/Redis as backend workers which I am currently participating.

Dealt with real time websocket data refreshing, account/order validation, SPA render optimization and such.

Key Stack: Angular1 / Angular 2 / Golang / Redis 

Extra-Side Projects

A PWA collecting posts of used Nintendo Switch Game sales
Stacks involved:

  • puppeteer as crawler
  • node.js and koa2 as backend
  • mySQL as database
  • react with create-react-app2 as frontend with PWA
Powered By CakeResume