I'm an MIT alum (grad 2020) with ~2 years' experience in machine learning research at MIT's Center for Brains, Minds, and Machines. I also have professional experience in performance software design and engineering, data modeling and analysis, mechanical systems simulation, and electronic systems fabrication.
To solve problems, I enjoy starting from scratch. Computer science is a powerful tool: a way of turning time, money, and know-how into solutions. I try to remember that every problem starts to look like a nail, once I've wielded the computer as a hammer long enough. Effective solutions always include relying on the knowledge, time, and people at hand - not just computational power - moving focus onto communication, in addition to engineering. As much as I like starting from scratch, I try to ask: am I inventing a new way to solve a solved problem? Or better still: am I solving a problem that doesn't need to be solved?
In that pursuit, I've written: webclient code in Javascript; GPU libraries in CUDA C and CUDA-python; GUI interfaces in C#; parallel, asynchronous, and concurrent code in python, C#, C++, and Java; docker files, apptainer scripts, and CI testing configurations in bash; a python-based web server; a mechanical model in MATLAB; ML models on AWS and MGHPCC; 3D designs in fusion 360; and built with Pytorch, Tensorflow, gcc, nvcc, Numba, Numpy - whatever fits the problem at hand.
For the past ~2 years, I've been employing these tools to design, evaluate, and interact with, novel computer vision model-architectures - and investigate hypotheses about the fundamental structure of image data (and by extension, how we generally capture the structure of data).