Education
- Ph.D. in Washington State University, Pullman, USA, 2023 (expected)
- B.S. in Huazhong University of Science and Technology, Wuhan, China, 2007
Work experience
- Washington State University, Research Assistant ------ Aug 2019 – Now
- Research on program analysis for security applications to multilingual software
- HUAWEI Research Institute, Module design engineer (MDE) ------ Jan 2015 – Nov 2017
- Responsible for technical design for system support team.
- Design and develop the project of ONT device virtualization/IOT device management plug-in (smart home).
- Served as an internal Open-Source Committer at HUAWEI.
- ZTE Research Institute, System engineer ------ Jun 2010 – Dec 2014
- Responsible for technical design for DPI team.
- Design and lead the development of high-performance regular compilation and matching engine, network flow classification system and security components (e.g., Spam/DDoS detecting & blocking.)
- NEUSOFT, Software engineer ------ Jun 2007 – Apr 210
- Design and lead the development of compiler of gis map for vehicle navigation.
- Participate and pass the certifications of CMMI level 3 and BMW SPICE level 2 as a team leader (10 people).
Services
- Reviewer – European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE)
- Reviewer – Network and Distributed System Security (NDSS)
- Reviewer – Transactions on Dependable and Secure Computing (TDSC)
Awards
- Outstanding Research Assistant, 2023, EECS/WSU
- Ranked top 30 developers, 2017, HUAWEI Research Institute
- Excellent New Employee, 2015, HUAWEI Research Institute
- Excellent Employee, 2013, ZTE Research Institute
- Excellent Employee, 2008, NEUSOFT
Skills
- Programming Languages and Experiences
- C: Professional. Rich experience in design and development of large commercial embedded and application software (Over 200 KLoC).
- C++: Skillful. Rich experience in development of large applications (Over 100 KLoC).
- Python: Master. Understand the principle of Python interpreter, and skilled in using Python to develop applications (Over 10 KLoC).
- Java: Master. Understand the principle of JVM, and skilled in using Java to develop applications (Over 10 KLoC).
- Technologies and Development Environments
- Pattern Matching / Linux(kernel) / JVM-CPython / Network Protocol Analysis / Memory Database / Network Flow Classification / LLVM-SOOT
Publications