Frankie Chao

Frankie Chao

Assistant Engineer

Followers of Frankie Chao484 followers
location of Frankie ChaoNew Taipei City, New Taipei City, Taiwan

Connect with Frankie Chao to Send Message

Connect

Connect with Frankie Chao to Send Message

Connect
  • Timeline

  • About me

    Staff Infrastructure and Application Engineer at Lookout

  • Education

    • National Chung Hsing University

      2005 - 2009
      Bachelor’s Degree Management Information Systems, General

      ・Learning Java Basic and J2EE developing API.・Database and System analysis and design.・Graduated Project: Developed a SSO(Single Sign On) system implemented with CAS framework.

    • National Taiwan University of Science and Technology

      2009 - 2011
      Master’s Degree Management Information Systems, General

      ・Research Interests in Algorithm, Distributed File System・Thesis: QoS-aware and cost considerable network replication with fault-tolerance

  • Experience

    • National Chung Hsing University, MIS.

      Jul 2006 - Jan 2007
      Assistant Engineer

      ・Participate in Water Resources Agency’s Decision Supporting System with college teachers.・Develop J2EE with Java Servlet & JSP dynamic web page.・Setting up Apache Tomcat and Microsoft IIS Web Application Service.・Developing Web Service Clients and Servers using Apache Axis.・Database management with MS SQL.

    • AboveE Technology Inc.

      Aug 2011 - Feb 2014
      Software Developer

      ・Develop user customized electric applying form. Such as leaving application form, insurance customer service reporting system flow process and verification form design. ・Installing or adjust AboveE BPM product related configuration and customize user product requirements.・Batch programs design for organization data synchronize with HR system.・Develop user’s query or reporting system.

    • WebComm Technology 偉康科技

      Feb 2014 - Sept 2015

      ・Discuss and share coding experience with other programmers, solve technical problems and adopt new technologies to ongoing project.・Clarify or construct the system hierarchy by UML methodologies and Design Patterns. ・National Treasury Administration system development, maintain, modifying and refactoring user change requirement.・Benesse Taiwan Inc. CRM System architecture design, standard common libraries and API development. Solving technical difficulties like encoding conversion, ftp file receiving mechanism, environment test or developing problems.・Provide coding suggestions and sharing my advice or experience with other junior programmers when they encounter program design problems.

      • Technical Supervisor

        Jul 2015 - Sept 2015
      • Senior Software Developer

        Feb 2014 - Jun 2015
    • Ruckus Networks

      Sept 2015 - Feb 2022

      1. Co-work with feature development team which includes frontend and backend engineers. My expertise lies in server backend so most of the time I’m leading backend team development and provide suitable RESTFul APIs for frontend’s requirement. Furthermore, give advisement once the conflicts happened between frontend and backend. ・Develop application service with third party framework of Spring Core, Spring Boot, Spring Integration, Spring Reactor, Spring Security, Netty, Ehcache, Orika and all the other backend related APIs. Follow the design principles of SOLID or appropriate design pattern depends on the situation.・Data exchanging by UnixDomainSocket, TCP Socket or MQTT message broker. Apply to Google Protocol Buffer for better message transmission throughputs and minimize the size of message compare with JSON.・Multi-threaded programming and management with Java 8 Completable Future and ExecutorService APIs.2. Co-work with system team to deal with scaling problem with the monitoring tool of Grafana.・We use Collectd to report all the required statistics to Grafana server in order to compare and check the health status while our system is in the full loading environment.・Monitor the Disk IO, Network traffic, document size in database or message throughput via various metrics of counter, gauge or timer for estimation and find out the reasonability of scaling tool condition.・Find out the root cause of Java application OOM error by the generated heap dump file with the tool of YourKit or Eclipse Memory Analyzer. Show less Java backend service application development on Linux system, performance tuning and multi-thread task managing.Monitor the memory usage by JConsole and JMX Bean to monitor or control the application status.Use open sources as third party libraries : Spring Framework, Hibernate Validator, Cassandra Database, MQTT…etc.Responsible for new feature develop with Design Patterns and UML methodologies. Furthermore, I have also helped to figure out the root cause of OutOfMemory issues observed on Java application and performance enhancing with Non-Blocking technics such as Netty, Servlet 3.0's asynchronous restful API and Spring reactor. I also take the advantage of Spring Integration and Spring Boot in new Java applications development on Linux in order to support highly scalability and easy maintaining feature on the application. Show less

      • Principal Software Engineer

        Jan 2018 - Feb 2022
      • Software Engineer

        Sept 2015 - Dec 2017
    • Lookout

      Feb 2022 - now
      Staff Infrastructure and Application Engineer
  • Licenses & Certifications

    • Oracle Certified Professional, Java SE 6 Programmer

      Oracle
      Feb 2011