Senior Embedded Software Engineer, Android OS
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.
With your technical expertise you will manage project priorities, deadlines, and deliverables. You will design, develop, test, deploy, maintain, and enhance software solutions.
In this role, you will have experience in low-level computer systems, computer architecture, embedded systems, and kernel development. Key development areas will include the Linux (Android) kernel, device drivers, embedded firmware, Android userspace daemons, performance analysis, and Linux power management. You will collaborate across multidisciplinary domains through every stage of development—from schematic reviews to final user experience. You will also have a history of open-source Linux contributions.
For decades, the computing revolution has reshaped our world driven bybreakthroughs in compute, connectivity, mobile, and now, AI. Google's XR team is at the forefront of the next major leap – the convergence of AI and XR. This is more than just new devices – it's about reimagining how we interact with the world around us. We're building a future where
lightweight XR devices like smart glasses and headsets pair with helpful AI to augment human intelligence, offering personalized, conversational, and contextually aware experiences.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.
Responsibilities
- Develop Linux kernel drivers to enable new universal serial bus (USB)-connected XR devices and lead hardware bring-up for novel custom silicon.
- Research scalable USB software architectures, influence SoC architecture, and optimize USB use cases for performance and system health metrics.
- Abstract hardware interfaces for Android userspace, defining and delivering required hardware abstraction layer (HAL) and Android framework layers.
- Collaborate across product areas (PAs) to build impactful, user-facing features for split-compute XR systems (Compute Puck and HMD).
- Identify and fix systemic USB issues while leveraging agentic tools to analyze system behavior and optimize timing and performance.
Minimum qualifications:
- Bachelor's degree or equivalent practical experience.
- 5 years of experience in Linux Kernel development using the programming languages C/C++.
- Experience working on the Linux kernel.
- Experience in one or more of the following: test automation, refactoring code, test-driven development, build infrastructure, optimizing software, debugging, building tools and testing frameworks.
Preferred qualifications:
- Experience with Linux or BSD kernels.
- Demonstrated knowledge of embedded systems development, RTOS concepts, device drivers and hardware/software integration.
- Extensive knowledge of Unix/Linux environments, embedded Linux.
- Extensive knowledge of Android or WebKit.