Akshay Agrawal

A picture of Akshay.

Ph.D. Candidate in Electrical Engineering, Stanford University
M.S., B.S. in Computer Science, Stanford University
[email protected]

Github / Google Scholar / Twitter / LinkedIn / Resume / Blog


I am a second-year Ph.D. student at Stanford University, where I am advised by Professor Stephen Boyd. I conduct research in convex optimization and machine learning; I'm also passionate about building domain-specific languages for both. I am a principal developer of CVXPY, a domain-specific language for convex optimization that is used by many universities and companies. Previously, I was a full-time software engineer on the Google Brain team, where I worked on TensorFlow 2.0 and the core TensorFlow runtime.

If computer science is my first passion, then writing is my second: I served as a writer and investigative news editor for The Stanford Daily, and I blog at debugmind.com.

I graduated from Stanford in 2017 with a B.S. and M.S. in computer science and a minor in mathematics. I am currently supported by a Stanford Graduate Fellowship.



I am available for consulting related to CVXPY and TensorFlow, as well as mathematical programming and machine learning more broadly. Contact me to schedule an initial consultation.

I have industry experience in designing and building software for machine learning (TensorFlow 2.0), motion planning and control for autonomous vehicles, and performance analysis of Google-scale software systems.

From 2017-2018, I worked on TensorFlow as an engineer on Google Brain team. Specifically, I developed a multi-stage programming model that lets users enjoy eager (imperative) execution while providing them the option to optimize blocks of TensorFlow operations via just-in-time compilation.

I honed my technical infrastructure skills over the course of four summer internships at Google, where I:


I spent seven quarters as a teaching assistant for the following Stanford courses:


Technical Reports