Senior Software Engineer, Embedded Systems and Firmware
About the role
MINIMUM QUALIFICATIONS:
- Bachelor’s degree or equivalent practical experience.
- 5 years of experience with software development in one or more programming
languages (C++).
- 3 years of experience testing, maintaining, or launching software products,
and 1 year of experience with software design and architecture.
- 3 years of experience working with embedded operating systems.
PREFERRED QUALIFICATIONS:
- Experience with Real-Time Operating Systems (RTOS) and Android
build/development environments.
- Experience with multi-processor architectures and inter-processor
communication.
- Experience with low-level debugging, Protocol Buffers (protobuf) and Remote
Procedure Calls (RPCs).
- Experience with on-chip peripherals (e.g., I2C, SPI, UART).
- Knowledge of Unix/Linux environments and kernel development.
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 this role, you will be responsible for all layers of software, from the
platform up through the sensor stack and Wear OS, for first-party wearable
devices. You will focus on the interaction between co-processors and the main
Application Processor (AP) complex, as well as the co-processor itself, and
algorithms and related sensors. You will also work to influence future hardware
architectures to push the boundary of highly efficient ambient computing.
The Platforms and Devices team encompasses Google's various computing software
platforms across environments (desktop, mobile, applications), as well as our
first party devices and services that combine the best of Google AI, software,
and hardware. Teams across this area research, design, and develop new
technologies to make our user's interaction with computing faster and more
seamless, building innovative experiences for our users around the world.
Individual pay is determined by factors including job-related skills,
experience, and relevant education or training.
US: $174000 - $252000 (USD) + 15% bonus target + equity + benefits
Learn more about benefits at Google
[https://www.google.com/about/careers/applications/benefits/].
RESPONSIBILITIES:
- Develop and optimize the software platform for wearable co-processors,
including board bring-up, AP/co-processor communication, and on-chip
peripherals.
- Work with partner teams to improve sensors and Context Hub Runtime
Environment (CHRE) frameworks.
- Build and maintain a developer-friendly environment and abstraction layers to
support other teams working on the co-processor.
- Evaluate and prove out power, performance, and platform capabilities on new
and unreleased hardware to inform next-generation wearable experiences.
- Integrate and enhance frameworks for algorithm development, data collection,
telemetry, and testing (e.g., unit, integration, hardware-in-the-loop).
Responsibilities
- Develop and optimize the software platform for wearable co-processors, including board bring-up, AP/co-processor communication, and on-chip peripherals.
- Work with partner teams to improve sensors and Context Hub Runtime Environment (CHRE) frameworks.
- Build and maintain a developer-friendly environment and abstraction layers to support other teams working on the co-processor.
- Evaluate and prove out power, performance, and platform capabilities on new and unreleased hardware to inform next-generation wearable experiences.
- Integrate and enhance frameworks for algorithm development, data collection, telemetry, and testing (e.g., unit, integration, hardware-in-the-loop).
Qualifications
- Bachelor’s degree or equivalent practical experience.
- 5 years of experience with software development in one or more programming languages (C++).
- 3 years of experience testing, maintaining, or launching software products.
- 1 year of experience with software design and architecture.
- 3 years of experience working with embedded operating systems.
Benefits
- 15% bonus target
- equity
- benefits
Skills mentioned
About Google
A problem isn't truly solved until it's solved for all. Googlers build products that help create opportunities for everyone, whether down the street or across the globe. Bring your insight, imagination and a healthy disregard for the impossible. Bring everything that makes you unique. Together, we can build for everyone. Check out our career opportunities at goo.gle/3DLEokh