陳冠廷 - Alex Chen

Phone: +886979297810

email: [email protected]

Backend software engineer with strong background more than 9+ years of experience in designing and developing high-performance software solutions. With expertise in Java Spring Boot, distributed systems, micro-services architecture, distributed systems that leverage Message Queue (MQ) systems and in-memory databases, my experience in architecting such systems has led to improved system performance, scalability, and responsiveness, making them well-suited for demanding real-time applications.

Work Experience

KaiOS Technologies

Sr. Software Engineer • 2021/03 - 2023/07

KaiCloud is a microservice system. It includes various applications, including each service via a message queue to communicate and share data.

  • KaiStore backend
    • To create an App Store for the world's most popular KaiOS applications, allowing KaiOS mobile 
       users to download thousands of apps through KaiStore. This is a microservices architecture- 
       based system, with the project utilizing GoLang for the API gateway layer, and Java SpringBoot 
       to communication with the Cassandra database. It is capable of easy horizontal scalability and 
       rapid responsiveness to serve tens of millions of KaiOS mobile users.
    • To implement the app recommendation feature for KaiStore, collaborating with the Data team is essential to detect the user's location and recommend a suitable ranking app list for that region. This process may involve cross-border collaboration and requires the creation of API documentation. Discussions with the Data team to resolve performance issues for the API payload. Additionally, this app ranking list functionality includes a Progressive Web Apps (PWA) crawler feature, which will be used to reconstruct the existing data structure based on a large number of PWA apps crawled by the Data team to improve database performance due to the large volume of apps.
  • KaiStore Portal backend
    •  A system allows developers/partners to upload apps and manage app versions, manifests, and 
       configurations. 
  • KaiAds (Ad Exchange, SSP, DSP)
    • The KaiOS AD system, kaiOS's developer, via KaiAds SDK, send ad requests to SSP servers to bid for the ADs from several DSP partners. This product is a pure Golang project. We use AWS Elasticache to store the AD data to increase the latency and use Lambda to sync the cache data to the database.
  • Skill Set
    • languages: Go, Java
    • Database: Cassandra, PostgreSQL
    • Cache: Redis
    • Queue: Nats
    • Logs System: Grafana/Loki/Promtail
    • System: Docker, CentOS, k8s
    • Cloud Platform: AWS

Wistron corporation

Technical Manager  •   2019/11 - 2021/02

  • Led a team of 6-10 members in software development projects, ensuring timely and high-quality deliverables.
  • Collaborated with cross-functional teams and external departments to define project requirements and functionalities.
  • Implemented agile development methodologies, conducting daily stand-up meetings to enhance communication and address challenges.
  • Assigned tasks and monitored the progress of front-end and back-end team members to ensure efficient development.
  • Reviewed code, provided technical guidance, and conducted regular performance evaluations to foster professional growth within the team.
  • Developed robust and scalable software solutions using Python and Vue.js, contributing to the successful delivery of multiple projects.

  • Projects:
    • Manufacturing Monitoring System
      • A system monitors the data from the manufacturer. This system can deploy both on the cloud and on the local device.
    • Dynamic Form Designer System
      • This system can dynamically build up the form via the web interface, using MongoDB to dynamic build up the schema architecture. Users can easily create, modify, import, and export to excel format.
      • Skill Set
        • Python Flask
        • Azure 
        • Postgres DB
    • ETL System
      • To sync data from the data center, a data pipeline system uses a queue to keep the data alive. Using the Producer/Consumer architecture, the process can be easy to scale up.
      • Skill Set
        • Python
        • RabbitMQ
        • Postgres DB
        • Celery

BSQUARE Corporation

Sr. Software Engineer  •   2014/02 - 2019/10

  • Seeking-Health - DNA Analysis
    • Skill Set
      • Java
      • React
      • Mongo
  • DataV - Remote Control System
    • Use Node JS net Socket to connect to SSH and VNC of Linux base device, render the TCP streaming string and RAW data(RFB protocol) on the WebApp.
    • Skill Set
      • nodeJS
  • DataV - IoT software for business and industrial applications
    • DataV Core product development using Google Web Toolkit (GWT). Utilized MVC principles to ensure a clean architecture and a lean code base for maximum. Maintained close communication with the UI/UX team to enhance product quality. Followed Agile development and consistently delivered new features on time during sprints, use Data Access Object (DAO) for database operation, Hibernate for Object/Relational Mapping (ORM), Spring MVC for request routing.
    • Skill Set
      • Java
      • GWT
      • Mongo

ASUS Cloud Corporation

Sr. Software Engineer  •   2012/02 - 2014/02

  • ASUS Webstorage Windows Phone, Windows tablet APP
    • Worked at Windows development team to build pad and phone apps. Responsible for implementation of RESTful service API including image upload/download and other cloud file operations. Worked primarily in C# and XAML and contributed UX and UI design in addition to API work for the ASUS Web Storage product.
      • Cloud-based file upload/download
      • ACC, MP3, and WMV streaming support
      • Cloud file browsing and search (full-text and file name)
    • Skill Set
      • C#
      • XAML
      • Windows Phone

Fujitsu

Software Engineer  •   2009/08 - 2012/02

  • Responsible for POS system of Family Mart which was implemented in C#/.NET. The system provided typical POS features, and I developed new features including the ability to handle TCP/IP connection loss, and exhausting inventory.

Education

2005 - 2007

Tajen University

Bachelor Of Computer Science

Skill


  • GO, Java, Spring Boot Python, MariaDB, Cassandra, Redis, Kafka, RabbitMQ, NAT

Languages


  • Chinese - Native
  • English