# Martin Cai > Software Engineer at Google Location: San Francisco Bay Area, United States Profile: https://flows.cv/martincai I'm a software generalist with experience in mobile app, full stack, backend, large scale data processing, and system software. That said, I have more experience and interest in full stack/backend and I would like to work on them as opportunities come. ## Work Experience ### Software Engineer @ Google Jan 2023 – Present ### Software Engineer @ Cruise Jan 2023 – Jan 2023 ### Software Engineer @ Everyday Robots Jan 2021 – Jan 2023 | Mountain View, California, United States I worked at the System Software Team. Here are some highlights: - On-robot Full Disk Encryption (FDE, LUKS, TPM, clevis, LVM, Linux): canaried in the robot fleet, analyzed performance metrics (with dashboards), evaluated and reviewed performance impact with cross-team stakeholders, and eventually rolled out with minimal downtime, hardening robot security and protecting intellectual property and privacy. - Simplified and unified RobotConfig (GCL, protobuf, bazel, C++), a schema and system to store params and calibration data for various IPC modules, making it more flexible and manageable. - End-to-end development of PowerManagementModule from scratch (C++) to enable scheduled shutdowns on robots, reducing power consumption and disk corruptions. - On-robot Wifi/Network (Linux, Android, SELinux): improved network availability (supporting IPv6), stability and security (firewall), increasing operation uptime. - Rapid prototyping/experimentation on Wifi RTT localization using IEEE 802.11mc protocol (Android, C++), unlocking new possibilities to help with localizing in ambiguous environment. - OS update rollout Automation (Android, OTA, Python): worked on A/B booting, Android update on next boot, auto reboot after OS update etc, significantly reducing the manual effort and time. ### Software Engineer @ Google Jan 2015 – Jan 2021 | Mountain View, California, United States I worked on Google Maps Data Quality. Here are some highlights: - Full stack development on scalable and efficient internal map editor used by thousands of operators: Java Swing OpenGL frontend and Java gRPC microservices as backends. Critical for map update and moderation. - Street view enhancement on the internal map editor (Java, OpenGL): integrated new image sources, implemented and improved the renderers, increasing operator productivity with faster loading and display. - Road geometry for hyper-detail maps (Java, C++): designed and implemented data schema, generation algorithms/workflows, editing tools, distributed batch data processing pipelines (Flume/Map Reduce), and map tile rendering. One of the key features of the new Japan Maps. - End-to-end backend development from scratch on a Java gRPC microservice: designed and developed the APIs and config specs, enabling sophisticated QC sampling for our map edits. Estimated to save millions of dollars on operations. - Multiple dependency migrations of high complexity and scope: coordinated with teams, refined requirements, strategized migration plan, and smoothly landed with zero downtime. ### Software Development Engineer @ Amazon Jan 2014 – Jan 2015 | Seattle - Amazon Mobile Shopping App for iOS (Objective-C) - Xcode Build System (Ruby on Rails), which builds, signs, packages, and publishes most of Amazon iOS apps - App Review Monitor (Python), which collects, translates, and store our app rating and review on AppStore, generates daily email digest, and produces charts that help product manager gauge user feedback - Helped launch Prime Now app for iPhone, Amazon's one-hour delivery service ### Software Engineer @ Personal Projects Jan 2014 – Jan 2014 I worked on many personal projects as a hobby: - Livestream Mobile App [Flutter, Firebase (Firestore, Cloud Function), Algolia, Vimeo]: user can create a livestream or view others' livestream easily on a phone. - VR RC car [Python, Linux, Raspberry Pi, servos and motors]: similar to the idea of "Mario Kart Live: Home Circuit" (before it came out), I was trying to build the realistic VR experience for RC cars, where the user can feel like driving inside the actual RC car. - A website for a startup project [Next.js, React, Azure (blob store)]: a website where customers can upload photos for offline processing. - Auto Framing Camera [Android, mediapipe (person detection)]: a moblie app that controls the gimbal holding the phone to aim and follow people, and captures photos/videos at the "right" moments. - "Snap Run" Mobile Game [Flutter, flame (game engine), Firebase (Realtime Database)]: an online multiplayer game where users race each other as runners by repeatedly tapping on the screen. The faster one taps the faster the runner moves. - Minesweeper game [Flutter]: I programmed the classic minesweeper game over a weekend as a way to learn Flutter. Website: http://www.matrinica.com - "Planious" event planning app [React Native, Firebase (Realtime Database)]: an app to make event planning (e.g. gatherings) easier. An event organizer can create an event and specify location, food options, etc, and invite others. Invitees can RSVP and choose the options. The app keeps track of all the responses and helps the organizer order the right amount of food and prepare the seating arrangement etc. - Smart Phone Case with Gesture Control [Android, C, Arduino (Teensy), 3D printing]: a phone case with a touch sensor, where the user can glide their fingertip to control the phone. e.g. the user can simply glide down on the phone case to continuously scroll down a webpage instead of repeatedly dragging on the screen. Similar to the ZenTouch feature on ASUS Zenfone 9. ### Student Assistant for EE Computer Labs @ UC Davis Jan 2013 – Jan 2014 - Maintained workstations using UNIX commands and scripts - Solved technical difficulties for the users - Worked on tasks such as updating web apps and improving scripts/tools ### Mobile Application Developer @ UC Davis Jan 2013 – Jan 2013 Worked on the Synthetic Biology Game Project for Prof. Tagkopoulos. - Learned and used C# with XNA framework for development - Practiced object-oriented design in the GUI system - Communicated ideas and specifications within the team ### Software Engineer Intern @ Tenkiv, LLC Jan 2013 – Jan 2013 | Sacramento, CA - Implemented and tested a firmware in ARM C/C++ - Programmed it to monitor and control a solar power system - Added a telnet interface to enable external communication ### Tutor @ UC Davis Jan 2012 – Jan 2012 Helped students with their ECS 30 (Programming in C) homework. ### IT Intern @ Bizdao Consulting Jan 2011 – Jan 2011 - Solved common computer problems for the office - Evaluated and maintained computer performance - Set up and configured Microsoft SharePoint for collaborative workspace ## Education ### Bachelor's degree in Computer Science University of California, Davis Jan 2010 – Jan 2014 ## Contact & Social - LinkedIn: https://linkedin.com/in/martin-cai --- Source: https://flows.cv/martincai JSON Resume: https://flows.cv/martincai/resume.json Last updated: 2026-03-22