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.
Security is a paramount focus for Google's Tensor SoC and Pixel, especially with advancements like Gemini and Gen AI. Our team develops innovative systems security solutions for Pixel products, focusing specifically on the Tensor SoC to protect users and their data. Join us to manage complex security challenges at the hardware-software interface, contributing to the security foundation of Google's flagship mobile devices, and making a tangible impact by developing novel security features for millions of users.
You will develop the low-level system code that powers the mobile and Generative AI applications for millions of users. In this role, you will bridge the gap between hardware architecture and system software to maximize platform stability, performance, and power efficiency.
Google's mission is to organize the world's information and make it universally accessible and useful. Our team combines the best of Google AI, Software, and Hardware to create radically helpful experiences. We research, design, and develop new technologies and hardware to make computing faster, seamless, and more powerful. We aim to make people's lives better through technology.
The US base salary range for this full-time position is $147,000-$211,000 + bonus + equity + benefits. Our salary ranges are determined by role, level, and location. Within the range, individual pay is determined by work location and additional factors, including job-related skills, experience, and relevant education or training. Your recruiter can share more about the specific salary range for your preferred location during the hiring process.
Please note that the compensation details listed in US role postings reflect the base salary only, and do not include bonus, equity, or benefits. Learn more about
benefits at Google.
Responsibilities
- Design, develop, test, and maintain low-level software utilizing C, C++, or Rust for the Tensor SoC and Pixel ecosystem.
- Develop prototypes and proof-of-concepts, iterating to evaluate the viability and feasibility of solutions proposed by the architecture team across simulation, emulation, and physical silicon goals.
- Analyze system and first-party software to influence hardware architecture decisions and maximize silicon performance, power, and area goals.
- Drive performance modeling, simulation, and analysis to predict system behavior and guide architectural trade-offs, focusing on metrics such as throughput, latency, and power consumption.
- Analyze, optimize, and debug complex low-level system behaviors, operating system interactions, memory management, and hardware-software interfaces.
Minimum qualifications:
- Bachelor’s degree or equivalent practical experience.
- 2 years of experience with software development in one or more programming languages (e.g. C, C++, or Rust), or 1 year of experience with an advanced degree.
- 2 years of experience working with embedded operating systems.
- Experience with performance modeling, performance analysis, or simulation tools.
Preferred qualifications:
- Master's degree or PhD in Computer Science or related technical fields.
- Experience with embedded systems, OS internals (e.g., hypervisors, drivers, firmware), and Android system architecture (including Linux kernel and system services).
- Experience analyzing system performance, power consumption, and memory management, including proficiency in Python for developing automated test frameworks and data analysis.
- Understanding of security principles in common use cases (e.g., device authentication, Digital Rights Management, cryptographic protocols, ML security) and experience with vulnerability analysis or security testing methodologies (e.g., fuzzing).
Note: By applying to this position you will have an opportunity to share your preferred working location from the following:
Mountain View, CA, USA; San Diego, CA, USA.