Full-stack Developer2019 - PRESENTSelf-Employed
- Contributed to pipelining software for distributed software flows. Implemented containerization, ensuring distributed workflows could be run in predictable environments on a fleet of AWS machines.
- Created middlelost.com, an online-only poetry journal.
- Wrote legislython, an API for Congressional voting data.
Software Engineer2018 - 2019
Technologies: Google Mock (GMock), gRPC, Python, C++
- Led internationalization efforts for visual search in Google Lens. I expanded support for shopping and other verticals to Chinese, Korean, and Japanese languages via improved tokenization and part-of-speech detection.
- Helped integrate geolocation data into visual search, allowing visual search to identify nearby locations more accurately.
- Applied semantic information from ML models and static ontologies to improve information retrieval recall for visual search.
- Strategized with other engineers how to handle right-to-left scripts, e.g. Perso-Arabic, when overlaying translated text in Google Lens.
- A/B tested changes to retrieval model. Assessed user comparisons of outputs to determine whether a proposed algorithm change would positively affect quality.
Software Developer2017 - 2018Self-employed
Technologies: Redux, React, Docker, Python, C++
- Contributed to MiPandas, a genomics data visualization interface. Created visualizations in React/Redux and served data from a Flask back end. Dockerized the application.
- Wrote a language detection system for hospitals using PocketSphinx. This system leveraged an acoustic model with support for the union of phonemes in 10 different languages, then classified the resulting phonemes.
- Built a website for a Persian cultural center. I used WordPress to prototype a front end quickly, then added some additional functionality by wrapping a Flask back end.
Software Engineer2014 - 2017
Technologies: Borg, TensorFlow, Python, C++
- Built an LSTM-based model to predict nonce compound words in German. This improved the orthographic accuracy of Google's state-of-the-art ASR system and paved the way for similar normalization in other languages.
- Found new data sources and experimented with different preprocessing and sampling to improve automated speech recognition performance in over sixty languages, including a WER improvement of 33% in Hindi.
- Enabled state-of-the-art language models in over one hundred languages for GBoard.
- Spearheaded the incorporation of Google's Keyboard language model pipeline into the speech team's infrastructure. Wrote unit and integration tests to make the Keyboard pipeline more robust.
- A/B tested new language models. Assessed user comparisons of outputs to determine whether a proposed algorithm change would positively affect quality.