My interests lie at the intersection of computational physics, numerical analysis, and software architecture of physical simulation tools. I have always loved physics, math, engineering, and computer programming. My interest in programming began when I was around 10 years old, when I started playing with QBasic. Then I moved on to Visual Basic, Visual C++, and C++98. In high school I took up system administration for the school, learning the Unix way, shell and Perl scripting, and some PHP and MySQL. In college, I learned x86 assembly and began my descension into hardcore C programming, which is my language of choice today.
It was also in college that I learned about nanophotonics, both the fabrication and experimental side as well as the theory and simulation side. I spent my summers in Axel Scherer’s lab doing nanofabrication of photonic devices such as surace plasmon gratings and nanodisk lasers. It was during this time when I independently learned about FDTD and how to write robust simulation code.
In grad school, I chose to pursue pure theory and simulation in Shanhui Fan’s group. I wrote a simulation package for RCWA as well as developed a toolkit for solving 2D photonic crystal problems. I became obsessed with optimization of the underlying numerical algorithms, and led to my interest in numerical linear algebra and robust numerical computing.
Right out of grad school, I joined the Palo Alto Research Center (PARC) as a research scientist, developing simulation tools and performing electromagnetic analysis in the Metamaterials Devices and Applications group.
I am currently at Magic Leap working on diffractive optics simulation and design, optical layout automation, among many other things.
My professional interests lie primarily in applying scientific computing to engineering. I am always trying to find ways to perform simulations faster, more robustly, and more parametrically using bespoke code rather than resorting to commercially available software. Often the payoffs are in orders of magnitude. Here is my current CV.