Work
An informal record of my work with some personal commentary. Most of my career has been around compilers/parsers and backend services with a sprinkle of UI programming.
This page includes projects and tools I’ve worked on professionally.
Keploy
Tools: Golang (for backend services), GraphQL, Typescript, NextJS, MongoDB
An AI-powered platform for automatic test generation for unit, integration and API testing. I joined as an intern and received a return offer as a full-time engineer.
As part of the API testing team, I worked on backend services in Go and GraphQL, along with their corresponding UI. Beyond feature work, I contributed to DB query optimizations, product consistency by writing Playwright tests and particpated in on-call rotations.
DeepSource
Tools: Golang (for compiler tooling), Tree-sitter
A YC backed AI code review and code-health monitoring platform. During my time here, I worked on Globstar, an open-source static analysis toolkit.
This is where I first worked with parsers and PLT for industry use-cases. As an intern, my contributions spanned scope-analysis for Python, a language agnosic reachabaility analysis engine and implemented vulnerability checkers for Python, Java and more.
RISC-V
Tools: OCaml, Sail, Assembly
RISC-V is a modern, open standard instruction set architecture for microcontrollers and embedded systems. I joined as an LFX mentee to work on improving extraction of information for the JSON backend.
I was part of the Sailing Downstream II project which was an effort in creating tooling/software for the Sail language and integrate with other existing projects. My work involved in parsing the Sail language and get data to create a JSON dump that could be used as database for future efforts.
Inria
Tools: OCaml, Menhir, OCamllex, C++
Worked as an intern, contributing to Coccinelle, a program matching and transformation engine. I got my first exposure to parsers, static analysis and functional programming here.
I was involved in adding support for C++ parsing in Coccinelle.