Sanjoy Das

sanjoy@playingwithpointers.com; https://linkedin.com/in/sanjoydas; Sunnyvale, CA.

Work History

Software Engineer, Azul Systems, Sep 2013 - Present

At Azul Systems I work with with an exceptional team of engineers building a high performance LLVM-based JIT compiler for Java. Over the course of the project we have made significant changes to LLVM to better support managed languages – at a high level, we’ve added support for precise compacting garbage collection, deoptimization, and have improved LLVM’s mid-level optimizer to better optimize Java. Most of our work has been upstreamed to LLVM, and we have presented talks summarizing our progress in the 20141 and 20152 LLVM Developer Meetings.

Contributor, LLVM, Oct 2014 - Present

I’m heavily involved3 with the LLVM community, mostly focusing on improving the mid-level optimizer and support for managed languages. I’m currently the code owner for the Scalar Evolution and Induction Variable Simplification passes. I regularly review code and participate in design discussions.

Software Engineering Intern, Google, May 2012 - July 2012

As an intern, I worked on the V8 Javascript engine. My project was to move some of the more time consuming phases of V8’s optimizing JIT, Crankshaft, onto a second thread. The project was a success, and by the end of the internship I had this feature implemented and checked in under an off by default flag4 (which was enabled by default sometime in mid 2013).

Skills

The main focus of my professional history has been compilers and virtual machines. In general, I look forward to tackling hard technical challenges that demand creativity and precision.

Education

2008-2013

Bachelor of Science, Master of Science; Mathematics & Computing;

Indian Institute of Technology Kharagpur, India.