Note to Recruiters
How & When to Contact Me
- Please contact me only via email, and only at the address listed at the top of the page.
- Please pay special attention to my areas of interest, and the qualities that I look for in an organization. List which ones apply to your organization.
- Please state the exact title and the exact organization you are recruiting for, which specific city would the role be in, and whether working remotely is an option.
- Please provide as many specific details as you can about the particular role you are offering me in your email. This will determine whether I will respond to you or not.
- My resume is available on request.
- Do not try to connect with or message me on LinkedIn.
Areas of Interest
- Compiler toolchains: Examples would be work on the compilers for both new and old programming languages as well as on their supporting standard libraries. Role in language development committees would be a bonus.
- Computer networking: Typical work would be developing and implementing new protocols, reducing hardware costs by making the network more efficient, and making the network fault tolerance.
- Computer vision: I am not interested in deep neural nets; I would, instead, focus on topics like Computational Photography, image enhancement, efficient storage of image datasets.
- Database engine development: This is about implementing database engines themselves, as opposed to using off-the-shelf databases in an application.
- Hardware-accelerated computing: Use of FPGAs, ASICs, and special-purpose hardware for improving performance and energy efficiency in networking, machine learning, and security applications.
- Operating system kernel development: Examples include adapting the Linux kernel or one of the BSD kernels to your company's specific workload, developing and mainlining patches or enhancements, and writing open sourced device drivers for upcoming hardware.
Not Interested In
- Advertising and marketing platforms
- Data analytics
- Financial trading
- Frontend development
- General machine learning
- Quantitative finance
- Social and gaming platforms
What I Value in an Organization
- Software Engineering Focus: I am only interested in organizations whose primary products are computer software or hardware, and where the majority (i.e. >50%) of the employees are software engineers.
- Freedom to Work on Personal Projects: I require the freedom to work on personal projects (open source or otherwise), in my free time, with my own resources. I will require legal releases, before starting, to own any IP I thus create. Ambiguity regarding this is a deal-breaker.
- Work-life Balance: The regular 40-hour work week should be the norm with no expectations for overtime. I will not carry a pager more than two weeks in a quarter, and I expect to be duly compensated for on-call work.
- Financial Stability: The organization must already be making a profit, and have well-charted funding and expansion plan for the next 5 years. You must describe it to me in you email.
- Well-defined Vacation Policy: Unlimited vacation policies are a big red flag to me because they are clearly misleading. Your vacation agreement should be well-defined and I should be able to take vacation and sick-time solely at my descretion.
My Background in Computer Science
Academics & Research Work
I was previously a student at Cornell University, from where I got my Bachelor of Science degree, and, subsequently, my Master of Science degree, both in Computer Science.
I was a teaching assistant for a variety of 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|
Experience in the Industry
Google Cloud Platform
June 2017 - Present
Mountain View, CA
Menlo Park, CA
Enhancing performance-critical components (Watchman) of version control systems (Git and Mercurial).
San Bruno, CA
Optimizing a multi-terabyte pipeline for a recommendation engine for YouTube Mix.
New York, NY
Developing parts of the frontend and the backend for an internal application with a complex No-SQL datastores.