CakeResume Talent Search

Advanced filters
On
4-6 years
6-10 years
10-15 years
More than 15 years
Avatar of the user.
Avatar of the user.
Senior Software Developer @CLÉ
2023 ~ Present
Senior Software Developer / Tech lead
Within three months
PHP
Laravel
MySQL
Employed
Ready to interview
Full-time / Remote Only
4-6 years
Federal University Oye-Ekiti, Ekiti State, Nigeria
Bachelor of Science : Computer
Avatar of the user.
Avatar of the user.
Senior software engineer @Delta Electronics (台達電子)
2021 ~ Present
資深軟體工程師
Within one month
PLSQL
MSSQL
Oracle Database
Employed
Ready to interview
Full-time / Interested in working remotely
6-10 years
國立聯合大學 National United University
資訊管理
Avatar of Mathieu L.
Avatar of Mathieu L.
Lead Senior Full-stack Engineer @SNCF
2021 ~ Present
Senior Software Developer / Tech lead
Within two months
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
Employed
Ready to interview
Full-time / Not interested in working remotely
6-10 years
HETIC - Hautes études des technologies de l'information et de la communication
Development
Avatar of Devraj Kumar.
Avatar of Devraj Kumar.
Staff Engineer @NextGen Healthcare India
2019 ~ Present
Senior Software Developer
Within three months
. • 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
Employed
Ready to interview
Full-time / Interested in working remotely
10-15 years
North Maharastra University, Jalgaon, Maharastra
Computer Science & Engineering
Avatar of Hongyi Luo.
Avatar of Hongyi Luo.
senior software engineer/ tenical pm @CYTENA BPS
2021 ~ Present
後端工程師
Within one month
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
Employed
Ready to interview
Full-time / Interested in working remotely
6-10 years
國立台灣大學 (National Taiwan University, NTU)
Electronic engineering
Avatar of Shan Xi, Liao.
Avatar of Shan Xi, Liao.
Past
Senior Backend Engineer @瑪黑家居選物股份有限公司
2023 ~ Present
Software Engineer / Backend Engineer
Within one month
</> 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
Unemployed
Ready to interview
Full-time / Interested in working remotely
6-10 years
國立東華大學 | National Dong Hwa University
Global Logistics Management
Avatar of Manjeet Singh.
Avatar of Manjeet Singh.
Mern Stack Developer @H-Card
2019 ~ 2019
Senior Software Developer
Within three months
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
Employed
Open to opportunities
Full-time / Interested in working remotely
4-6 years
oriental college of technology
Computer Science
Avatar of Alan Huang.
Avatar of Alan Huang.
系統分析師 @日月光半導體製造股份有限公司中壢分公司
2021 ~ Present
Senior Software Developer
Within six months
Alan Huang System Analyst Taoyuan City, Taiwan 我是黃偉倫(Alan),大學主修電子工程學系,專業學習為IC design & Layout。 廣積科技時期 自主學習程式語言也主動接下並完成客戶需求,使公司得到約營業額20%的訂單。也得到學校頒發實習優秀獎;後繼留任於該公司並繼續推導工廠自動化
Word
Excel
PowerPoint
Employed
Open to opportunities
Full-time / Interested in working remotely
4-6 years
明志科技⼤學 Ming Chi University of Technology
電子工程
Avatar of 蕭瑋彥.
Avatar of 蕭瑋彥.
Software developer @RTLawrence Co.
2021 ~ Present
Senior Software Engineer
Within two months
蕭瑋彥 William, Hsiao More than 10 years experience of software development, from junior developer to senior, and then become a team leader to lead 2 developer, I experienced many type of program language and structure. - Backend, mostly use c# OO language and base on multi platform, e.g. webform, winform, webservice, .net mvc, .net web api, .net core... - Frontend, experience with ajax, bootstrap, javascript, typescript, vue.js, ... but not good on UX and UI design. - Version control: Github, Gitlab, TFS. - DB: mostly
C#.NET development
MVC Architecture
WebAPI
Employed
Open to opportunities
Full-time / Interested in working remotely
10-15 years
國立雲林科技大學
資訊管理
Avatar of the user.
Avatar of the user.
Software Engineer @HealthCare.com
2022 ~ 2023
Senior Software Developer
Within two months
c# .net
Services Development
PHP CodeIgniter
Employed
Full-time / Interested in working remotely
6-10 years
Udemy Alumni

The Most Lightweight and Effective Recruiting Plan

Search resumes and take the initiative to contact job applicants for higher recruiting efficiency. The Choice of Hundreds of Companies.

  • Browse all search results
  • Unlimited access to start new conversations
  • Resumes accessible for only paid companies
  • View users’ email address & phone numbers
Search Tips
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
Only public resumes are available with the free plan.
Upgrade to an advanced plan to view all search results including tens of thousands of resumes exclusive on 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.
More than one year
Taiwan
Professional Background
Current status
Job Search Progress
Not open to opportunities
Professions
Front-end Engineer
Fields of Employment
Work experience
4-6 years
Management
Skills
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
Languages
Job search preferences
Positions
Senior Frontend Developer
Job types
Full-time
Locations
Remote
Interested in working remotely
Freelance
Educations
School
國立臺灣師範大學
Major
Computer Science
Print

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
Profile

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