Information

Andrew Chang
oahehc@gmail.com | chehao@ntu.edu.tw
https://github.com/oahehc
https://tw.linkedin.com/in/oahehc
https://medium.com/@oahehc
https://dev.to/oahehc
https://stackoverflow.com/users/6337192/oahehc
Skill
Front-End: Typescript, React/Next, Vue/Nuxt, Svelte/SvelteKit, AMP, Tailwind/Styled-component/SASS, ...
Test: Jest, Testing-library, Vitest, PlayWright, Cypress, NightWatch, Enzyme, eslint, ...
Tools: TurboRepo/Lerna, Webpack/Vite/Rollup/Parcel, Yarn/NPM/PNPM, storybook, ...
Services: CircelCI/GitHub Action, AWS/GCP, Firebase, Vercel, Sentry, Datadog, LineBot, ...
Language: Mandarin(native), English(TOEIC 830), Japanese(N2)

Overview

  • +6 years of experience as a frontend developer. (became a team leader within 2 years)
  • +6 years of experience as a project manager. (became a team leader within 2 years)
  • Proven engineer & PM. (ranked first in annual assessments both as a PM and a developer)
  • Has a deep understanding of modern web technologies.
  • Familiar with the testing tools & frameworks. (Jest, Testing-Library, Vitest, Playwright, Cypress, ...).
  • Take responsibility for the outcome and never blame others when results fall short. My focus is on what I can do to ensure we reach our goals.
  • Fast learner, able to quickly acquire the necessary skills and make meaningful contributions to the company.
  • Has good leadership skills, who is dedicated to creating a positive work environment for their team, is transparent, and ensures all team members have opportunities to improve their skills.
  • Team player, enjoys collaborating with others, and open-minded to different opinions.

Work Experience

SmartNewsTech Lead / Software engineer2020/10~now (4.7 years)
https://www.smartnews.com/ja/
  • Built the web applications such as US election 2020, local coupon map, COVID-19 visualization, COVID-19 Vaccine tracker, Japan weather forecast page, SmartNews feature instruction page, Ads management console, etc.
  • Implemented vaccine alarm/map project within one week, reached 1M unique users in first week and 5M users in 3 months.
  • Migrated a few projects from Javascript to Typescript.
  • Worked as a tech lead in a few projects, responsible for tasks such as reviewing specifications, designing the architecture, and managing the schedule.
  • Improved the CI/CD workflow in order to make it easier for multiple teams to contribute to the project.
  • Built an internal tool that makes it easier to generate deeplinks.
  • Improved the code coverage rate.
  • Hosted a few internal sharing sessions and created multiple documents for knowledge sharing.
  • Added code generation script to a few projects, which made it easier to create new features.
  • SmartNews 2021 Hackathon winner
AnueFront-End Team Leader2018/8~2020/9 (2.2 years)
https://www.cnyes.com/
  • Manage over 10 projects, in charge of the new version release and deal with the production issues
  • Use puppeteer to create automatic tools, simplify the deploy process
  • Recruit and mentor team members (5 members)
  • Implement PR review to enhance the code quality
  • Co-work with devOps to implement the GitLab CI/CD process
  • Implement image compression and code splitting to reduce the CDN cost
  • Develop AMP news channel, enhance SEO and mobile UX
  • Finish online course platform within 2 months
  • Create auto screenshot tool by using AWS lambda and puppeteer, dynamically generate og:image to optimize the social media sharing feature
  • Stock, forex, index data integration and virtualization: HightChart, TradingView, custom SVG chart
  • Social media platform for investor
  • Using webview to implement register, login, and checkout process in native app
  • Develop the subscription system and integrate 3rd party payment service
  • Refactor the old website from .NET to Next.js and improve the maintainability
  • Apply webpack code splitting to optimize the CDN cache and reduce the infra cost
PebblarSenior Front-End Developer2018/4~2018/7 (4 months)
https://pebblar.com/
  • Travel Planning Application:refactor from jQuery to React.js
  • implement unit test
  • implement WebSocket and Firebase
  • using Redux-Saga to implement background data synchronize mechanism to enhance UX
DeepbluSenior Front-End Developer2017/11~2018/3 (5 months)
https://www.deepblu.com/discover/live
  • Social Platform: finish instant message and itinerary booking system within 2 months
  • Online Shop: co-work with designer, redesign the website for our new watch
  • implement i18n (internationalisation)
  • Maintain internal SCM system
Flow INC.Front-End Developer & ERP Consultant2016/6~2017/10 (1.4 years)
http://www.flow.tw/
  • Human Resource System
  • implement Vue.js and e2e test
  • Cloud ERP system
  • Data virtualization
ASUSTek COMPUTER INC.Senior Project Manager2009/12~2016/5 (6.5 years)
https://www.asus.com/tw/
ERP System Transition
  • Design System Flow
  • Internal training
  • Process improve
Supply Chain Management
  • Inventory analysis and control
  • Manufacture and delivery control
  • Cost management
  • Market trend research
Team Leader / Internal Instructor
  • Employee recruit
  • New comer training
Taiwan ArmySecond Lieutenant2008/10~2009/9 (12 months)

Education

UiGathering & Trend Education FoundationUser Experience Fundamentals2017/4~2017/7 (4 months)
National Taiwan UniversityMBA, master degree2006/9~2008/6
National Taiwan UniversityMath, bachelor degree2002/9~2006/6
Coursera, Udemy, Udacity, EggheadOnline Course
  • Advance React Design Pattern, Kent C. Dodds
  • Testing Javascript, Kent C. Dodds
  • Machine Learning / MLDS course - Hung-yi Lee, NTU
  • Deep Learning by Google - Take machine learning to the next level
  • Create a Web Experience, University Of London
  • Algorithmic Thinking, Rice University
  • Game Development for Modern Platforms, MSU
  • Build Software Applications, Duke
  • Build Complete Web Solutions, HKUST
  • Make Compelling Design, CalArts
  • Web Application Development, UNM

Portfolio

Japanese Learn Tool
Japanese learning tool and blog for sharing Japanese learning tips
https://jb.oahehc.com/
IG post generator
Tool to generate IG post for Japanese, English, and Chinese learner
https://ig-post-generator.vercel.app/preview/1
https://ig-post-generator.vercel.app/list
Compare the syntax of React and Vue side by side
Make it easier to find the syntax for another framework
https://github.com/oahehc/react-vue-comparison
openinghour-shorten
An npm package to format google map opening information to human readable string
https://github.com/oahehc/openinghour-shorten
NPM iconhttps://www.npmjs.com/package/openinghour-shorten
Online MusicBook
Online music sheet with auto play function to practice musical instrument and collect your practice time
https://music-sheet-20e93.firebaseapp.com
Basketball Club LineBot
Used line message to collect the games information for our basketball club
https://linebot-calendar-gb6a3v6pwq-an.a.run.app/amp
Linebot for lottery
Auto collect lottery information and sent message by linebot
https://github.com/oahehc/linebot-lottery
AWS Serverless structure
An basic sign up/sign in application apply AWS serverless
https://github.com/oahehc/AWS-serverless
Deep learning model
different types of deep learning model implement by Tensorflow: DNN, CNN, RNN, GAN, DCGAN, Autoencoder...
https://github.com/oahehc/tensorflow_example
Personal Resume
personal resume
https://github.com/oahehc/resume