Santa Clara, California, United States
Backend developer, working on leveraging automation and AI to simplify user flows in Google Workspace.
Backend developer for Google Voice, focusing on VoIP calling and reliability on the server side.
I led the team that develops Cornell's in-house Course Management System (CMS), a website that allows instructors to publish and grade assignments, manage students and grades, and much more. CMS is used by over 8000 students and course staff; I have overseen over 100 new pull requests, features and bugfixes that have had a positive effect on end-user workflow, including fixing a critical data-loss bug that affected many of our users. Other than writing code, my responsibilities included managing other developers and subteams, and setting an overall direction for the team's effort. The codebase uses Java with JPA/MySQL for the backend, and JSP with JavaScript/HTML for the frontend.
Part of the development team working on the Fabric programming language. I helped to implement a pipeline optimization for Fabric's two-phase commit process, with the goal of improving the performance of distributed transactions that may run on multiple worker and store nodes. I worked with Tom Magrino and Andrew Myers.
I worked as a teaching assistant for the course CS 3110 (Functional Programming and Data Structures). I taught a discussion section of about 30 students twice a week, where I presented material covered in the course in more depth and worked with the students to help them master it, and help them with the fundamentals of OCaml. I graded my students' assignments and recitations once a week, providing direct feedback in order to help them improve their programming skills and their grade.
I worked on the backend of Google Voice, implementing a service to help improve user satisfaction with the application by streamlining the feedback submission process. I worked with the frontend team and successfully implemented the Android UI for my feature as a stretch goal; I quickly and effectively ramped up and learned the Android development workflow, having never written Android code before. I created, presented and received approval for a detailed API design, including endpoints, storage and security/privacy considerations. I worked with engineers, PMs and designers, coordinating and generating ideas, and in general pushing the project forward. I also participated in ongoing team efforts unrelated to my main project, such as creating the first integration test for a critical service dealing with call media, and contributing to the central Java MapReduce library used by hundreds of teams.