CakeResume Talent Search

上級
On
4〜6年
6〜10年
10〜15年
15年以上
Avatar of the user.
Avatar of the user.
Senior Software Developer @CLÉ
2023 ~ 現在
Senior Software Developer / Tech lead
3ヶ月以内
PHP
Laravel
MySQL
就職中
面接の用意ができています
フルタイム / リモートワークのみ
4〜6年
Federal University Oye-Ekiti, Ekiti State, Nigeria
Bachelor of Science : Computer
Avatar of 邱瀚平.
Avatar of 邱瀚平.
Senior software engineer @Delta Electronics (台達電子)
2021 ~ 現在
資深軟體工程師
1ヶ月以内
邱瀚平 Senior Software Developer Taipei City, Taiwan 您好,我是Hanping Chiu,已有8年前後端的開發經驗,近期以 Angular12+ 專門做前端專案開發。 目前任職於Delta Electronics,期間參與多個物聯網、能源管理、充電裝管理專案,有豐富的實務經驗。 在過去的工作經驗中,展現了良好的溝通能力和解決問題
PLSQL
MSSQL
Oracle Database
就職中
面接の用意ができています
フルタイム / リモートワークに興味あり
6〜10年
國立聯合大學 National United University
資訊管理
Avatar of Mathieu L.
Avatar of Mathieu L.
Lead Senior Full-stack Engineer @SNCF
2021 ~ 現在
Senior Software Developer / Tech lead
2ヶ月以内
Mathieu L Je suis un développeur Fullstack passionné par React et Node.js. Fort de mon expérience, je crée des applications web de A à Z, en veillant à ce que chaque interaction soit fluide et chaque fonctionnalité, robuste. J'aime transformer les idées en réalités numériques performantes et m'adapte facilement à de nouveaux défis. Pour moi, l'innovation et l'apprentissage continu ne sont pas juste des mots à la mode, mais un mode de vie professionnel. Paris, France Work Experience Senior Full-stack Engineer • SQUIREL / SNCF janvierAujourd'hui Pilotage du développement
React.js
NodeJS
Management Team
Reputation Credits1
就職中
面接の用意ができています
フルタイム / リモートワークに興味なし
6〜10年
HETIC - Hautes études des technologies de l'information et de la communication
Development
Avatar of Hongyi Luo.
Avatar of Hongyi Luo.
senior software engineer/ tenical pm @CYTENA BPS
2021 ~ 現在
後端工程師
1ヶ月以内
Hongyi Luo | Software engineer Email [email protected] Experience Senior Software developer • Cytena-bps Biological microfluidic monitoring system Led the development of a biological microfluidic monitoring system that enables real-time monitoring and analysis of biological samples, significantly improving experimental efficiency. Utilized and refactor systems using React to enhance component reusability. Integrated TypeScript to improve static type checking and auto-completion capabilities. Serve as a technical project manager, coordinating and managing the project progress of firmware and software engineers to ensure the achievement of team milestones. SepNow Software Engineer • 澄電科技 Restaurant
MySQL
Microservices
MongoDB
就職中
面接の用意ができています
フルタイム / リモートワークに興味あり
6〜10年
國立台灣大學 (National Taiwan University, NTU)
Electronic engineering
Avatar of Shan Xi, Liao.
Avatar of Shan Xi, Liao.
Past
Senior Backend Engineer @瑪黑家居選物股份有限公司
2023 ~ 現在
Software Engineer / Backend Engineer
1ヶ月以内
</> Shan Xi, Liao A software engineer who has been working on web-based applications for many years enjoys learning new things. Skills: - Java, Spring Framework, Maven. - Python, Flask, Celery, Gunicorn. - Golang. (Limited work experience) - Node.js. ( Limited work experience) - HTML, CSS, JS, Bootstrap. - Git, Linux, Azure DevOps, Docker. - Oracle, Redis, MongoDB. Taipei City, Taiwan MyWebsite / MyPortfolios Work Experience SeptemberJune 2022 Software Engineer (Java, Python) 國泰金控 Cathay Financial Holdings 【Job description】 Backend APIs development using Java for MyRewards App - Major services developed by me: E-Invoice
Java
Python
Golang
無職
面接の用意ができています
フルタイム / リモートワークに興味あり
6〜10年
國立東華大學 | National Dong Hwa University
Global Logistics Management
Avatar of Devraj Kumar.
Avatar of Devraj Kumar.
Staff Engineer @NextGen Healthcare India
2019 ~ 現在
Senior Software Developer
3ヶ月以内
. • Committed to continuous learning to remain at the forefront of technology advancements. Senior Software Engineer • CBSI INDIA PVT LTD MayFebruary 2018 • Spearheaded development on Project HP Eclipse utilizing HP ALM, DevExpress, ASP.Net, API, and SQL to enhance automation and integration capabilities. • Delivered high-quality, efficient software solutions by adeptly employing a broad range of tools and frameworks, showcasing expertise in software engineering and project execution. Software Engineer • KPIT Technologies Ltd MayApril 2016 • Spearheaded the enhancement of the CoDeg tool by leveraging technologies such as LaTeX, MKS, Total Commander, SQL, and C#. • Instrumental
C#.NET development
PL/SQL
LINQ
就職中
面接の用意ができています
フルタイム / リモートワークに興味あり
10〜15年
North Maharastra University, Jalgaon, Maharastra
Computer Science & Engineering
Avatar of Manjeet Singh.
Avatar of Manjeet Singh.
Mern Stack Developer @H-Card
2019 ~ 2019
Senior Software Developer
3ヶ月以内
Manjeet Singh Full stack developer Passionate full-stack developer with 5 years of experience crafting robust and scalable web applications. Proficient in both front-end and back-end technologies, I thrive on creating seamless user experiences and solving complex technical challenges. Bengaluru, Karnataka, India [email protected]://github.com/mercenarycoder https://www.linkedin.com/in/manjeet-singh/ Work Experience AprilPresent Bengaluru, Karnataka Software Development Engineer 3 Walmart Global Tech India Led the design and implementation of presentation and business logic for multiple high-traffic software
就職中
就職希望
フルタイム / リモートワークに興味あり
4〜6年
oriental college of technology
Computer Science
Avatar of lai chao chyi.
Avatar of lai chao chyi.
Azure Support Engineer @Microsoft
2023 ~ 現在
程式設計, AI
1ヶ月以内
lai chao chyi Senior Software Developer, Extensive experience in Android app development, Experience in independently developing apps with Vue.js Currently working at Microsoft as a Support Engineer, primarily responsible for the product Azure OpenAI. 台灣新北市 Work Experience Azure Support Engineer • Microsoft Product: Azure (OpenAI & IoT) Content: - Application and technological research of Azure services - Architecture & solution recommendations - OpenAI prompt engineering Rectified critical issue for client utilizing Azure OpenAI and IoT Services, resulting in notable improvements in performance and heightened customer satisfaction. Collaborated extensively across multiple departments(billing, network service, APIM) Promoting a customer
App Development
Windows
Android
就職中
就職希望
フルタイム / リモートワークに興味あり
6〜10年
國立中正大學
資訊工程學系
Avatar of the user.
Avatar of the user.
Software developer @RTLawrence Co.
2021 ~ 現在
Senior Software Engineer
2ヶ月以内
C#.NET development
MVC Architecture
WebAPI
就職中
就職希望
フルタイム / リモートワークに興味あり
10〜15年
國立雲林科技大學
資訊管理
Avatar of the user.
Avatar of the user.
Software Engineer @HealthCare.com
2022 ~ 2023
Senior Software Developer
2ヶ月以内
c# .net
Services Development
PHP CodeIgniter
就職中
フルタイム / リモートワークに興味あり
6〜10年
Udemy Alumni

最も簡単で効果的な採用プラン

80万枚以上の履歴書を検索して、率先して求人応募者と連絡をとって採用効率を高めましょう。何百もの企業に選ばれています。

  • 検索結果をすべて閲覧
  • 新しい会話を無制限に始められます
  • 有料企業にのみ履歴書を公開
  • ユーザーのメールアドレスと電話番号を確認
検索のコツ
1
Search a precise keyword combination
senior backend php
If the number of the search result is not enough, you can remove the less important keywords
2
Use quotes to search for an exact phrase
"business development"
3
Use the minus sign to eliminate results containing certain words
UI designer -UX
無料プランでは公開済みの履歴書のみ利用できます。
上級プランにアップグレードして、CakeResume限定の何百万の履歴書など、すべての検索結果を閲覧しましょう。

Definition of Reputation Credits

Technical Skills
Specialized knowledge and expertise within the profession (e.g. familiar with SEO and use of related tools).
Problem-Solving
Ability to identify, analyze, and prepare solutions to problems.
Adaptability
Ability to navigate unexpected situations; and keep up with shifting priorities, projects, clients, and technology.
Communication
Ability to convey information effectively and is willing to give and receive feedback.
Time Management
Ability to prioritize tasks based on importance; and have them completed within the assigned timeline.
Teamwork
Ability to work cooperatively, communicate effectively, and anticipate each other's demands, resulting in coordinated collective action.
Leadership
Ability to coach, guide, and inspire a team to achieve a shared goal or outcome effectively.
1年以上
Taiwan
Professional Background
現在の状況
求人検索の進捗
就職を希望していません
Professions
Front-end Engineer
Fields of Employment
職務経験
4〜6年
Management
スキル
React.js
Redux
postcss
Webpack
koa2.js
JavaScript
Node.js
Gin
golang
Flexbox
d3.js
AWS CloudFormation
Jenkins
AWS Lambda
AWS API Gateway
AWS Router 53
Mqtt
WebSocket
PostgreSQL
Docker
jwt
言語
Job search preferences
希望のポジション
Senior Frontend Developer
求人タイプ
フルタイム
希望の勤務地
リモートワーク
リモートワークに興味あり
Freelance
学歴
学校
國立臺灣師範大學
専攻
Computer Science
印刷

TsungYing Lu (Webb)

Technical Project Manager / New Employee Mentor / Senior Software Developer @ Wistron Crop.

Taipei, Taiwan


Experience

Wistron Corp. / Sep. 2014 - Present (3 year, 9 month)

Wistron is a leading ODM company in Taiwan. My department focus on the software and internet area, seeking the innovation opportunities to assist our company to transform the industry to a high-value business model.

Technical Project Manager / Principal Engineer / April 2017 - Present (1 year)

  • Job Description
    • Provide technical guidance and coaching developers
    • Design the system architecture according to the requirements
    • Estimate project duration and human resources
    • Collaborate with PM, handle the tasks of technical side
    • Implement the sample code, boilerplate or prototype to help junior developer focus on implementation of functionality
    • Code Review
    • Ensure the on-time and on-quality delivery
  • Project experiences
    • Improvement of Internal DevOps Flow proposal  (Jan 2018 - Present)
      • GItlabCI / Kubernetes / Docker-composer
    • The Suggestion System for Kidney Dialysis (April 2017 - Dec 2017)


New Employee Mentor / Nov 2016 - Present (1 year, 5 month)

  • Job Description
    • New employee recruit and interview
      • Use S.T.A.R method to interview candidates
      • Analyze the benefits if they join our company
    • Design the training material
      • For fullstack developer
      • Two or three month training duration
    • Build relationship with mentees, help them have better know about their job
    • Assist the mentees to accomplish their training tasks
    • Feedback their weakness to the mentees
    • Assist mentees to show their accomplishments to higher-ups
  • Experience
    • Three graduate mentees so far

Senior Software Engineer / Apr. 2016 - May 2018 (2 years)

  • Job Description
    • Follow Technical Projecct Management to implement functionality in frontend
    • Programming well-designed, testable, efficient code
    • Code Review
    • Assist the junior developers
    • Survey new technical that request from the supervisiors
    • Hold workshop or seminar to share experience
  • Project experiences
    • Docker registry auth system  (Mar. 2018) 
      • using AzureAD as authN source
      • using Gitlab namespaces as authZ source
      • coding by Golang
    • The Suggestion System for Kidney Dialysis (Apr. 2016 - Apr. 2017)
      • Collaborate with UI designer, implement frontend layout
      • Collaborate with Data analysts, implement the information graphics / charts
  • Internal workshop and sharing
    • Using Electron to build a Single page application with React.js (Oct. 2017)
    • AWS Serverless service and DevOps (Apr. 2017)
      • S3 / API Gateway / Lambda
      • CodePipeline / CloudFormation
      • Router53 / CloudFront
    • AWS DevOps (Feb. 2017)
      • CodePipeline / CodeBuild / ECS / CloudFormation
    • The modern frontend web design (Dec. 2016)
      • from static web page to single page application

Software Engineer / Sep. 2014 - Apr. 2016 (1 year, 8 month) 

  • Job Description
    • Follow Technical Projecct Management to implement functionality both frontend and backend
    • Programming well-designed, testable, efficient code
  • Project experiences
    • IoT hub Dashboard
      • Set up the ActiveMQ as MQTT broker, and Sitewhere as IotHub
      • Implement the dashboard
      • Implement Android app as the IoT sensors for demo scenario
    • Running tracker system dashboard
      • Fetch the tracking data from restful API
      • Using Google Map to show the path


Experiences 00 00@2x 504900dc09d82f711fdb54cf5763251cab5193a844856da978b2b8f3907ecd5a

ASUS / July 2012 - Aug 2014 (2 year, 1 month)

ASUS is a leading computer company in Taiwan. My position was a Firmware engineer. As an Embedded controller (EC) engineer, we were using 8051 (MCS-51) assembly and C to programming on embedded controller (MCU).


Firmware Engineer

  • Job Descriptions
    • Developing and debuging of Embedded controller firmware for the latest generation platform.
    • Control the peripherals such as bettery charger current, fan speed, keyboard scan code, ambient light sensor...etc
    • Writing utilities application to improve development performance.
    • Asstisting Hardware engineer (EE) to identify the problem root cause.
  • Project experiences
    • Writing the firmware of a ARM based board, which is used for writing EC firmare into the ROM on mother board.
    • Refactor the original assembly codebase to C language.
    • Developing and maintaining laptop projects.

Experiences 00 02@2x d08cb731546334ac3e784c5845e368719bba256a127be86e720a634d798b8bb9

Education

National Taiwan Normal University, Jul 2010 - Jul 2012

Master of Engineering Degree

Major: Computer Sciencce

Experiences 00 00@2x 504900dc09d82f711fdb54cf5763251cab5193a844856da978b2b8f3907ecd5a

National Kaohsiung University of Science and Applied, Sep 2004 - Jun 2008

Bachelor of Engineering Degree 

Major: Mechanical Engineering

Experiences 00 01@2x 6daa47d1df70d315f129dcecdd562003831581c4cdd8f9c819aa22d4a24ae150

Certification


  • AWS Certified Solutions Architect - Associate Level (Apr 2017 – Apr 2019 License AWS-ASA-35173)
  • TOEIC - 710 (May 2014)

Skills / Tool


Frontend

  • React / Redux stacks
    • Immutable.js / reselect (selector)
      • Force the redux store immutable
      • Filter the props from redux store
      • Memoization (cache) the select function result
      • Reduce unnecessary re-rendering
    • Fetch API / Redux Sagas
      • Use Fetch API instead of traditional XHR API or other library, because it's natived and the syntax is more compatible with Generator or Async Await syntax .
      • Use Generator to control async function instead of Promise API to prevent callback hell
      • Use Put and Take API to integrate those side-effect flow into redux lifecycle
    • Pure Component
      • Reduce any unnecessary component re-rendering
    • Server Side Render (SSR)
      • Reduce the first loading time
      • Prefetch data by server, reduce the HTTP request in client device.
      • Integrate Server side router and React router to replace hash URL.
  • CSS
    • PostCSS / CSS Modules
      • Use postcss for more fine grained control of CSS relative plugins or preprocessors.
      • Use new CSS features before browser natively support it. (e.g. NextCSS, Sass, Less)
      • Use CSS Modules to force each CSS rule only available in each corresponding react components, prevent conflict and !important
      • Autoprefixer auto add the prefix for different browser such as -moz, -webkit and -ms
    • Flexbox and MediaQuery (RWD)
      • Use Flexbox as layout system instead of tables or float.
      • Integrate flexbox and media query to design for different resolution devices 
  • Webpack
    • Development mode
      • Hot Module Reload exchange (HMRe)
        • Update module's content when edit source files and keep react / redux states
    • Production mode
      • Code-Splitting
        • Separate source code and vendor code ,such as react and redux..., into different JavaScript file.
        • browser will cache the vendor js file to reduce fetch time.
      • Uglify
        • Replace the variable and function name by short characters to minify the bundle size.
        • Reduce the readability of production code 
      • Compression
        • Generate gzip files of web assets
        • Serve as static files and gzip in compiler time instead dynamically generate each time when server receive request.
    • General setting
      • Source map
        • Show the debug / error messages with original line number and file name in the source code, instead of the information in production code.
      • Use common setting as based config, then merge it with Dev or Prod configs
  • Babel 
    • Preset-env
      • Replace the preset-es201x, for latest features.
      • Dynamic scan the source code and fine grained control the installation of polyfill 
  • Coding Style
    • Eslint / stylelint
      • highlight the source code which conflict with coding style of team
    • Prettier
      • auto formating when saving source code
    • editorconfig
  • End to End testing
    • Puppeteer (Headless Chrome) + Jest (Runner)
  • Authentication / Authorziation
    • JSON-Web-Token(JWT)
    • pass by cookie or bearer header
  • InfoGraphic
    • D3.js and SVG
      • Using D3.js to calculate the scale and using SVG to implement graphic and charts from UI design.
  • Websocket
    • Ability of using websocket to send notification through mqtt protocal
  • Web Progressive Application
    • Limited knowledge of CacheStorage API for offline application.


Backend

  • Node.js
    • Web Server Framework 
      • Koa.js
        • Support yield or async await to control async behavior instead of callback hell from Promise API.
      • Express.js 
    • Router
      • Restful style routing
    • Static file serving
    • Secure HTTP Header
      • Using tools like Helmet to setting secure headers such as CSP, HSTS ... etc
    • Live Reload Server
      • Auto restart server when edit source code
      • tool: nodemon 
    • Package Management
      • npm / yarn 
    • Coding Style Checking
      • Node.js
        • ESlint
        • Prettier
        • editor config
    • Unit test
      • Use jest as tast runner
      • Writing mock function when the function have side-effect
    • API test
      • Use jest to write auto api test
      • Use Postman and Curl to manual test
  • Golang
    • Web Server Framework 
      • Gin 
    • Live Restart Server
      • air
    • Package Management
      • govendor (golang)
        • Project specific package manager, instead of using `go get` all the package store in global scope (gopath workspace)
    • Coding Style Checking
      • go fmt
    • Integrate AzureAD and fetch user info by Graph API, to implement the auth process of docker registry
  • CORS knowledge
    • Share credentials cookies cross different domain
      • the root domain should be the same such as api.example.com and www.example.com
      • setting Access-Control-Allow-Credentials header
      • origin should be the root domain, not  *, 
      • setting credentials header in request side
  • HTTPs / HTTP2
    • use LetEncrypt to sign certification
    • self-sign certification
  • Database
    • Database Normalization
    • Basic CURD skill
  • AAA server
    • FreeRADIUS
      • Integrate with AD
      • Integrate with CAS
      • Integrate with local database
  • MQTT
    • use Mosiqutto and ActiveMQ as broker


DevOps

  • Docker
    • Able to set up a Docker Private Repo, using company authentication.
    • Able to set up authorization so user can only use the images store in the namespace which they have permission to access.
    • Use node-alpine as base image to minimalize the  image size of Node.js production
    • Use Docker Multi-stage and scratch image as base image to minimalize the image size of Golang production
  • Jenkins
    • Able to use jenkinsfile to control pipeline job
    • Able to integrate jenkins pipeline stage with Gitlab pipeline
    • Trigger Jenkins to run unit test whenever someone push code to source branch
    • Trigger Jenkins to run integration testing, API testing, end to end testing whenever someone launch a merge request
    • Trigger Jenkins to build production image when the merge request have been accepted 
  • Proxy Server
    • Tools I have use:
      • Nginx
      • HA Proxy
      • Caddy
    • Reverse Proxy Server
      • Multi Service Share the same port on IP address
    • Load Balance
  • DNS Setting
  • Kubernetes Deploy
    • Using Kubectl deploy pod, service and ingresses

AWS Cloud Service

  • Serverless Service
    • S3
      • Web / static file host
    • API Gateway
      • API router
      • redirect to lambda function or other service 
    • Lambda
      • Integrate with API Gateway as API handler function
  • CloudFormation
    • Writing yaml file to auto provision the AWS infra
  • Code Pipeline
    • CI / CD service for AWS service
    • Source stage: Github / S3 / CodeCommit
    • Build stage: Jenkins on EC2 or CodeBuild
      • Run unit test / API test / end2end testing
    • Deploy stage: CloudFormation + ECS
  • Router53 (DNS)

Side Project


Crawling data from Taiwan Stock Exchange, and send notification by email when the condition is true. (2015)


Tool: Python, Mongo

Language


Mandarin

Native


Hokkien

Proficient


English

Intermediate (writing, reading)

Basic (speaking)

Competition Award


Taiwan Hackathon
@Shenzhen, China (Oct 2015)

  • Project: Using Mobile Camera and Matlab Algorithm to detect glaucoma probability
  • Role: Fullstack developer
  • Award: Best Presentation


Taiwan Hackathon
@Taipei (Dec 2015)

  • Project: Taipei Art and Culture Events Guided Tour App Using AR tech 
  • Role: Backend API developer
  • Award: Best Presentation

Resume
プロフィール

TsungYing Lu (Webb)

Technical Project Manager / New Employee Mentor / Senior Software Developer @ Wistron Crop.

Taipei, Taiwan


Experience

Wistron Corp. / Sep. 2014 - Present (3 year, 9 month)

Wistron is a leading ODM company in Taiwan. My department focus on the software and internet area, seeking the innovation opportunities to assist our company to transform the industry to a high-value business model.

Technical Project Manager / Principal Engineer / April 2017 - Present (1 year)

  • Job Description
    • Provide technical guidance and coaching developers
    • Design the system architecture according to the requirements
    • Estimate project duration and human resources
    • Collaborate with PM, handle the tasks of technical side
    • Implement the sample code, boilerplate or prototype to help junior developer focus on implementation of functionality
    • Code Review
    • Ensure the on-time and on-quality delivery
  • Project experiences
    • Improvement of Internal DevOps Flow proposal  (Jan 2018 - Present)
      • GItlabCI / Kubernetes / Docker-composer
    • The Suggestion System for Kidney Dialysis (April 2017 - Dec 2017)


New Employee Mentor / Nov 2016 - Present (1 year, 5 month)

  • Job Description
    • New employee recruit and interview
      • Use S.T.A.R method to interview candidates
      • Analyze the benefits if they join our company
    • Design the training material
      • For fullstack developer
      • Two or three month training duration
    • Build relationship with mentees, help them have better know about their job
    • Assist the mentees to accomplish their training tasks
    • Feedback their weakness to the mentees
    • Assist mentees to show their accomplishments to higher-ups
  • Experience
    • Three graduate mentees so far

Senior Software Engineer / Apr. 2016 - May 2018 (2 years)

  • Job Description
    • Follow Technical Projecct Management to implement functionality in frontend
    • Programming well-designed, testable, efficient code
    • Code Review
    • Assist the junior developers
    • Survey new technical that request from the supervisiors
    • Hold workshop or seminar to share experience
  • Project experiences
    • Docker registry auth system  (Mar. 2018) 
      • using AzureAD as authN source
      • using Gitlab namespaces as authZ source
      • coding by Golang
    • The Suggestion System for Kidney Dialysis (Apr. 2016 - Apr. 2017)
      • Collaborate with UI designer, implement frontend layout
      • Collaborate with Data analysts, implement the information graphics / charts
  • Internal workshop and sharing
    • Using Electron to build a Single page application with React.js (Oct. 2017)
    • AWS Serverless service and DevOps (Apr. 2017)
      • S3 / API Gateway / Lambda
      • CodePipeline / CloudFormation
      • Router53 / CloudFront
    • AWS DevOps (Feb. 2017)
      • CodePipeline / CodeBuild / ECS / CloudFormation
    • The modern frontend web design (Dec. 2016)
      • from static web page to single page application

Software Engineer / Sep. 2014 - Apr. 2016 (1 year, 8 month) 

  • Job Description
    • Follow Technical Projecct Management to implement functionality both frontend and backend
    • Programming well-designed, testable, efficient code
  • Project experiences
    • IoT hub Dashboard
      • Set up the ActiveMQ as MQTT broker, and Sitewhere as IotHub
      • Implement the dashboard
      • Implement Android app as the IoT sensors for demo scenario
    • Running tracker system dashboard
      • Fetch the tracking data from restful API
      • Using Google Map to show the path


Experiences 00 00@2x 504900dc09d82f711fdb54cf5763251cab5193a844856da978b2b8f3907ecd5a

ASUS / July 2012 - Aug 2014 (2 year, 1 month)

ASUS is a leading computer company in Taiwan. My position was a Firmware engineer. As an Embedded controller (EC) engineer, we were using 8051 (MCS-51) assembly and C to programming on embedded controller (MCU).


Firmware Engineer

  • Job Descriptions
    • Developing and debuging of Embedded controller firmware for the latest generation platform.
    • Control the peripherals such as bettery charger current, fan speed, keyboard scan code, ambient light sensor...etc
    • Writing utilities application to improve development performance.
    • Asstisting Hardware engineer (EE) to identify the problem root cause.
  • Project experiences
    • Writing the firmware of a ARM based board, which is used for writing EC firmare into the ROM on mother board.
    • Refactor the original assembly codebase to C language.
    • Developing and maintaining laptop projects.

Experiences 00 02@2x d08cb731546334ac3e784c5845e368719bba256a127be86e720a634d798b8bb9

Education

National Taiwan Normal University, Jul 2010 - Jul 2012

Master of Engineering Degree

Major: Computer Sciencce

Experiences 00 00@2x 504900dc09d82f711fdb54cf5763251cab5193a844856da978b2b8f3907ecd5a

National Kaohsiung University of Science and Applied, Sep 2004 - Jun 2008

Bachelor of Engineering Degree 

Major: Mechanical Engineering

Experiences 00 01@2x 6daa47d1df70d315f129dcecdd562003831581c4cdd8f9c819aa22d4a24ae150

Certification


  • AWS Certified Solutions Architect - Associate Level (Apr 2017 – Apr 2019 License AWS-ASA-35173)
  • TOEIC - 710 (May 2014)

Skills / Tool


Frontend

  • React / Redux stacks
    • Immutable.js / reselect (selector)
      • Force the redux store immutable
      • Filter the props from redux store
      • Memoization (cache) the select function result
      • Reduce unnecessary re-rendering
    • Fetch API / Redux Sagas
      • Use Fetch API instead of traditional XHR API or other library, because it's natived and the syntax is more compatible with Generator or Async Await syntax .
      • Use Generator to control async function instead of Promise API to prevent callback hell
      • Use Put and Take API to integrate those side-effect flow into redux lifecycle
    • Pure Component
      • Reduce any unnecessary component re-rendering
    • Server Side Render (SSR)
      • Reduce the first loading time
      • Prefetch data by server, reduce the HTTP request in client device.
      • Integrate Server side router and React router to replace hash URL.
  • CSS
    • PostCSS / CSS Modules
      • Use postcss for more fine grained control of CSS relative plugins or preprocessors.
      • Use new CSS features before browser natively support it. (e.g. NextCSS, Sass, Less)
      • Use CSS Modules to force each CSS rule only available in each corresponding react components, prevent conflict and !important
      • Autoprefixer auto add the prefix for different browser such as -moz, -webkit and -ms
    • Flexbox and MediaQuery (RWD)
      • Use Flexbox as layout system instead of tables or float.
      • Integrate flexbox and media query to design for different resolution devices 
  • Webpack
    • Development mode
      • Hot Module Reload exchange (HMRe)
        • Update module's content when edit source files and keep react / redux states
    • Production mode
      • Code-Splitting
        • Separate source code and vendor code ,such as react and redux..., into different JavaScript file.
        • browser will cache the vendor js file to reduce fetch time.
      • Uglify
        • Replace the variable and function name by short characters to minify the bundle size.
        • Reduce the readability of production code 
      • Compression
        • Generate gzip files of web assets
        • Serve as static files and gzip in compiler time instead dynamically generate each time when server receive request.
    • General setting
      • Source map
        • Show the debug / error messages with original line number and file name in the source code, instead of the information in production code.
      • Use common setting as based config, then merge it with Dev or Prod configs
  • Babel 
    • Preset-env
      • Replace the preset-es201x, for latest features.
      • Dynamic scan the source code and fine grained control the installation of polyfill 
  • Coding Style
    • Eslint / stylelint
      • highlight the source code which conflict with coding style of team
    • Prettier
      • auto formating when saving source code
    • editorconfig
  • End to End testing
    • Puppeteer (Headless Chrome) + Jest (Runner)
  • Authentication / Authorziation
    • JSON-Web-Token(JWT)
    • pass by cookie or bearer header
  • InfoGraphic
    • D3.js and SVG
      • Using D3.js to calculate the scale and using SVG to implement graphic and charts from UI design.
  • Websocket
    • Ability of using websocket to send notification through mqtt protocal
  • Web Progressive Application
    • Limited knowledge of CacheStorage API for offline application.


Backend

  • Node.js
    • Web Server Framework 
      • Koa.js
        • Support yield or async await to control async behavior instead of callback hell from Promise API.
      • Express.js 
    • Router
      • Restful style routing
    • Static file serving
    • Secure HTTP Header
      • Using tools like Helmet to setting secure headers such as CSP, HSTS ... etc
    • Live Reload Server
      • Auto restart server when edit source code
      • tool: nodemon 
    • Package Management
      • npm / yarn 
    • Coding Style Checking
      • Node.js
        • ESlint
        • Prettier
        • editor config
    • Unit test
      • Use jest as tast runner
      • Writing mock function when the function have side-effect
    • API test
      • Use jest to write auto api test
      • Use Postman and Curl to manual test
  • Golang
    • Web Server Framework 
      • Gin 
    • Live Restart Server
      • air
    • Package Management
      • govendor (golang)
        • Project specific package manager, instead of using `go get` all the package store in global scope (gopath workspace)
    • Coding Style Checking
      • go fmt
    • Integrate AzureAD and fetch user info by Graph API, to implement the auth process of docker registry
  • CORS knowledge
    • Share credentials cookies cross different domain
      • the root domain should be the same such as api.example.com and www.example.com
      • setting Access-Control-Allow-Credentials header
      • origin should be the root domain, not  *, 
      • setting credentials header in request side
  • HTTPs / HTTP2
    • use LetEncrypt to sign certification
    • self-sign certification
  • Database
    • Database Normalization
    • Basic CURD skill
  • AAA server
    • FreeRADIUS
      • Integrate with AD
      • Integrate with CAS
      • Integrate with local database
  • MQTT
    • use Mosiqutto and ActiveMQ as broker


DevOps

  • Docker
    • Able to set up a Docker Private Repo, using company authentication.
    • Able to set up authorization so user can only use the images store in the namespace which they have permission to access.
    • Use node-alpine as base image to minimalize the  image size of Node.js production
    • Use Docker Multi-stage and scratch image as base image to minimalize the image size of Golang production
  • Jenkins
    • Able to use jenkinsfile to control pipeline job
    • Able to integrate jenkins pipeline stage with Gitlab pipeline
    • Trigger Jenkins to run unit test whenever someone push code to source branch
    • Trigger Jenkins to run integration testing, API testing, end to end testing whenever someone launch a merge request
    • Trigger Jenkins to build production image when the merge request have been accepted 
  • Proxy Server
    • Tools I have use:
      • Nginx
      • HA Proxy
      • Caddy
    • Reverse Proxy Server
      • Multi Service Share the same port on IP address
    • Load Balance
  • DNS Setting
  • Kubernetes Deploy
    • Using Kubectl deploy pod, service and ingresses

AWS Cloud Service

  • Serverless Service
    • S3
      • Web / static file host
    • API Gateway
      • API router
      • redirect to lambda function or other service 
    • Lambda
      • Integrate with API Gateway as API handler function
  • CloudFormation
    • Writing yaml file to auto provision the AWS infra
  • Code Pipeline
    • CI / CD service for AWS service
    • Source stage: Github / S3 / CodeCommit
    • Build stage: Jenkins on EC2 or CodeBuild
      • Run unit test / API test / end2end testing
    • Deploy stage: CloudFormation + ECS
  • Router53 (DNS)

Side Project


Crawling data from Taiwan Stock Exchange, and send notification by email when the condition is true. (2015)


Tool: Python, Mongo

Language


Mandarin

Native


Hokkien

Proficient


English

Intermediate (writing, reading)

Basic (speaking)

Competition Award


Taiwan Hackathon
@Shenzhen, China (Oct 2015)

  • Project: Using Mobile Camera and Matlab Algorithm to detect glaucoma probability
  • Role: Fullstack developer
  • Award: Best Presentation


Taiwan Hackathon
@Taipei (Dec 2015)

  • Project: Taipei Art and Culture Events Guided Tour App Using AR tech 
  • Role: Backend API developer
  • Award: Best Presentation