🎙️

Jacky Wang

Jacky Wang developed DxChain Network’s public blockchain focusing on storage service. He built mainnet deployment, light client implementation, watchdog monitoring, DPOS consensus, and storage contract. Jacky holds a Physics bachelor’s from Fudan University and an Electrical and Computer Engineering master’s from University of Arizona.

Jacky enjoys writing beautiful and clean code. In leisure time, he spends time singing Chinese pop karaoke, hiking Lake Chabot twice a week, and watching drama movies like “Three Billboards”.

Jacky Wang entwickelte die öffentliche Blockchain von DxChain Network mit Schwerpunkt auf dem Speicherdienst. Er hat die Mainnet-Einführung, die Light-Client-Implementierung, die Watchdog-Überwachung, den DPOS-Konsens und den Speichervertrag entwickelt. Jacky Wang hat einen Bachelor-Abschluss in Physik von der Fudan University und einen Master-Abschluss in Elektrotechnik und Computertechnik von der University of Arizona.

Jacky liebt es, schönen und sauberen Code zu schreiben. In seiner Freizeit singt er chinesisches Pop-Karaoke, wandert zweimal pro Woche am Lake Chabot und sieht sich Drama-Filme wie "Three Billboards" an.

Upcoming Plans

  • Monthly Deliverables: 2021 Oct
    • Keep testing stream sync protocol. Fix bugs and problems and (hopefully) deploy to testnet for further test.
    • Code design, review and local test of liquidity staking in core protocol.
    • White paper, pitch deck, and demo for NFT^2 project.
  • Quarterly Milestones: 2021 Q4
    • Have stream sync protocol tested and deployed to Mainnet.
    • Product full design and implementation for Harmony liquidity staking.
    • Product testnet launch for Harmony liquidity staking.
  • Yearly Planning: 2022 Q1 - Q3
    • Product launch for NFT^2 project
    • Product launch for Harmony liquidity staking
    • Resharding

Achievements in 2021 Q2-Q3

  • Optimize and fix for spamming attacks from p2p network
  • Optimize and migrate explorer db performance
  • RPC performance optimization and fix

2021/10/26

  1. Continue debugging for stream sync.
    1. The previous found suspect do impact CPU (very occasionally), but it is still not the root cause. The nodes dies after 3 days' running...
    2. The next suspect is... still the discovery protocol... Keep researching
  2. Research for design for liquidity staking
    1. Looked into the implementation of Lido, StaFi, and bLuna.
    2. Lido and StaFi almost use the same implementation. The final derivative token is a token with increasing intrinsic value (in unit of deposit token), which is not the perfect candidate for DeFi products because of Impermanent loss
    3. Starting to talk to Lido / StaFi team.
  3. Core protocol change for liquidity staking
    1. Discuss, track, and help with core protocol change for staking precompiles.
    2. Code review for https://github.com/harmony-one/harmony/pull/3906 (Finished two rounds, third round in progress)

2021/10/19

  1. Continue working on stream sync. Found a suspect for CPU explosion
    1. The problem lies in two peers sending out the INIT package in two end's streaming protocol because of the immediate discovery after stream number is lower than lower threshold. And this will fail the stream setup and result in a large number of discovery and stream setup operations (which is heavy)
    2. Have reproduced the issue in two nodes in different regions resulting in high CPU cost (which is a hipe, not a slow growth).
    3. Starting with the fix - Adding a cooldown mechanism in discovery and stream manager.
  2. Proceed with liquidity staking
    1. Code review and discussion with xiaopeng
    2. Discussed over signature of the precompiles, as well as the gas issue.

2021/10/08

  1. Working on stream sync. First looking at the potential memory / CPU leak. Running two machines running customized code on mainnet with stream sync turned on. The customized code include:
    1. Frequent discovery call (10s/discovery).
    2. Unstable stream sync protocol (injected error in stream sync, occasionally fail)
    3. The result remains to be observed.

  2. Finished code revisit and RPC fix concerning stream sync.
  3. Next step is to
    1. Investigate the CPU / memory leak
    2. Spin up stressnet for reproducing the stucking short range sync.