Senior Software Engineer, Embedded Systems and Firmware

Google Google · Big Tech · Mountain View, CA +1

Senior Software Engineer role focused on embedded systems and firmware for wearable devices at Google. Responsibilities include developing and optimizing software platforms for co-processors, managing communication between processors, and working with sensor frameworks. The role involves evaluating hardware capabilities, integrating development frameworks, and ensuring a developer-friendly environment. Requires a Bachelor's degree, 5 years of software development experience (C++), 3 years of testing/launching software, and 3 years of embedded OS experience.

What you'd actually do

  1. Develop and optimize the software platform for wearable co-processors, including board bring-up, AP/co-processor communication, and on-chip peripherals.
  2. Work with partner teams to improve sensors and CHRE frameworks.
  3. Build and maintain a developer-friendly environment and abstraction layers to support other teams working on the co-processor.
  4. Evaluate and prove out power, performance, and platform capabilities on new and unreleased hardware to inform next-generation wearable experiences.
  5. Integrate and enhance frameworks for algorithm development, data collection, telemetry, and testing (e.g., unit, integration, hardware-in-the-loop).

Skills

Required

  • C++
  • software development
  • testing
  • software maintenance
  • software launching
  • software design
  • software architecture
  • embedded operating systems

Nice to have

  • RTOS
  • Android build/development environments
  • multi-processor architectures
  • inter-processor communication
  • low-level debugging
  • protobuf
  • RPCs
  • on-chip peripherals (I2C, SPI, UART)
  • Unix/Linux environments
  • kernel development

What the JD emphasized

  • 5 years of experience with software development in one or more programming languages (C++)
  • 3 years of experience testing, maintaining, or launching software products
  • 3 years of experience with software design and architecture
  • 3 years of experience working with embedded operating systems