Senior Software Engineer at Google (2019-12 – Present)
Google Ads – self-serve online advertising platform for search, display, and video ads
- Owned the end-to-end delivery of a budget pacing feature for the Campaign Management platform, building the backend pacing service in Java on GKE and the advertiser-facing dashboard in Angular, reducing advertiser budget overspend incidents by 18% within two quarters of launch.
- Architected the ad candidate retrieval layer of the Auction Engine using Python and Bigtable, sharding keyword indexes across regional clusters to reduce auction response latency by 30 milliseconds while supporting a 20% year-over-year increase in search query volume.
- Designed internal gRPC APIs connecting the Campaign Management platform's targeting settings to the Auction Engine, cutting the time for advertiser targeting changes to take effect in live auctions from 15 minutes to under 2 minutes.
- Built a real-time processing pipeline using Pub/Sub, Dataflow, and Node.js that updated advertiser account balances immediately after each ad auction, resolving billing delays that had previously affected same-day spend reporting for accounts representing millions of dollars in daily ad spend.
- Rebuilt the keyword match type editor in the Campaign Management console using Angular and TypeScript, reducing the average time advertisers spent configuring keyword groups from 12 minutes to 4 minutes across an advertiser base of over 500K accounts.
- Incorporated predicted click-through rate signals from the ads ranking team's machine learning models into the campaign budget forecasting tool, improving forecast accuracy for advertiser daily spend by 15%.
- Automated deployment of the Campaign Management platform's microservices on GCP using Kubernetes and Borg, reducing average release time from 45 minutes to 10 minutes and cutting rollback-related outages by half.
- Launched a negative keyword suggestion tool built on Python and BigQuery that analyzed advertiser search term history to flag irrelevant queries, helping advertisers reduce wasted ad spend by an average of 8% within the first month of use.
- Delivered a self-serve reporting API backed by Spanner, exposing campaign-level CTR, CPC, and conversion metrics, reducing engineering support tickets from internal account teams by 30%.
Software Engineer at Clever Devices (2018-01 – 2019-11)
Real-time transit management and vehicle tracking systems for public transportation agencies
- Developed a real-time vehicle tracking service in Java that ingested GPS location data from onboard bus units, reducing the average delay in dispatcher-facing arrival estimates from 45 seconds to under 10 seconds.
- Built a dispatcher dashboard using React that visualized live bus positions and schedule adherence across a fleet of over 800 vehicles, cutting the time dispatchers needed to identify off-route buses by 40%.
- Integrated a GTFS-realtime data feed into the agency's public-facing arrival prediction system, improving the accuracy of rider-facing 'next bus' estimates and reducing related customer complaints by 22%.
- Optimized SQL Server queries and indexing for the historical ridership reporting module, reducing report generation time for transit agency administrators from several minutes to under 15 seconds.
- Collaborated with QA and field technicians to diagnose and resolve onboard unit connectivity issues, improving overall fleet data transmission reliability from 91% to 98% across paratransit and fixed-route deployments.
Software Engineer at Citi (2014-06 – 2017-12)
Client-facing banking and financial services applications
- Built backend services in Java and Spring for an internal loan processing application, reducing manual data entry steps for loan officers and cutting average loan application processing time by 20%.
- Developed frontend components using React for a client account management portal, improving page load times by 35% and supporting daily use by over 5K internal banking staff.
- Wrote and maintained REST APIs connecting the account management portal to core banking systems, enabling real-time balance and transaction data retrieval for client service representatives.
- Implemented automated regression test suites using Selenium and JUnit for a customer onboarding workflow, reducing production defects reported during quarterly compliance audits by 30%.
- Migrated a legacy reporting tool from stored procedures to a Java-based service layer backed by Oracle, improving report accuracy for regulatory filings and reducing manual reconciliation work for the finance team.