Nihanth Subramanya
Email:   |   Web:
Professional Experience
Firefox Desktop Engineer - Mozilla Oct 2016 - Present
Working with the Firefox privacy and security frontend team to design, implement, and improve usable security features in Firefox.
Firefox Desktop Engineering Intern - Mozilla Spring - Summer 2016
UX improvements around captive portals, including notifying the user of an existing portal, automatic display of login page when appropriate, and better intimation of portal-related network/certificate errors.
Firefox Desktop Engineering Intern - Mozilla Summer 2015
Various improvements to search UIs in Firefox, including implementation of new "one-off" search features for search points in the content process (new tab page and default home page). Landed in Firefox 42.
Google Summer of Code 2014 - Instantbird [blog, proposal]
Implemented asynchronous logging and indexing of chat history files and a UI for searching them.
Google Summer of Code 2013 - Instantbird [blog, proposal]
Designed and implemented an algorithm to rank contacts based on how frequently and recently they have been talked to. An easily accessible "newtab" user interface was created to present the user with a list of chats ordered using this algorithm, allowing fast access to the most desired ones.
Other Open Source Experience
  • Added a few features, including wildcard support for call blacklisting, compact notification dropdown header for low pixel density (LDPI) devices, and the ability to share screenshots immediately.
  • Worked on supporting native graphics resources for LDPI devices
XDA Developers (Android community)
  • Worked on packaging and compatibility of root exploits for a few devices
  • Published a (still active) guide for creating/packaging themes for the T-Mobile theme engine
B.E. (Hons.) Electrical and Electronics Engineering
BITS, Pilani - K. K. Birla Goa Campus, India
Personal Projects
  • biIRC - an IRC bot that allows a user to remotely interact with the machine on which it is running using commands, macros, and if needed, a full shell.
  • NTSpellCheck - phonetic spell check engine for JTextPanes, wrote for use with a text editor I was working on. The algorithm was independently developed.
  • CoNect4 - a Connect 4 game. Includes an AI as well as multiplayer over LAN.
  • Ran FTP, HTTP, and squid proxy servers (secured with chroot jails and more) for multiple users on campus. I was also responsible for running the campus Linux repo server for a semester.
  • I've worked on various small projects and experiments, many of which are on my GitHub.