Chen-Yu Wang

Taiwan

@smugen

Senior Software Engineer | Node.js | TypeScript | JavaScript | Backend | Web Developer | Python

Badges

Problem Solving
Python
Days of Code
Days of JS

Certifications

Work Experience

  • Senior Software Engineer

    Phase.com•  June 2022 - September 2022

    - Maintain backend API with bug fixes - Design backend microservices decoupling proposal - Join the TDD workshops and pair-programming

  • Technical Consultant and Senior Backend Engineer

    alpha pulse•  March 2022 - May 2022

    This is a freelancing short-term job to help my former director at "K-Jump Health". His startup "alpha pulse" is landing a medical information system onto the data center inside a hospital. Provide implementation details to make project delivery on site, mainly Docker-ization and some microservice approaches. Introduce GraphQL stack for API development and provide workable PoC. https://apulse.ai

  • Senior Software Engineer

    Advantech•  August 2018 - March 2022

    ## In the beginning, I participated in an existing project with about 60% of maturity to be a product ready for sale. **Refactor and Enhance** : 1. Production-ready delivery, microservices Docker-ization, make the whole system bundled installation to edge computer. Run as OS daemon service (start after boot, restart after exit) 2. Refactor the flow of receiving IoT sensor data input. Reducing data that poll from and moving between databases. Discarding unnecessary input to reduce storage consumption, and implementing old record auto-deletion. 3. Add a RESTful API layer to provide an endpoint for external system interaction. Use the front-end/back-end separated approach to implement a configurational portal, which invokes the same APIs described before. 4. The implementation of the API uses ORMs to manage queries to databases, and adapted Swagger to provide interactive API documentation. ## After about 2 years on the team, the product along with the whole team reorganized to product BU, and a new director came as our head, he applied for a considerable raise for me from the VP with a new challenging role to me. **Revamp** the whole architecture to support the **evolving product business model** : 1. Re-design the system architecture and re-write the whole codebase, including the features from previous generation products. Product manager illustrates the feature module requirements, and I planned out the microservices layout. 2. Choosing the suitable database(s) software combination according to technical requirements. Using MongoDB to store customer configuration, InfluxDB to store sensor raw data, and Redis as cache and lightweight queue. 3. Introduce TypeScript in both front-end and back-end development, and GraphQL for API. Make both codebase and API mostly strong-typed, better increasing the consistency and explicitly for teamwork. 4. Implement API Gateway and Service Register / Discover mechanism to support the "Addon Apps" business model.

  • Senior Software Engineer

    TPE48 Entertainment•  December 2017 - June 2018

    - Official website with news article posting functionality - Basic member area where customers can sign-up, log-in and fill there profiles - Common sub-domain cookie based SSO The projects above written in JavaScript / Node.js, built and deployed on GCP consist of the services below : Google App Engine, MongoDB Atlas, Firebase Hosting with Cloud Functions for Firebase, Google Cloud Datastore

  • Web Developer and Software Engineer

    K-JUMP HEALTH CO.,LTD•  October 2013 - December 2017

    https://oucare.com/ Using JavaScript and Web related technology mainly, and choose Node.js as backend runtime. • First, as an one man team: - Design API interface (RESTful HTTP API, first in XML format and then JSON afterward). - Develop API backend for mobile APP (customer registration service). - Develop API backend for both browser frontend and mobile APP (a service has two type user interfaces). - Develop Web frontend user interface, using Bootstrap, jQuery and AngularJS 1. - Database choice ranging from single JSON file, SQLite, CouchDB and finally MongoDB. - Write simple API documentation. - Maintain (Objective-C) and developing (Swift) iOS APP in a period of time. • Then, as a three men team leader: - Transfer most of frontend development workload to new colleague. - Coaching new team member who has no experience in Web technology and network. - Requirement analysis and system architecture design. - Evaluate new tools (platform, framework, library, cloud service) to accomplish system architecture as building blocks. - Code review and pair programming with team members. - Arranging coding style, design patterns and project architecture which belong to this team. - Develop desktop application using web technology. (platform: Electron a.k.a. Atom Shell from GitHub) - Develop libraries for teammates using in projects. - Third party services/APIs integration. (e.g. AWS, PayPal, SMS gateway, LINE messenger...) - Planning deployment strategy of server system.

  • MIS

    E-TNI•  January 2009 - January 2010

    - ERP system (Taipei office hosted, users are from both Taipei and factory in China) maintenance. - ERP tools/plugins/addons development (e.g. Web based BOM table importer, from xls file to SQL db table). - VPN and VoIP connection (between office and factory) maintenance. - Network maintenance. - IT equipments maintenance.

Education

  • National Taipei University of Education

    Computer Science, BS•  September 2010 - December 2013

Skills

smugen has not updated skills details yet.