Welcome to my homepage.

I work on programming language and compiler technologies for machine learning systems on the Google Brain team. Apart from engineering I enjoy reading bits of theoretical linguistics and doing accents.

Publications

  1. “A modern compiler framework for neural network DSLs”
  2. “A modern compiler infrastructure for deep learning systems with adjoint code generation in a domain-specific IR”
  3. “DLVM: A modern compiler infrastructure for deep learning systems”
    • Richard Wei, Lane Schwartz, and Vikram Adve
    • Pre-print

Contributed Talks

  1. “DLVM: A Compiler Framework for Deep Learning DSLs”
  2. “A modern compiler framework for neural network DSLs”

Experience

  • Software Engineer, Google Brain, Mountain View, CA, Dec 2017
    • I work on compiler technologies for machine learning systems (TensorFlow & TPU) on the Google Brain team. And I write a ton of Swift.
  • Natural Language Processing & Machine Learning Engineer, Apple Inc., Cupertino, CA, Aug 2017 - Dec 2017
    • Briefly worked on applied natural language processing and localization technologies for Siri.
  • Founder and Architect, The DLVM Project, Dec 2016 - Present
    • Had the idea of a compiled DSL for neural networks in November 2016.
    • Wrote a prototypical standalone DSL called TEL in Swift, and started developing a full-fledged SSA IR (DLVM IR) for tensor computation with native AutoDiff support, in December 2016.
    • Focused on these projects until I graduated 5 months later, with my bachelor’s thesis on DLVM written in May 2017.
    • Paused the development of DLVM in August 2017 before I joined Apple.
  • Research fellow, LLVM Compiler Research Group, University of Illinois, Fall 2016 - Aug 2017
    • Designed and implemented DLVM, a modern compiler infrastructure for deep learning systems.
    • Inadvertently designed logos for ALLVM and DLVM.
    • Deliberately meowed a lot on IRC.
  • CS 421 Course Assistant, Department of Computer Science, University of Illinois, Spring 2017
    • Designed and led the programming assignement “MP6” - Implementing Scheme in Haskell.
    • Favorite comment from students: “MP6 was my favorite CS assignment of all time. I wish I had more time to do it justice.”
  • Software Engineering Intern, Apple Inc., Cupertino, CA, Summer 2016
    • Contributed to Siri speech crowdsourcing tools and NLP.
  • Software Engineering Intern, Qualcomm Inc., San Jose, CA, Summer 2015
    • Contributed to 802.11ac/ax WLAN firmware.
  • Part-time freelancer & contractor, China, 2010-2013
    • I took on and initiated many projects in the following areas, while I was in high school:
      • Embedded systems
      • Digital circuit design and PCB manufacture
      • Smart hardware & wireless accessories
      • Graphic design (print): brand identities, posters and events
      • Darkroom processing
      • iOS & OS X app development

Education

  • University of Illinois at Urbana-Champaign, May 2017
    • B.S. Computer Science & Linguistics
    • Bachelor’s thesis titled “DLVM: A Compiler Infrastructure for Deep Learning Applications”
    • I was never a fan of taking classes.

Miscellanea

  • I don’t know any sort of web development.
  • I like to build reliable software from the bottom up.
  • I am a good cook.
  • I am @rxwei on GitHub.
  • I play the Erhu.
  • I backpack once a year.