Senior Embedded Software Engineer, Microcontroller OS

Google 

📍 San Francisco, United States 🇺🇸

full-time
senior
174000
Posted —

Key Skills

C++ZephyrFreeRTOSMCUDSP

Industry

Consumer ElectronicsRobotics

Job Description

Minimum qualifications:
  • Bachelor’s degree or equivalent practical experience.
  • 5 years of experience with software development in the C++ programming language.
  • 3 years of experience testing, maintaining, or launching software products, and 1 year of experience with software design and architecture.
  • 3 years of experience with embedded systems and firmware programming.
  • Experience with realtime embedded programming for microcontrollers.

Preferred qualifications:
  • Master's degree or PhD in Computer Science, or a related technical field.
  • Experience with Pigweed or Zephyr.
  • Experience with real time operating systems (FreeRTOS, Zephyr, etc.).
  • Experience with modern build systems (e.g., Bazel, CMake).
  • Experience with debugging designs, working with EEs, and deciphering datasheets/reference manuals.
  • Experience taking consumer electronics to production.
About the job:

Google's software engineers develop the next-generation technologies that change how billions of users connect, explore, and interact with information and one another. Our products need to handle information at massive scale, and extend well beyond web search. We're looking for engineers who bring fresh ideas from all areas, including information retrieval, distributed computing, large-scale system design, networking and data storage, security, artificial intelligence, natural language processing, UI design and mobile; the list goes on and is growing every day. As a software engineer, you will work on a specific project critical to Google’s needs with opportunities to switch teams and projects as you and our fast-paced business grow and evolve. We need our engineers to be versatile, display leadership qualities and be enthusiastic to take on new problems across the full-stack as we continue to push technology forward.

In addition to a powerful SoC, many Android devices (phones, watches) include one or more low-power coprocessors which typically contain an MCU-class processor and other low-power cores such as DSPs. These coprocessors serve to provide always-on functionality and offload tasks from the SoC so it can be put into a lower-power state.

Typically, the Microcontroller Unit (MCU) firmware is entirely considered a BSP concern and is not part of the Android platform offering.

Our team's goal is to provide the framework and many of the components needed to build high-quality MCU firmware for a glasses product running Android microXR.

The Google Augmented Reality team is a group of experts tasked with building the foundations for great immersive computing and building helpful, delightful user experiences. We're focused on making immersive computing accessible to billions of people through mobile devices, and our scope continues to grow and evolve.

Individual pay is determined by factors including job-related skills, experience, and relevant education or training.

US: $174000 - $253000 (USD) + 15% bonus target + equity + benefits

Learn more about benefits at Google.
Responsibilities:
  • Design and implement MCU features needed for low power AR glasses.
  • Transform MCU code so that it's easy to migrate MCUs, RTOSes, and peripherals.
  • Optimize system efficiency (power, themals, memory).
  • Bring up new systems and building next generation smart glasses.
  • Work closely with the BSP teams, Electrical Engineering (EE) teams, and Phone teams.