Joseph Chan

at Harmonic
  • Claim this Profile
Contact Information
us****@****om
(386) 825-5501
Location
Hong Kong SAR, HK

Topline Score

Topline score feature will be out soon.

Bio

Generated by
Topline AI

You need to have a working account to view this content.
You need to have a working account to view this content.

Experience

    • United States
    • IT Services and IT Consulting
    • 1 - 100 Employee
      • Oct 2021 - Present

      Developed a 24x7 cloud based on-demand media monitoring SaaS on Azure■ It is an auto-scaling service based on loading, scale-to-zero is supported to achieve low maintainance cost■ Incidents are reported to SRE through pager duty when compliance check (eg: availability, synchronization, or latency etc.) failed■ Responsible for fullstack development from backend to frontend, ie. VueJS, NodeJS (Typescript), Golang, Okta Oauth, GraphQL, Azure Cloud Services (eg: Cosmos DB, Function, Log Analytics and Container Instance etc.), PagerDuty, Distributed System, Auto Scaling, OTT, JWT Token■ Accomplishment: Delivered a working prototype within 2 weeks, and a stable release within 2 monthsLed the migration of Protractor based E2E tests to Webdriver.IO for more than 30 CI modules■ Studied on Protractor alternatives(eg: WebDriverIO, Cypress, Karma, NightwatchJS, TestCafe etc.) to find out which framework is the best fit of vast amount of existing E2E tests■ Prepared and planned a detailed migration roadmap for global SDETs and scrum teams across 4 countries with minimal impact to existing product(s) release cycle■ Invented a way to migrate protractor-based page objects gradually to Webdriver.IO based on the actual tests migration progressConsistently reviewing the security aspect of SaaS applications■ Discovered 2 critical vulnerabilities (including remote code execution) which could cause complete take over of entire K8s cluster■ Accomplishment: The first one (from non-security team) to discover vulnerabilities on the SaaS product Show less

      • Oct 2018 - Sep 2021

      Development lead of a high performance OTT(HLS, DASH, MSS) validator for integration/E2E tests on core OTT modules■ Collaborated with Developers across 3 R&D centers to adopt new OTT features, eg: low latency, CMAF, OTT thumbnail, Dash-If ISO validations, SCTE35 DAI■ Developed a GoLang high-performing OTT Capturer(like tcpdump) to support dumping live OTT into static capture for analysis■ Developed a dockerized OTT playback validator to ensure E2E compactibility with different players■ Developed a GoLang SCTE35 signal decoder library (Open Sourced)■ Accomplishment: The validator is executed million times on CI and local environment, while 0 Jira bug tickets is reported in most of the monthsResponsible for CI/CD Integration of OTT player SDKs on multiple platforms■ Designed and implemented the integration test frameworks on Android (Kotlin), IOS (Swift) and Web (NodeJS) from ground up■ Invented a new tool (OTT Live Emulator/Replay) for testing player features efficiently resulting in 90% test execution time reduction■ Enabled Continuous Integration(CI) with Bitbucket, Jenkins, Bamboo, and SonarQube■ Enabled Continuous Deployment(CD) for publishing app/sdk to PlayStore, AppStore, NPM, and MavenDeveloped an award-winning web-based remote desktop application■ Developed high performance client-server logic with multiplexing using GoLang■ Supported Web Terminal, Web File Browser, Web VNC, and SSH tunnel for port forwarding■ Accomplishment: The util is enabled on more than 20 CI modules, and helped scrum teams to troubleshoot issues happens in CI/CD builders on different subnetsBeing a firefighter to deliver urgent features to high-profile client■ Developed a SaaS app to extract Live OTT(HLS, DASH) to static VOD stored on cloud storage■ Responsible for the whole pipline: from implementation, tests, CI, to adhoc troubleshooting■ Developed a handy troubleshooting tool for probing SCTE35 on Live OTT■ Accomplishment: Delivered the project within 1 month Show less

      • Oct 2016 - Sep 2018

      Delivered test automation for a large-scale kubernetes-based media transcoding and streaming SaaS (VOS) in Continuous Integration manner■ Managed test plans and functional coverage for every OTT features to be released by a dedicated Scrum team■ Enabled Java code coverage reporting with SonarQube, and integrated code coverage checking for every bitbucket pull requests to ensure the coverage does not drop■ Implemented E2E tests based on Protractor(Selenium) and JasmineReduced the product CI release latency by reducing the time-to-fix of a core module■ Implemented auto log collection to cut the time for reproducing flaky E2E tests■ Proactively engage to troubleshooting flaky tests. Identified some long existing hidden issues caused by java deadlock, builder network misconfiguration, and network instability etc.■ Accomplishments: Reduced the daily maintenance effort by 80% for the scrum teamPerformed semi-auto scalability test for VOS SaaS transcoding and OTT packaging platform with hundreds of AWS EC2 instances■ Closely coordinated with agile teams for detailed test cases, and collaboratively resolve problems during the test execution■ Used AWS CloudFormation for cluster deployment■ Implemented nodejs libraries for batch services setup, clusterized resource utilization monitoring via Prometheus, debug log collection via ElasticSearch, as well as generating graphical report for data visualization■ Implemented Jmeter script for performance testing on OTT media delivery endpoints■ Prepared a comprehensive report documenting all issues observed in the large scale setup Show less

      • Jul 2014 - Sep 2016

      Responsible for writing, presenting, executing test plans(by automation) for a cloud-based media transcoding SaaS product (VOS), and a file-based Workflow Transcoder Engine (WFS)■ Developed automated test scenarios / cases for testing new transcoding and packaging(OTT) features■ Wrote detailed bug reports (JIRA) as soon as they are found and propose severity and priority for fixing■ Implemented a Windows GUI automation library written in C# for products that do not have API■ Developed a C# multi-nodes agent to execute automated tests concurrently to accelerate the release cycle■ Increased code coverage by inventing a Java fuzzing tool to randomly generate test data based on product schemaMigrated two in-house media validators (TxMould, HATS) to SaaS cloud architecture(VOS) for scalability■ Dockerized the media validators for cloud migration■ Implemented an VOS cloud native application with RestAPI on the Java Spring framework■ Implemented validation jobs scheduling logic based on Apache Mesos and Zookeeper■ Integrated with multi-nodes shared file system (CephFS) for storing validation outputsPerformed fuzz test on a C++ core media decoder to discover potential vulnerabilities■ Instrumented the C++ module with AFL fuzzer■ Analyzed the exception cases with segmentation fault■ Performed static code analysis to find out the root causes and propose proper fixesFeasibility study of filtering unrelated test cases based on code changes, attempting to reduce the time of release cycle■ Integrated a 3rd party test case filtering service(Sealight) based on machine learning approach into our Java application with lots of tests■ Worked closely with the 3rd party service provider for CI integration, and evaluating the actual improvement to our overall release cycle■ Prepared a comprehensive report for decision making at upper management Show less

    • Hong Kong
    • Higher Education
    • 700 & Above Employee
    • Student Research Assistant
      • Jul 2013 - Oct 2013

      Responsible for preparing the course materials of a mobile app programming course ■ Being close liaison with professors in designing the course materials for “COMP7506 Smart Phone Apps Development” ■ Developed two innovative apps of iOS and android for demonstrating HOW-TO design the GUI and establish Client-Server communication ■ Prepared structured guidance notes to guide students in developing the tutorial apps Responsible for preparing the course materials of a mobile app programming course ■ Being close liaison with professors in designing the course materials for “COMP7506 Smart Phone Apps Development” ■ Developed two innovative apps of iOS and android for demonstrating HOW-TO design the GUI and establish Client-Server communication ■ Prepared structured guidance notes to guide students in developing the tutorial apps

    • Egypt
    • Human Resources
    • 1 - 100 Employee
    • Software Developer
      • Dec 2011 - Jun 2013

      Delivered two freelance projects with appreciation from customer Website Development ■ Developed a company website with PHP, HTML, and JS ■ Integrated the website with an open source Content Management System(ImpressPages) ■ Extended the open source CMS to include extra features: sales quotation, mailing, and search etc. ■ Helped registering the DNS domain and deployed the website to hosting provider Backend System Engineer (Travel Agency) ■ Reverse engineered an old source-code-encrypted backend system (PHP) ■ Re-engineer outdated database structure to adapt new features in the accounting system, sales reporting and ordering system ■ Migrate the legacy data to new database(MySQL) ■ Hold monthly syncup meeting with the customer to find out all hidden functional/non-functional requirements of the encrypted parts ■ Received the letter of recommendation from customer Show less

Education

  • The University of Hong Kong
    Master of Science (MSc) in Computer Science, Financial Computing Stream
    2017 - 2019
  • The University of Hong Kong
    Bachelor of Engineering (BEng), Computer Science
    2011 - 2014
  • Foundation for Traders
    Trading Theories
    2021 - 2022

Community

You need to have a working account to view this content. Click here to join now