Wei Zhang

张威

I'm a Software Engineer working on Developer Infrastructure at Facebook, Inc. I'm an ex-Tweep. I finished my PhD in Computer Science at University of California, Irvine. In my PhD years, I worked with Professor Michael Franz in Secure Systems and Software Laboratory. I worked on research projects related to Programming Languages, Virtual Machines and Compilers.

I am a programming language enthusiast, curious engineer and self-proclaimed polyglot programmer. Before joining Twitter, I interned at Oracle Labs building language runtime systems. Prior to UC Irvine, I lived in Sweden for two years and received a MS degree in Computer Engineering from Chalmers University of Technology.

王尼玛说什么来着... 人艰不拆啊...

Projects

I've worked on

Redex is an Android APK optimizer written in C/C++. As its name suggests, Redex shrinks the Dex files in an APK. It not only optimizes the bytecode instructions but also minimizes the metadata used to encode the program structure. I built a number of type system analysis based optimizations.

ZipPy is a fast and lightweight Python 3 implementation built using the Truffle framework. ZipPy leverages the underlying Java JIT compiler and compiles Python programs to highly optimized machine code at runtime. My PhD thesis came out of it.

SubstrateVM or Native Image is an ahead of time compiled Java Virtual Machine developed at Oracle Labs. It tries to use the Graal JIT compiler as the LLVM for Java Apps. I contributed to the project during my internships at Oracle Labs.

Publications

  • Wei Zhang, Per Larsen, Stefan Brunthaler, Michael Franz. Accelerating Iterators in Optimizing AST Interpreters. In Proceedings of the 29th ACM SIGPLAN Conference on Object Oriented Programming: Systems, Languages, and Applications, Portland, OR, USA, October 20-24, 2014 (OOPSLA '14), 2014. [Download as PDF] [Slides] .
  • Gülfem Savrun-Yeniçeri, Wei Zhang, Huahan Zhang, Eric Seckler, Chen Li, Stefan Brunthaler, Per Larsen, Michael Franz. Efficient Hosted Interpreters on the JVM. In ACM Transactions on Architecture and Code Optimization, volume 11(1) pages 9:1–9:24, 2014. [Download as PDF].
  • Gülfem Savrun-Yeniçeri, Wei Zhang, Huahan Zhang, Chen Li, Stefan Brunthaler, Per Larsen, Michael Franz. Efficient Interpreter Optimizations for the JVM. In Proceedings of the 10th International Conference on Principles and Practice of Programming in Java, Stuttgart, Germany, September 11-13, 2013 (PPPJ '13), 2013. [Downloaded as PDF].
  • Wei Zhang. Effcient Hosted Interpreter for Dynamic Languages. PhD Thesis, University of California, Irvine, June, 2015. [Download as PDF].

Talks

  • Efficient Hosted Interpreter for Dynamic Languages. PhD Defense Talk at UC Irvine, Spring 2015. Slides.

  • Accelerating Iterators in Optimizing AST Interpreters. OOPSLA, Portland, OR, Fall 2014. Slides.

  • ZipPy on Truffle. Tech Talk at Oracle Labs, Redwood Shores, CA, Summer 2014. Slides.

  • ZipPy: A Simple Python 3 for the JVM. SoCal Programming Languages and Systems, Fall 2013. Slides.

  • Modular Virtual Machine Architecture on a Meta-Circular JVM. Advancement Talk at UC Irvine, Fall 2011. Slides.

什么的都是浮云...      
欢迎各厂招工啊...      

Links