Hi, my name is Ray

- I've been involved in various backend fields, so no matter what position I'm assigned to, I have immediate productivity - it includes server managing, project developing, DB managing, CI/CD building, cloud service.

- I have distributed service development experience - handle thousands QPS with Load Balance && Auto Scaling policy

- I am aware of time complexity - I'm sensitive to the time complexity of code to prevent causing some unnecessary bottleneck.

- I am aware of the importance of readability - I always check if the naming is reasonable, clear, and understandable.

- I am a bilingual - I can communicate with Chinese and English.

- I like learning and sharing - I run my own blog and I believe that sharing makes me learn deeper.

https://raycodingjourney.medium.com/

- I have practical experiences - Feel free to check my portfolio below.

https://hackmd.io/@Serendipity/Hy0QKmgcq


Backend Developer
Country, TW
[email protected]

Skills

Laravel / PHP

  • I've read and translated every single post from Laravel official documentation, https://reurl.cc/10kNbm I could use the solutions that framework provides per different use case.
  • I read and translate Laravel news weekly to keep up with the latest feature at all times.
  • I've developed multiple projects with Laravel,  https://reurl.cc/rZKpRr

Express / Node.js

RestFul API

MySQL

  • Have deep understanding about how MySQL DB works.
  • Replace multiple indices with compound index
  • Use positive lock or negative lock per different use case

Google Cloud Platform


AWS

  • High traffic architecture design with AWS services, https://reurl.cc/eWVqVm, like EC2, SES, SQS, RDS, Route 53, ElasticCache, CodeDeploy, CloudWatch, etc.


CI/CD

  • Built CI/CD deployment on multiple Laravel projects with GitLab Runner along with Envoyer
  • Built CI/CD deployment on monorepo projects with GitHub Action


LNMP (Linux + Nginx + MySQL + PHP)

  • Familiar with installing and configuring Nginx, like setting up reverse proxy multiple projects, configuring per use case, SSL certificate installation.
  • Familiar with PHP environment building, and configuring FPM per use case, like the number of child process, memory limit, etc.
  • Familiar with MySQL installation and configuring, like the buffer size configuring, and data backup and export, etc.
  • Familiar with Linux, like how User / Group permission works, and build different environment per different OS.


Docker

  • Wrote a Dockerfile to build Express project developing environment
  • Built Laravel project CI/CD testing with Docker
  • Experiences on Laradock
  • Kubernetes basics understanding. Deploy Laravel project, WordPress project with KIND on local machine, and wrote a tutorial article https://reurl.cc/QWVrmo


Payment Gateway

  • PayPal experience on projects
  • AllPay experience on projects

Third Party Login

  • Apple Login
  • Google Login
  • Facebook Login

Language ability

  • Chinese (native)
  • English (fluent in listening, speaking, reading, writing)

Experiences

Senior Backend Developer

Good Ideas Studio  •  Jul 2018 - Now

  • Good Ideas Studio is the biggest IT community in southern Taiwan. There are so many remote developers there, including frontend, backend, iOS, Android, and also designers.
  • Help different companies to develop projects, which include project development, server managing, CI/CD building, DB managing, DNS managing, architecture design, technical consulting.
  • Exporting hundreds of thousands rows of data to Excel by queuing, and upload to s3 for downloading.
  • TDD practical experiences.
  • Various third party login practical experiences.
  • Payment gateway practical experiences.
  • Crawler experiences
  • Experiences to deal with race condition.
  • SQL query optimisation experiences. Lower query which took several seconds to 300 ms 
  • High traffic architecture practical experiences. The customer could scale servers to hundreds by only click one button.

Backend Developer

QINFRA  •  Apr 2018 - Nov 2018

  • Optimise API, the bill was decreased by 70%, and the cycle time was reduced from 30 minutes to 10 seconds.
  • Build up logs managing mechanism to periodically compress and delete.
  • Build up node health check mechanism, and report the situation via email & Slack.
  • Use Load Balancer on the existing product to increase availability.
  • Build different servers, such as SFTP, FTP, WebDAV, NFS server, per requirement.



Community Activities

GDG Taichung


In two days, we need to think and complete a service using the GCP.

IThome


It requires to write an IT related article each day for 30 days. My subject is Git.

Good Ideas Hackathon


In three days, we have to complete an application per specific requirements.