Information for Recruiters
- I am not actively looking to switch jobs at the moment.
- Contact me only via email, and only at the address listed at the top of the page.
- Please pay close attention to the following sections as it will save us both a lot of time and ill will:
- Do not try to connect with or message me on LinkedIn.
- Provide specific information in your emails about the role, team, project(s), location, company, and base pay. I won’t respond otherwise.
What I Like to Work on
These are examples of things I would be interested in working on.
- Computer networking: Designing, implementing and testing new protocols, reducing hardware costs, making the network more efficient, and making the network fault tolerance.
- Content delivery systems: Designing and implementing a new system that manages data in flight. Examples would be systems supporting streaming services, asset caching systems, etc.
- Data storage engine development: Creating new database engines tailored to the needs of the organization.
- Hardware-accelerated computing: Using FPGAs, ASICs, and special-purpose hardware for improving performance and energy efficiency in networking, security, and machine learning applications.
- Operating system kernel development: Adapting the Linux kernel to a specific workload, developing and mainlining patches or enhancements, and writing open source device drivers for hardware devices.
- Programming language toolchains: Contributing to the development of a compiler, an interpreter, standard library, Integrated Development Environment (IDE), or other supporting tools for a programming language.
- Versioned data storage systems: Enhancing source code version control systems such as Git and Mercurial, or a more general system that intends to store multiple versions of the same entity efficiently.
What I Don't Like
If your organization is involved in one of the following activities, that would be an absolute dead-breaker so do not contact me:
- Advertising and marketing platforms
- Blockchains and cryptocurrencies
- Data analytics
- Frontend or user-interface development
- General machine learning
- Quantitative finance, trading and hedge funds
- Social networks and social platforms
Prerequisites for the Organization
Note: Unless you mention how your organization stands with respect to all of these topics, I’m not going to respond to you.
- Located in the Bay Area: I live and work in the San Francisco Bay Area and, so, your organization must be located there. I’m not going to move elsewhere.
- Not a Startup: The organization should be a public company that is showing a net profit.
- Selling a Software Product: I’m only interested in purely software organizations. Therefore, no trading firms, hedge-funds, insurance companies, or news/media.
- Freedom to Work on Personal Projects: I must be free to work on personal open source projects (in my own time, with my own resources) without any interference from your organization’s legal team.
If you have read all the sections above and choose to email me, mention the phrase "Hello world" in your email.
My Background in Computer Science
Academics & Research Work
I was a teaching assistant for a few courses at Cornell:
|2015 Spring||Computer Vision|
|2015 Fall||Computer System Organization & Programming|
|2016 Spring||Computer Vision (as Head TA)|
|2016 Fall||Operating System|
|2017 Spring||Operating System|
My brief research experience involved proposing a benchmarking standard for the P4 platform, using P4FPGA as a prototyping system for it.
Experience in the Industry
Google Cloud Platform
June 2017 - Present
Designing and implementing components of VPC Service Control for GCP services and Context Aware Access for GSuite.
Menlo Park, CA
Enhancing a performance-critical component (Watchman) of version control systems.
Optimizing a multi-terabyte pipeline for a recommendation engine for YouTube Mix.
Developing parts of the frontend and the backend for an internal application with a complex No-SQL datastores.
- Good Knowledge: Python, Java, C, Git, Mercurial.
- Some Knowledge: Go, Rust, OCaml, OpenCV, Numpy.