Google

Software Engineer, On-Device Machine Learning

Sunnyvale, CA

About the job

  • Collaborate with peers and stakeholders through design and code reviews to ensure best practices amongst available technologies (e.g., style guidelines, checking code in, accuracy, testability, and efficiency).
  • Design and implement solutions in one or more specialized ML areas, leverage ML infrastructure, and demonstrate expertise in a chosen field.
  • Develop LiteRT, Google's on-device AI framework for first- and third-party, enabling state-of-the-art (SOTA) hardware acceleration and use cases on edge platforms.
  • Enable on-device deployment of key models, such as Gemini Nano and Gemma, across various accelerators (GPU/Pixel TPU/NPUs/CPU) on Android, Chrome, iOS, desktop, and more.
  • Improve performance of on-device model inference via optimizations in the model symbol, on-device runtime and kernel implementation.
  • Minimum qualifications:

  • Bachelor's degree or equivalent practical experience.
  • 5 years of experience with software development in one or more programming languages.
  • 3 years of experience with ML infrastructure (e.g., model deployment, model evaluation, optimization, data processing, debugging).
  • 2 years of experience developing compilers.
  • Experience in mobile development.
  • Preferred qualifications:

  • Experience leading and delivering successful ML projects focused on on-device deployment (Android, iOS, web browsers, or embedded devices).
  • Experience in ML frameworks (e.g., PyTorch, JAX, TensorFlow).
  • Experience with on-device ML software development kits (SDKs)/tooling (e.g., TensorFlow Lite, ExecuTorch, Core ML, SNPE/QNN).
  • Understanding of Generative AI model architectures and their optimization for on-device execution.
  • Excellent communication and collaboration skills.
  • Passion for innovation and a strong desire to push the boundaries of what's possible with on-device ML.