Shin-Kai Ma

Software Engineer

  Taipei  |      |    

Summary

With 6 years of experience in software development, I specialize in Node.js (backend), Kubernetes, Terraform, Helm, and instance segmentation with Mask R-CNN for image recognition. My professional interests include developing data pipelines, designing microservice architectures, and building high-concurrency & high-availability systems. 

I am currently engaged in implementing a computer vision recognition system and advancing my knowledge in Deep Learning, with the goal of creating technologies that can make a significant positive impact on the world. Dedicated to harnessing my skills for the greater good, I have undertaken side projects that address societal needs. Among these initiatives is a "sold house prices" web application to bring transparency to the real estate market in Taiwan, and a weather map application that delivers real-time weather forecast analysis. These endeavors reflect my commitment to improving information accessibility and enhancing quality of life through technology.

Work Experience

Senior Backend Engineer, Machine Learning Engineer

Calyx March 2022 - present

  • Established a Kubernetes cluster in AWS for improved SaaS availability and scalability using Terraform and Helm.
  • Set up monitoring and logging with Prometheus, Grafana, and Loki.
  • Integrated end-to-end testing using Cypress.js and enhanced CI/CD with ArgoCD and GitHub Actions.
  • Refactored the SaaS platform for better scalability and added role-based access control (RBAC) with OPA.
  • Upgraded the LoRaWAN network for increased throughput using AWS IoT Core and Apache Kafka.
  • Developed a chicken identification model using Mask R-CNN and vision transformers, with a high accurate weight estimation using XGBoost.
  • Built a real-time data pipeline for chicken weight prediction on farms.
  • Deployed lightweight object recognition models on edge devices using YOLO v8 and NCNN.

Software Engineer

Process& GmbH August 2021 - January 2022

  • Launched a multi-tenant Kubernetes cluster on AWS, facilitating a scalable infrastructure for SaaS offerings.
  • Developed a Node.js-based application to optimize data scientists' workflow, enhancing productivity and collaboration.
  • Designed a workflow engine system for data scientists, significantly improving their daily workflows by automating repetitive tasks.

Software Engineer

Acer  March 2020 - July 2021 

  • Leading the team to improve document editor widely used in Judicial Yuan and Ministry of Justice. Responsible for optimizing the performance of these two editors and integrating them with several systems deployed in the government.
  • Leading the team to refactor server side (Express.js & Nestj.s) node.js application.

Software Engineer

Intumit  January 2019 - February 2020

  • Chatbot application development using Java and Vanilla javascript.
  • Integrate the training process for chatbot based on BERT model.
  • Responsible for Developing chatbot projects (backend) for Taiwan Mobile, National Health Insurance Administration, MasterLink Securities, American Family Life Assurance Company (Aflac) and CTC Japan.


Research Assistant

National Taiwan University - Research Center of Climate Change and Sustainable Development  February 2018 - June 2018

  • Using Fortran, GrADs and Python to analysis cyclone genesis issue. 


Education

2015 - 2018

National Taiwan Normal University

Master's degree in Earth Sciences (Program of Atmospheric Science) 

Skills



Programing Language

  • Fortran
  • Java
  • HTML、CSS
  • JavaScript (ES5+)
  • TypeScript
  • Python
  • Golang

Framework

  • Spring Boot
  • Spring Cloud
  • Express.js
  • Nest.js
  • React.js
  • Next.js
  • Vue.js

Database System

  • SQL server
  • MySQL
  • MariaDB
  • PostgreSQL
  • H2
  • MongoDB
  • Cassandra
  • Solr


Message Queue and Others

  • Kafka
  • MQTT
  • etcd
  • Nats-Streaming
  • Rabbit MQ
  • Docker
  • Kubernetes
  • Terraform
  • Helm
  • Prometheus & Grafana
  • AWS
  • Drone (CI/CD)


Other Tools

  • Git, Github, SourceTree
  • Puppeteer (Chromium automation)
  • Mocha.js / Chai.js (js unit test)
  • Cypress (e2e test tool)
  • k6 (load testing tool)

Language

  • Chinese
  • English
  • Japanese (N2)




Cloud

AWS

  • AWS EKS, ECR
  • AWS RDS
  • AWS EBS, EFS
  • AWS Route 53
  • AWS Client VPN
  • AWS Certificate Manager
  • AWS Application Load Balancer
  • AWS IoT Core
  • AWS MSK (Managed Streaming for Apache Kafka)

Side Projects


Open House Price

Data visualization of Taiwan house price, using open data of  sold house price from Ministry of the Interior (MOI), I use Java to pre-process raw house trade data (csv format), and backend development, vanilla Javascript for front-end development.
By using the website, users can search house prices anywhere in Taiwan.


Atmo.io

Data visualization of weather using open data (grid forecast data from numerical model ) from Central Weather Bureau (CWB), I'm using Python to plot weather map, using Node.js (Express.js) for backend and React.js for front-end development. Through this website, users can pick up latest weather map which is near Taiwan for the daily weather forecast.


InstaFood

A food information crawler service, using Node.js (Puppeteer.js and Nest.js) and nats-streaming message queue system to crawl food information from Instagram, Google Map, etc..., by these data, we could analysis food trend in Taiwan. We try to design this application to let users know about what is the most popular food in Taiwan now.


Open House Price (version 2)

I optimized Open House Price application parsing performance with my friend by using data pipeline architecture, we design lots of components for data crawling, parsing and classifying. In addition, we refactored this application by using React.js, Nats-Streaming and Express.js.